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

TOMOYO Linux Cross Reference
Linux/Documentation/devicetree/bindings/display/panel/panel-edp.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 ] ~

Diff markup

Differences between /Documentation/devicetree/bindings/display/panel/panel-edp.yaml (Version linux-6.12-rc7) and /Documentation/devicetree/bindings/display/panel/panel-edp.yaml (Version linux-6.4.16)


  1 # SPDX-License-Identifier: (GPL-2.0-only OR BS      1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
  2 %YAML 1.2                                           2 %YAML 1.2
  3 ---                                                 3 ---
  4 $id: http://devicetree.org/schemas/display/pan      4 $id: http://devicetree.org/schemas/display/panel/panel-edp.yaml#
  5 $schema: http://devicetree.org/meta-schemas/co      5 $schema: http://devicetree.org/meta-schemas/core.yaml#
  6                                                     6 
  7 title: Probeable (via DP AUX / EDID) eDP Panel      7 title: Probeable (via DP AUX / EDID) eDP Panels with simple poweron sequences
  8                                                     8 
  9 maintainers:                                        9 maintainers:
 10   - Douglas Anderson <dianders@chromium.org>        10   - Douglas Anderson <dianders@chromium.org>
 11                                                    11 
 12 description: |                                     12 description: |
 13   This binding file can be used to indicate th     13   This binding file can be used to indicate that an eDP panel is connected
 14   to a Embedded DisplayPort AUX bus (see displ     14   to a Embedded DisplayPort AUX bus (see display/dp-aux-bus.yaml) without
 15   actually specifying exactly what panel is co     15   actually specifying exactly what panel is connected. This is useful for
 16   the case that more than one different panel      16   the case that more than one different panel could be connected to the
 17   board, either for second-sourcing purposes o     17   board, either for second-sourcing purposes or to support multiple SKUs
 18   with different LCDs that hook up to a common     18   with different LCDs that hook up to a common board.
 19                                                    19 
 20   As per above, a requirement for using this b     20   As per above, a requirement for using this binding is that the panel is
 21   represented under the DP AUX bus. This means     21   represented under the DP AUX bus. This means that we can use any
 22   information provided by the DP AUX bus (incl     22   information provided by the DP AUX bus (including the EDID) to identify
 23   the panel. We can use this to identify displ     23   the panel. We can use this to identify display size, resolution, and
 24   timings among other things.                      24   timings among other things.
 25                                                    25 
 26   One piece of information about eDP panels th     26   One piece of information about eDP panels that is typically _not_
 27   provided anywhere on the DP AUX bus is the p     27   provided anywhere on the DP AUX bus is the power sequencing timings.
 28   This is the reason why, historically, we've      28   This is the reason why, historically, we've always had to explicitly
 29   list eDP panels. We solve that here with two     29   list eDP panels. We solve that here with two tricks. The "worst case"
 30   power on timings for any panels expected to      30   power on timings for any panels expected to be connected to a board are
 31   specified in these bindings. Once we've powe     31   specified in these bindings. Once we've powered on, it's expected that
 32   the operating system will lookup the panel i     32   the operating system will lookup the panel in a table (based on EDID
 33   information) to figure out other power seque     33   information) to figure out other power sequencing timings.
 34                                                    34 
 35   eDP panels in general can have somewhat arbi     35   eDP panels in general can have somewhat arbitrary power sequencing
 36   requirements. However, even though it's arbi     36   requirements. However, even though it's arbitrary in general, the
 37   vast majority of panel datasheets have a pow     37   vast majority of panel datasheets have a power sequence diagram that
 38   looks the exactly the same as every other pa     38   looks the exactly the same as every other panel. Each panel datasheet
 39   cares about different timings in this diagra     39   cares about different timings in this diagram but the fact that the
 40   diagram is so similar means we can come up w     40   diagram is so similar means we can come up with a single driver to
 41   handle it.                                       41   handle it.
 42                                                    42 
 43   These diagrams all look roughly like this, s     43   These diagrams all look roughly like this, sometimes labeled with
 44   slightly different numbers / lines but all p     44   slightly different numbers / lines but all pretty much the same
 45   sequence. This is because much of this diagr     45   sequence. This is because much of this diagram comes straight from
 46   the eDP Standard.                                46   the eDP Standard.
 47                                                    47 
 48                 ______________________________     48                 __________________________________________________
 49   Vdd       ___/:                                  49   Vdd       ___/:                                                :\____       /
 50           _/    :                                  50           _/    :                                                :     \_____/
 51            :<T1>:<T2>:                             51            :<T1>:<T2>:                                 :<--T10-->:<T11>:<T12>:
 52                 :    +-----------------------+     52                 :    +-----------------------+---------+---------+
 53   eDP     -----------+ Black video           |     53   eDP     -----------+ Black video           | Src vid | Blk vid +
 54   Display       :    +-----------------------+     54   Display       :    +-----------------------+---------+---------+
 55                 :     _______________________:     55                 :     _______________________:_________:_________:
 56   HPD           :<T3>|                       :     56   HPD           :<T3>|                       :         :         |
 57           ___________|                       :     57           ___________|                       :         :         |_____________
 58                      :                       :     58                      :                       :         :         :
 59   Sink               +-----------------------:     59   Sink               +-----------------------:---------:---------+
 60   AUX CH  -----------+ AUX Ch operational    :     60   AUX CH  -----------+ AUX Ch operational    :         :         +-------------
 61                      +-----------------------:     61                      +-----------------------:---------:---------+
 62                      :                       :     62                      :                       :         :         :
 63                      :<T4>:             :<T7>:     63                      :<T4>:             :<T7>:         :         :
 64   Src main                +------+------+-----     64   Src main                +------+------+--------------+---------+
 65   lnk data----------------+LnkTrn| Idle |Valid     65   lnk data----------------+LnkTrn| Idle |Valid vid data| Idle/off+-------------
 66                           +------+------+-----     66                           +------+------+--------------+---------+
 67                           : <T5> :<-T6->:<-T8-     67                           : <T5> :<-T6->:<-T8->:       :
 68                                                    68                                                :__:<T9>:
 69   LED_EN                                           69   LED_EN                                       |  |
 70           ____________________________________     70           _____________________________________|  |____________________________
 71                                                    71                                                :  :
 72                                      _________     72                                      __________:__:_
 73   PWM                               |              73   PWM                               |          :  : |
 74           __________________________|              74           __________________________|          :  : |__________________________
 75                                     :              75                                     :          :  : :
 76                        _____________:_________     76                        _____________:__________:__:_:______
 77   Bklight         ____/:            :              77   Bklight         ____/:            :          :  : :     :\____
 78   power   _______/     :<---T13---->:              78   power   _______/     :<---T13---->:          :  : :<T16>:     \______________
 79   (Vbl)          :<T17>:<---------T14---------     79   (Vbl)          :<T17>:<---------T14--------->:  :<-T15->:<T18>:
 80                                                    80 
 81   The above looks fairly complex but, as per a     81   The above looks fairly complex but, as per above, each panel only cares
 82   about a subset of those timings.                 82   about a subset of those timings.
 83                                                    83 
 84 allOf:                                             84 allOf:
 85   - $ref: panel-common.yaml#                       85   - $ref: panel-common.yaml#
 86                                                    86 
 87 properties:                                        87 properties:
 88   compatible:                                      88   compatible:
 89     const: edp-panel                               89     const: edp-panel
 90                                                    90 
 91   hpd-reliable-delay-ms:                           91   hpd-reliable-delay-ms:
 92     description:                                   92     description:
 93       A fixed amount of time that must be wait     93       A fixed amount of time that must be waited after powering on the
 94       panel's power-supply before the HPD sign     94       panel's power-supply before the HPD signal is a reliable way to know
 95       when the AUX channel is ready. This is u     95       when the AUX channel is ready. This is useful for panels that glitch
 96       the HPD at the start of power-on. This v     96       the HPD at the start of power-on. This value is not needed if HPD is
 97       always reliable for all panels that migh     97       always reliable for all panels that might be connected.
 98                                                    98 
 99   hpd-absent-delay-ms:                             99   hpd-absent-delay-ms:
100     description:                                  100     description:
101       The panel specifies that HPD will be ass    101       The panel specifies that HPD will be asserted this many milliseconds
102       from power on (timing T3 in the diagram     102       from power on (timing T3 in the diagram above). If we have no way to
103       measure HPD then a fixed delay of this m    103       measure HPD then a fixed delay of this many milliseconds can be used.
104       This can also be used as a timeout when     104       This can also be used as a timeout when waiting for HPD. Does not
105       include the hpd-reliable-delay, so if hp    105       include the hpd-reliable-delay, so if hpd-reliable-delay was 80 ms
106       and hpd-absent-delay was 200 ms then we'    106       and hpd-absent-delay was 200 ms then we'd do a fixed 80 ms delay and
107       then we know HPD would assert in the nex    107       then we know HPD would assert in the next 120 ms. This value is not
108       needed if HPD hooked up, either through     108       needed if HPD hooked up, either through a GPIO in the panel node or
109       hooked up directly to the eDP controller    109       hooked up directly to the eDP controller.
110                                                   110 
111   backlight: true                                 111   backlight: true
112   enable-gpios: true                              112   enable-gpios: true
113   port: true                                      113   port: true
114   power-supply: true                              114   power-supply: true
115   no-hpd: true                                    115   no-hpd: true
116   hpd-gpios: true                                 116   hpd-gpios: true
117                                                   117 
118 additionalProperties: false                       118 additionalProperties: false
119                                                   119 
120 required:                                         120 required:
121   - compatible                                    121   - compatible
122   - power-supply                                  122   - power-supply
123                                                   123 
124 examples:                                         124 examples:
125   - |                                             125   - |
126     #include <dt-bindings/clock/qcom,rpmh.h>      126     #include <dt-bindings/clock/qcom,rpmh.h>
127     #include <dt-bindings/gpio/gpio.h>            127     #include <dt-bindings/gpio/gpio.h>
128     #include <dt-bindings/interrupt-controller    128     #include <dt-bindings/interrupt-controller/irq.h>
129                                                   129 
130     i2c {                                         130     i2c {
131       #address-cells = <1>;                       131       #address-cells = <1>;
132       #size-cells = <0>;                          132       #size-cells = <0>;
133                                                   133 
134       bridge@2d {                                 134       bridge@2d {
135         compatible = "ti,sn65dsi86";              135         compatible = "ti,sn65dsi86";
136         reg = <0x2d>;                             136         reg = <0x2d>;
137                                                   137 
138         interrupt-parent = <&tlmm>;               138         interrupt-parent = <&tlmm>;
139         interrupts = <10 IRQ_TYPE_LEVEL_HIGH>;    139         interrupts = <10 IRQ_TYPE_LEVEL_HIGH>;
140                                                   140 
141         enable-gpios = <&tlmm 102 GPIO_ACTIVE_    141         enable-gpios = <&tlmm 102 GPIO_ACTIVE_HIGH>;
142                                                   142 
143         vpll-supply = <&src_pp1800_s4a>;          143         vpll-supply = <&src_pp1800_s4a>;
144         vccio-supply = <&src_pp1800_s4a>;         144         vccio-supply = <&src_pp1800_s4a>;
145         vcca-supply = <&src_pp1200_l2a>;          145         vcca-supply = <&src_pp1200_l2a>;
146         vcc-supply = <&src_pp1200_l2a>;           146         vcc-supply = <&src_pp1200_l2a>;
147                                                   147 
148         clocks = <&rpmhcc RPMH_LN_BB_CLK2>;       148         clocks = <&rpmhcc RPMH_LN_BB_CLK2>;
149         clock-names = "refclk";                   149         clock-names = "refclk";
150                                                   150 
151         no-hpd;                                   151         no-hpd;
152                                                   152 
153         ports {                                   153         ports {
154           #address-cells = <1>;                   154           #address-cells = <1>;
155           #size-cells = <0>;                      155           #size-cells = <0>;
156                                                   156 
157           port@0 {                                157           port@0 {
158             reg = <0>;                            158             reg = <0>;
159             endpoint {                            159             endpoint {
160               remote-endpoint = <&dsi0_out>;      160               remote-endpoint = <&dsi0_out>;
161             };                                    161             };
162           };                                      162           };
163                                                   163 
164           port@1 {                                164           port@1 {
165             reg = <1>;                            165             reg = <1>;
166             sn65dsi86_out: endpoint {             166             sn65dsi86_out: endpoint {
167               remote-endpoint = <&panel_in_edp    167               remote-endpoint = <&panel_in_edp>;
168             };                                    168             };
169           };                                      169           };
170         };                                        170         };
171                                                   171 
172         aux-bus {                                 172         aux-bus {
173           panel {                                 173           panel {
174             compatible = "edp-panel";             174             compatible = "edp-panel";
175             power-supply = <&pp3300_dx_edp>;      175             power-supply = <&pp3300_dx_edp>;
176             backlight = <&backlight>;             176             backlight = <&backlight>;
177             hpd-gpios = <&sn65dsi86_bridge 2 G    177             hpd-gpios = <&sn65dsi86_bridge 2 GPIO_ACTIVE_HIGH>;
178             hpd-reliable-delay-ms = <15>;         178             hpd-reliable-delay-ms = <15>;
179                                                   179 
180             port {                                180             port {
181               panel_in_edp: endpoint {            181               panel_in_edp: endpoint {
182                 remote-endpoint = <&sn65dsi86_    182                 remote-endpoint = <&sn65dsi86_out>;
183               };                                  183               };
184             };                                    184             };
185           };                                      185           };
186         };                                        186         };
187       };                                          187       };
188     };                                            188     };
                                                      

~ [ 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