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

Commit a5a2391e authored by Dave Airlie's avatar Dave Airlie
Browse files

Merge branch 'exynos-drm-next' of...

Merge branch 'exynos-drm-next' of git://git.kernel.org/pub/scm/linux/kernel/git/daeinki/drm-exynos into drm-next

Highlights
----------

Re-factoring works over the exynos drm framework.
  - drm_crtc, drm_encoder/drm_connector are implemented by sub drivers
    directly.
  - Removing pm interfaces from each sub driver, and implementing them
    at top level of exynos drm.
Add DisplayPort Transmitter driver.
  - Just moving existing driver from drivers/vides/exynos into
    drivers/gpu/drm/exynos.
Add new LVDS bridge driver, PTN3460.
  - Placed in drivers/gpu/drm/bridge, and this device is used to transfer
    image signal from DP(DisplayPort) to LVDS Panel.
    So this driver will be used with DP driver moved into exynos drm.
Add parallel panel support
  - With the re-factoring patch series, existing parallel panel support was
    broken by moving exynos_drm_display ops into each real connector driver,
    DP. So this patch series adds a new parallel panel module,
    exynos_drm_dpi, for supporting parallel panel, and also adds relevant
    bindings.
Some fixups and cleanups.

* 'exynos-drm-next' of git://git.kernel.org/pub/scm/linux/kernel/git/daeinki/drm-exynos: (45 commits)
  drm/exynos: fimd: remove unused variable
  ARM: dts: exynos4210-universal: add exynos/fimd node
  drm/exynos: restore parallel output interface support
  exynos/fimd: add parallel output related bindings
  drm/exynos: correct timing porch conversion
  drm/exynos: init kms poll after creation of connectors
  drm/exynos: delay fbdev initialization until an output is connected
  drm/exynos: fix unnecessary resource cleanup
  drm/exynos: hdmi: use i2c_adapter instead of i2c_client
  drm/exynos: hdmi: consider APB PHY
  drm/exynos: Remove the exynos_drm_connector shim
  drm/exynos: Implement lvds bridge discovery to DP driver
  drm/bridge: Add PTN3460 bridge driver
  drm/exynos: Implement drm_connector directly in vidi driver
  drm/exynos: Implement drm_connector directly in dp driver
  drm/exynos: Implement drm_connector in hdmi directly
  drm/exynos: Add create_connector callback
  drm/exynos: Consolidate suspend/resume in drm_drv
  drm/exynos: Clean up FIMD power on/off routines
  drm/exynos: Implement dpms display callback in DP
  ...
parents c46145ae 1d531062
Loading
Loading
Loading
Loading
+27 −0
Original line number Diff line number Diff line
ptn3460 bridge bindings

Required properties:
	- compatible: "nxp,ptn3460"
	- reg: i2c address of the bridge
	- powerdown-gpio: OF device-tree gpio specification
	- reset-gpio: OF device-tree gpio specification
	- edid-emulation: The EDID emulation entry to use
		+-------+------------+------------------+
		| Value | Resolution | Description      |
		|   0   |  1024x768  | NXP Generic      |
		|   1   |  1920x1080 | NXP Generic      |
		|   2   |  1920x1080 | NXP Generic      |
		|   3   |  1600x900  | Samsung LTM200KT |
		|   4   |  1920x1080 | Samsung LTM230HT |
		|   5   |  1366x768  | NXP Generic      |
		|   6   |  1600x900  | ChiMei M215HGE   |
		+-------+------------+------------------+

Example:
	lvds-bridge@20 {
		compatible = "nxp,ptn3460";
		reg = <0x20>;
		powerdown-gpio = <&gpy2 5 1 0 0>;
		reset-gpio = <&gpx1 5 1 0 0>;
		edid-emulation = <5>;
	};
+17 −0
Original line number Diff line number Diff line
@@ -49,6 +49,8 @@ Required properties for dp-controller:
	-samsung,lane-count:
		number of lanes supported by the panel.
			LANE_COUNT1 = 1, LANE_COUNT2 = 2, LANE_COUNT4 = 4
	- display-timings: timings for the connected panel as described by
		Documentation/devicetree/bindings/video/display-timing.txt

Optional properties for dp-controller:
	-interlaced:
@@ -84,4 +86,19 @@ Board Specific portion:
		samsung,color-depth = <1>;
		samsung,link-rate = <0x0a>;
		samsung,lane-count = <4>;

		display-timings {
			native-mode = <&lcd_timing>;
			lcd_timing: 1366x768 {
				clock-frequency = <70589280>;
				hactive = <1366>;
				vactive = <768>;
				hfront-porch = <40>;
				hback-porch = <40>;
				hsync-len = <32>;
				vback-porch = <10>;
				vfront-porch = <12>;
				vsync-len = <6>;
			};
		};
	};
+5 −0
Original line number Diff line number Diff line
@@ -25,6 +25,9 @@ Required properties:
		sclk_pixel.
- clock-names: aliases as per driver requirements for above clock IDs:
	"hdmi", "sclk_hdmi", "sclk_pixel", "sclk_hdmiphy" and "mout_hdmi".
- ddc: phandle to the hdmi ddc node
- phy: phandle to the hdmi phy node

Example:

	hdmi {
@@ -32,4 +35,6 @@ Example:
		reg = <0x14530000 0x100000>;
		interrupts = <0 95 0>;
		hpd-gpio = <&gpx3 7 1>;
		ddc = <&hdmi_ddc_node>;
		phy = <&hdmi_phy_node>;
	};
+17 −0
Original line number Diff line number Diff line
@@ -39,6 +39,23 @@ Required properties:

Optional Properties:
- samsung,power-domain: a phandle to FIMD power domain node.
- samsung,invert-vden: video enable signal is inverted
- samsung,invert-vclk: video clock signal is inverted
- display-timings: timing settings for FIMD, as described in document [1].
		Can be used in case timings cannot be provided otherwise
		or to override timings provided by the panel.

The device node can contain 'port' child nodes according to the bindings defined
in [2]. The following are properties specific to those nodes:
- reg: (required) port index, can be:
		0 - for CAMIF0 input,
		1 - for CAMIF1 input,
		2 - for CAMIF2 input,
		3 - for parallel output,
		4 - for write-back interface

[1]: Documentation/devicetree/bindings/video/display-timing.txt
[2]: Documentation/devicetree/bindings/media/video-interfaces.txt

Example:

+0 −6
Original line number Diff line number Diff line
@@ -3393,12 +3393,6 @@ S: Maintained
F:	drivers/extcon/
F:	Documentation/extcon/

EXYNOS DP DRIVER
M:	Jingoo Han <jg1.han@samsung.com>
L:	linux-fbdev@vger.kernel.org
S:	Maintained
F:	drivers/video/exynos/exynos_dp*

EXYNOS MIPI DISPLAY DRIVERS
M:	Inki Dae <inki.dae@samsung.com>
M:	Donghwa Lee <dh09.lee@samsung.com>
Loading