Commit 408eb4f5 authored by Philipp Zabel's avatar Philipp Zabel Committed by Russell King

staging: imx-drm: Document updated imx-drm device tree bindings

This patch updates the device tree binding documentation for i.MX IPU/display
nodes using the OF graph bindings documented in
Documentation/devicetree/bindings/media/video-interfaces.txt.
Signed-off-by: default avatarPhilipp Zabel <p.zabel@pengutronix.de>
Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
parent b6babdd9
Freescale i.MX DRM master device
================================
The freescale i.MX DRM master device is a virtual device needed to list all
IPU or other display interface nodes that comprise the graphics subsystem.
Required properties:
- compatible: Should be "fsl,imx-display-subsystem"
- ports: Should contain a list of phandles pointing to display interface ports
of IPU devices
example:
display-subsystem {
compatible = "fsl,display-subsystem";
ports = <&ipu_di0>;
};
Freescale i.MX IPUv3 Freescale i.MX IPUv3
==================== ====================
...@@ -7,18 +26,31 @@ Required properties: ...@@ -7,18 +26,31 @@ Required properties:
datasheet datasheet
- interrupts: Should contain sync interrupt and error interrupt, - interrupts: Should contain sync interrupt and error interrupt,
in this order. in this order.
- #crtc-cells: 1, See below
- resets: phandle pointing to the system reset controller and - resets: phandle pointing to the system reset controller and
reset line index, see reset/fsl,imx-src.txt for details reset line index, see reset/fsl,imx-src.txt for details
Optional properties:
- port@[0-3]: Port nodes with endpoint definitions as defined in
Documentation/devicetree/bindings/media/video-interfaces.txt.
Ports 0 and 1 should correspond to CSI0 and CSI1,
ports 2 and 3 should correspond to DI0 and DI1, respectively.
example: example:
ipu: ipu@18000000 { ipu: ipu@18000000 {
#crtc-cells = <1>; #address-cells = <1>;
#size-cells = <0>;
compatible = "fsl,imx53-ipu"; compatible = "fsl,imx53-ipu";
reg = <0x18000000 0x080000000>; reg = <0x18000000 0x080000000>;
interrupts = <11 10>; interrupts = <11 10>;
resets = <&src 2>; resets = <&src 2>;
ipu_di0: port@2 {
reg = <2>;
ipu_di0_disp0: endpoint {
remote-endpoint = <&display_in>;
};
};
}; };
Parallel display support Parallel display support
...@@ -26,19 +58,25 @@ Parallel display support ...@@ -26,19 +58,25 @@ Parallel display support
Required properties: Required properties:
- compatible: Should be "fsl,imx-parallel-display" - compatible: Should be "fsl,imx-parallel-display"
- crtc: the crtc this display is connected to, see below
Optional properties: Optional properties:
- interface_pix_fmt: How this display is connected to the - interface_pix_fmt: How this display is connected to the
crtc. Currently supported types: "rgb24", "rgb565", "bgr666" display interface. Currently supported types: "rgb24", "rgb565", "bgr666"
- edid: verbatim EDID data block describing attached display. - edid: verbatim EDID data block describing attached display.
- ddc: phandle describing the i2c bus handling the display data - ddc: phandle describing the i2c bus handling the display data
channel channel
- port: A port node with endpoint definitions as defined in
Documentation/devicetree/bindings/media/video-interfaces.txt.
example: example:
display@di0 { display@di0 {
compatible = "fsl,imx-parallel-display"; compatible = "fsl,imx-parallel-display";
edid = [edid-data]; edid = [edid-data];
crtc = <&ipu 0>;
interface-pix-fmt = "rgb24"; interface-pix-fmt = "rgb24";
port {
display_in: endpoint {
remote-endpoint = <&ipu_di0_disp0>;
};
};
}; };
...@@ -50,12 +50,14 @@ have a look at Documentation/devicetree/bindings/video/display-timing.txt. ...@@ -50,12 +50,14 @@ have a look at Documentation/devicetree/bindings/video/display-timing.txt.
Required properties: Required properties:
- reg : should be <0> or <1> - reg : should be <0> or <1>
- crtcs : a list of phandles with index pointing to the IPU display interfaces
that can be used as video source for this channel.
- fsl,data-mapping : should be "spwg" or "jeida" - fsl,data-mapping : should be "spwg" or "jeida"
This describes how the color bits are laid out in the This describes how the color bits are laid out in the
serialized LVDS signal. serialized LVDS signal.
- fsl,data-width : should be <18> or <24> - fsl,data-width : should be <18> or <24>
- port: A port node with endpoint definitions as defined in
Documentation/devicetree/bindings/media/video-interfaces.txt.
On i.MX6, there should be four ports (port@[0-3]) that correspond
to the four LVDS multiplexer inputs.
example: example:
...@@ -77,23 +79,33 @@ ldb: ldb@53fa8008 { ...@@ -77,23 +79,33 @@ ldb: ldb@53fa8008 {
lvds-channel@0 { lvds-channel@0 {
reg = <0>; reg = <0>;
crtcs = <&ipu 0>;
fsl,data-mapping = "spwg"; fsl,data-mapping = "spwg";
fsl,data-width = <24>; fsl,data-width = <24>;
display-timings { display-timings {
/* ... */ /* ... */
}; };
port {
lvds0_in: endpoint {
remote-endpoint = <&ipu_di0_lvds0>;
};
};
}; };
lvds-channel@1 { lvds-channel@1 {
reg = <1>; reg = <1>;
crtcs = <&ipu 1>;
fsl,data-mapping = "spwg"; fsl,data-mapping = "spwg";
fsl,data-width = <24>; fsl,data-width = <24>;
display-timings { display-timings {
/* ... */ /* ... */
}; };
port {
lvds1_in: endpoint {
remote-endpoint = <&ipu_di1_lvds1>;
};
};
}; };
}; };
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment