Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 9c233760 authored by Dave Airlie's avatar Dave Airlie
Browse files

Merge tag 'drm-misc-next-2017-03-12' of git://anongit.freedesktop.org/git/drm-misc into drm-next

More drm-misc stuff for 4.12:

- drm_platform removal from Laurent
- more dw-hdmi bridge driver updates (Laurent, Kieran, Neil)
- more header cleanup and documentation
- more drm_debugs_remove_files removal (Noralf)
- minor qxl updates (Gerd)
- edp crc support in helper + analogix_dp (Tomeu) for more igt
  testing!
- old/new iterator roll-out (Maarten)
- new bridge drivers: lvds (Laurent), megachips-something (Peter
  Senna)

* tag 'drm-misc-next-2017-03-12' of git://anongit.freedesktop.org/git/drm-misc: (51 commits)
  drm: bridge: dw-hdmi: Move the driver to a separate directory.
  drm: bridge: dw-hdmi: Switch to regmap for register access
  drm: bridge: dw-hdmi: Remove device type from platform data
  drm: bridge: dw-hdmi: Add support for custom PHY configuration
  drm: bridge: dw-hdmi: Create PHY operations
  drm: bridge: dw-hdmi: Fix the PHY power up sequence
  drm: bridge: dw-hdmi: Fix the PHY power down sequence
  drm: bridge: dw-hdmi: Enable CSC even for DVI
  drm: bridge: dw-hdmi: Move CSC configuration out of PHY code
  drm: bridge: dw-hdmi: Remove unused functions
  drm: Extract drm_file.h
  drm: Remove DRM_MINOR_CNT
  drm: rename drm_fops.c to drm_file.c
  drm/doc: document fallback behaviour for atomic events
  drm: Remove drmP.h include from drm_kms_helper_common.c
  drm: Extract drm_pci.h
  drm: Move drm_lock_data out of drmP.h
  drm: Extract drm_prime.h
  drm/doc: Add todo about connector_list_iter
  drm/qxl: Remove qxl_debugfs_remove_files()
  ...
parents 6796b129 a4521654
Loading
Loading
Loading
Loading
+64 −0
Original line number Diff line number Diff line
Parallel to LVDS Encoder
------------------------

This binding supports the parallel to LVDS encoders that don't require any
configuration.

LVDS is a physical layer specification defined in ANSI/TIA/EIA-644-A. Multiple
incompatible data link layers have been used over time to transmit image data
to LVDS panels. This binding targets devices compatible with the following
specifications only.

[JEIDA] "Digital Interface Standards for Monitor", JEIDA-59-1999, February
1999 (Version 1.0), Japan Electronic Industry Development Association (JEIDA)
[LDI] "Open LVDS Display Interface", May 1999 (Version 0.95), National
Semiconductor
[VESA] "VESA Notebook Panel Standard", October 2007 (Version 1.0), Video
Electronics Standards Association (VESA)

Those devices have been marketed under the FPD-Link and FlatLink brand names
among others.


Required properties:

- compatible: Must be "lvds-encoder"

Required nodes:

This device has two video ports. Their connections are modeled using the OF
graph bindings specified in Documentation/devicetree/bindings/graph.txt.

- Video port 0 for parallel input
- Video port 1 for LVDS output


Example
-------

lvds-encoder {
	compatible = "lvds-encoder";
	#address-cells = <1>;
	#size-cells = <0>;

	ports {
		#address-cells = <1>;
		#size-cells = <0>;

		port@0 {
			reg = <0>;

			lvds_enc_in: endpoint {
				remote-endpoint = <&display_out_rgb>;
			};
		};

		port@1 {
			reg = <1>;

			lvds_enc_out: endpoint {
				remote-endpoint = <&lvds_panel_in>;
			};
		};
	};
};
+94 −0
Original line number Diff line number Diff line
Drivers for the second video output of the GE B850v3:
   STDP4028-ge-b850v3-fw bridges (LVDS-DP)
   STDP2690-ge-b850v3-fw bridges (DP-DP++)

The video processing pipeline on the second output on the GE B850v3:

   Host -> LVDS|--(STDP4028)--|DP -> DP|--(STDP2690)--|DP++ -> Video output

Each bridge has a dedicated flash containing firmware for supporting the custom
design. The result is that, in this design, neither the STDP4028 nor the
STDP2690 behave as the stock bridges would. The compatible strings include the
suffix "-ge-b850v3-fw" to make it clear that the driver is for the bridges with
the firmware specific for the GE B850v3.

The hardware do not provide control over the video processing pipeline, as the
two bridges behaves as a single one. The only interfaces exposed by the
hardware are EDID, HPD, and interrupts.

stdp4028-ge-b850v3-fw required properties:
  - compatible : "megachips,stdp4028-ge-b850v3-fw"
  - reg : I2C bus address
  - interrupt-parent : phandle of the interrupt controller that services
    interrupts to the device
  - interrupts : one interrupt should be described here, as in
    <0 IRQ_TYPE_LEVEL_HIGH>
  - ports : One input port(reg = <0>) and one output port(reg = <1>)

stdp2690-ge-b850v3-fw required properties:
    compatible : "megachips,stdp2690-ge-b850v3-fw"
  - reg : I2C bus address
  - ports : One input port(reg = <0>) and one output port(reg = <1>)

Example:

&mux2_i2c2 {
	status = "okay";
	clock-frequency = <100000>;

	stdp4028@73 {
		compatible = "megachips,stdp4028-ge-b850v3-fw";
		#address-cells = <1>;
		#size-cells = <0>;

		reg = <0x73>;

		interrupt-parent = <&gpio2>;
		interrupts = <0 IRQ_TYPE_LEVEL_HIGH>;

		ports {
			#address-cells = <1>;
			#size-cells = <0>;

			port@0 {
				reg = <0>;
				stdp4028_in: endpoint {
					remote-endpoint = <&lvds0_out>;
				};
			};
			port@1 {
				reg = <1>;
				stdp4028_out: endpoint {
					remote-endpoint = <&stdp2690_in>;
				};
			};
		};
	};

	stdp2690@72 {
		compatible = "megachips,stdp2690-ge-b850v3-fw";
		#address-cells = <1>;
		#size-cells = <0>;

		reg = <0x72>;

		ports {
			#address-cells = <1>;
			#size-cells = <0>;

			port@0 {
				reg = <0>;
				stdp2690_in: endpoint {
					remote-endpoint = <&stdp4028_out>;
				};
			};

			port@1 {
				reg = <1>;
				stdp2690_out: endpoint {
					/* Connector for external display */
				};
			};
		};
	};
};
+1 −0
Original line number Diff line number Diff line
@@ -178,6 +178,7 @@ maxim Maxim Integrated Products
mcube	mCube
meas	Measurement Specialties
mediatek	MediaTek Inc.
megachips	MegaChips
melexis	Melexis N.V.
melfas	MELFAS Inc.
memsic	MEMSIC Inc.
+2 −5
Original line number Diff line number Diff line
@@ -240,9 +240,6 @@ drivers.
.. kernel-doc:: drivers/gpu/drm/drm_pci.c
   :export:

.. kernel-doc:: drivers/gpu/drm/drm_platform.c
   :export:

Open/Close, File Operations and IOCTLs
======================================

@@ -298,10 +295,10 @@ over.
File Operations
---------------

.. kernel-doc:: drivers/gpu/drm/drm_fops.c
.. kernel-doc:: drivers/gpu/drm/drm_file.c
   :doc: file operations

.. kernel-doc:: drivers/gpu/drm/drm_fops.c
.. kernel-doc:: drivers/gpu/drm/drm_file.c
   :export:

IOCTLs
+3 −0
Original line number Diff line number Diff line
@@ -449,6 +449,9 @@ PRIME Helper Functions
PRIME Function References
-------------------------

.. kernel-doc:: include/drm/drm_prime.h
   :internal:

.. kernel-doc:: drivers/gpu/drm/drm_prime.c
   :export:

Loading