~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/Documentation/devicetree/bindings/display/bridge/fsl,imx8qxp-ldb.yaml

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
  2 %YAML 1.2
  3 ---
  4 $id: http://devicetree.org/schemas/display/bridge/fsl,imx8qxp-ldb.yaml#
  5 $schema: http://devicetree.org/meta-schemas/core.yaml#
  6 
  7 title: Freescale i.MX8qm/qxp LVDS Display Bridge
  8 
  9 maintainers:
 10   - Liu Ying <victor.liu@nxp.com>
 11 
 12 description: |
 13   The Freescale i.MX8qm/qxp LVDS Display Bridge(LDB) has two channels.
 14 
 15   The i.MX8qm/qxp LDB is controlled by Control and Status Registers(CSR) module.
 16   The CSR module, as a system controller, contains the LDB's configuration
 17   registers.
 18 
 19   For i.MX8qxp LDB, each channel supports up to 24bpp parallel input color
 20   format and can map the input to VESA or JEIDA standards.  The two channels
 21   cannot be used simultaneously, that is to say, the user should pick one of
 22   them to use.  Two LDB channels from two LDB instances can work together in
 23   LDB split mode to support a dual link LVDS display.  The channel indexes
 24   have to be different.  Channel0 outputs odd pixels and channel1 outputs
 25   even pixels.
 26 
 27   For i.MX8qm LDB, each channel additionally supports up to 30bpp parallel
 28   input color format.  The two channels can be used simultaneously, either
 29   in dual mode or split mode.  In dual mode, the two channels output identical
 30   data.  In split mode, channel0 outputs odd pixels and channel1 outputs even
 31   pixels.
 32 
 33   A side note is that i.MX8qm/qxp LDB is officially called pixel mapper in
 34   the SoC reference manuals.  The pixel mapper uses logic of LDBs embedded in
 35   i.MX6qdl/sx SoCs, i.e., it is essentially based on them.  To keep the naming
 36   consistency, this binding calls it LDB.
 37 
 38 properties:
 39   compatible:
 40     enum:
 41       - fsl,imx8qm-ldb
 42       - fsl,imx8qxp-ldb
 43 
 44   "#address-cells":
 45     const: 1
 46 
 47   "#size-cells":
 48     const: 0
 49 
 50   clocks:
 51     items:
 52       - description: pixel clock
 53       - description: bypass clock
 54 
 55   clock-names:
 56     items:
 57       - const: pixel
 58       - const: bypass
 59 
 60   power-domains:
 61     maxItems: 1
 62 
 63   fsl,companion-ldb:
 64     $ref: /schemas/types.yaml#/definitions/phandle
 65     description: |
 66       A phandle which points to companion LDB which is used in LDB split mode.
 67 
 68 patternProperties:
 69   "^channel@[0-1]$":
 70     type: object
 71     description: Represents a channel of LDB.
 72 
 73     properties:
 74       "#address-cells":
 75         const: 1
 76 
 77       "#size-cells":
 78         const: 0
 79 
 80       reg:
 81         description: The channel index.
 82         enum: [ 0, 1 ]
 83 
 84       phys:
 85         description: A phandle to the phy module representing the LVDS PHY.
 86         maxItems: 1
 87 
 88       phy-names:
 89         const: lvds_phy
 90 
 91       port@0:
 92         $ref: /schemas/graph.yaml#/properties/port
 93         description: Input port of the channel.
 94 
 95       port@1:
 96         $ref: /schemas/graph.yaml#/properties/port
 97         description: Output port of the channel.
 98 
 99     required:
100       - "#address-cells"
101       - "#size-cells"
102       - reg
103       - phys
104       - phy-names
105 
106     additionalProperties: false
107 
108 required:
109   - compatible
110   - "#address-cells"
111   - "#size-cells"
112   - clocks
113   - clock-names
114   - power-domains
115   - channel@0
116   - channel@1
117 
118 allOf:
119   - if:
120       properties:
121         compatible:
122           contains:
123             const: fsl,imx8qm-ldb
124     then:
125       properties:
126         fsl,companion-ldb: false
127 
128 additionalProperties: false
129 
130 examples:
131   - |
132     #include <dt-bindings/firmware/imx/rsrc.h>
133     ldb {
134         #address-cells = <1>;
135         #size-cells = <0>;
136         compatible = "fsl,imx8qxp-ldb";
137         clocks = <&clk IMX_SC_R_LVDS_0 IMX_SC_PM_CLK_MISC2>,
138                  <&clk IMX_SC_R_LVDS_0 IMX_SC_PM_CLK_BYPASS>;
139         clock-names = "pixel", "bypass";
140         power-domains = <&pd IMX_SC_R_LVDS_0>;
141 
142         channel@0 {
143             #address-cells = <1>;
144             #size-cells = <0>;
145             reg = <0>;
146             phys = <&mipi_lvds_0_phy>;
147             phy-names = "lvds_phy";
148 
149             port@0 {
150                 reg = <0>;
151 
152                 mipi_lvds_0_ldb_ch0_mipi_lvds_0_pxl2dpi: endpoint {
153                     remote-endpoint = <&mipi_lvds_0_pxl2dpi_mipi_lvds_0_ldb_ch0>;
154                 };
155             };
156         };
157 
158         channel@1 {
159             #address-cells = <1>;
160             #size-cells = <0>;
161             reg = <1>;
162             phys = <&mipi_lvds_0_phy>;
163             phy-names = "lvds_phy";
164 
165             port@0 {
166                 reg = <0>;
167 
168                 mipi_lvds_0_ldb_ch1_mipi_lvds_0_pxl2dpi: endpoint {
169                     remote-endpoint = <&mipi_lvds_0_pxl2dpi_mipi_lvds_0_ldb_ch1>;
170                 };
171             };
172         };
173     };

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php