13aa31cedSSam Ravnborg# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 23aa31cedSSam Ravnborg%YAML 1.2 33aa31cedSSam Ravnborg--- 43aa31cedSSam Ravnborg$id: http://devicetree.org/schemas/display/panel/panel-timing.yaml# 53aa31cedSSam Ravnborg$schema: http://devicetree.org/meta-schemas/core.yaml# 63aa31cedSSam Ravnborg 784e85359SKrzysztof Kozlowskititle: panel timing 83aa31cedSSam Ravnborg 93aa31cedSSam Ravnborgmaintainers: 103aa31cedSSam Ravnborg - Thierry Reding <thierry.reding@gmail.com> 113aa31cedSSam Ravnborg - Sam Ravnborg <sam@ravnborg.org> 123aa31cedSSam Ravnborg 133aa31cedSSam Ravnborgdescription: | 143aa31cedSSam Ravnborg There are different ways of describing the timing data of a panel. The 153aa31cedSSam Ravnborg devicetree representation corresponds to the one commonly found in datasheets 163aa31cedSSam Ravnborg for panels. 173aa31cedSSam Ravnborg 183aa31cedSSam Ravnborg The parameters are defined as seen in the following illustration. 193aa31cedSSam Ravnborg 20*3e66f493SMarek Vasut +-------+----------+-------------------------------------+----------+ 21*3e66f493SMarek Vasut | | | ^ | | 22*3e66f493SMarek Vasut | | | |vsync_len | | 23*3e66f493SMarek Vasut | | | v | | 24*3e66f493SMarek Vasut +-------+----------+-------------------------------------+----------+ 25*3e66f493SMarek Vasut | | | ^ | | 26*3e66f493SMarek Vasut | | | |vback_porch | | 27*3e66f493SMarek Vasut | | | v | | 28*3e66f493SMarek Vasut +-------+----------#######################################----------+ 29*3e66f493SMarek Vasut | | # ^ # | 30*3e66f493SMarek Vasut | | # | # | 31*3e66f493SMarek Vasut | hsync | hback # | # hfront | 32*3e66f493SMarek Vasut | len | porch # | hactive # porch | 33*3e66f493SMarek Vasut |<----->|<-------->#<-------+--------------------------->#<-------->| 34*3e66f493SMarek Vasut | | # | # | 35*3e66f493SMarek Vasut | | # |vactive # | 36*3e66f493SMarek Vasut | | # | # | 37*3e66f493SMarek Vasut | | # v # | 38*3e66f493SMarek Vasut +-------+----------#######################################----------+ 39*3e66f493SMarek Vasut | | | ^ | | 40*3e66f493SMarek Vasut | | | |vfront_porch | | 41*3e66f493SMarek Vasut | | | v | | 42*3e66f493SMarek Vasut +-------+----------+-------------------------------------+----------+ 433aa31cedSSam Ravnborg 443aa31cedSSam Ravnborg 453aa31cedSSam Ravnborg The following is the panel timings shown with time on the x-axis. 463aa31cedSSam Ravnborg This matches the timing diagrams often found in data sheets. 473aa31cedSSam Ravnborg 483aa31cedSSam Ravnborg Active Front Sync Back 493aa31cedSSam Ravnborg Region Porch Porch 503aa31cedSSam Ravnborg <-----------------------><----------------><-------------><--------------> 513aa31cedSSam Ravnborg //////////////////////| 523aa31cedSSam Ravnborg ////////////////////// | 533aa31cedSSam Ravnborg ////////////////////// |.................. ................ 543aa31cedSSam Ravnborg _______________ 553aa31cedSSam Ravnborg 563aa31cedSSam Ravnborg Timing can be specified either as a typical value or as a tuple 573aa31cedSSam Ravnborg of min, typ, max values. 583aa31cedSSam Ravnborg 593aa31cedSSam Ravnborgproperties: 603aa31cedSSam Ravnborg 613aa31cedSSam Ravnborg clock-frequency: 623aa31cedSSam Ravnborg description: Panel clock in Hz 633aa31cedSSam Ravnborg 643aa31cedSSam Ravnborg hactive: 653aa31cedSSam Ravnborg $ref: /schemas/types.yaml#/definitions/uint32 663aa31cedSSam Ravnborg description: Horizontal panel resolution in pixels 673aa31cedSSam Ravnborg 683aa31cedSSam Ravnborg vactive: 693aa31cedSSam Ravnborg $ref: /schemas/types.yaml#/definitions/uint32 703aa31cedSSam Ravnborg description: Vertical panel resolution in pixels 713aa31cedSSam Ravnborg 723aa31cedSSam Ravnborg hfront-porch: 733aa31cedSSam Ravnborg description: Horizontal front porch panel timing 74652980b1SRob Herring $ref: /schemas/types.yaml#/definitions/uint32-array 753aa31cedSSam Ravnborg oneOf: 76652980b1SRob Herring - maxItems: 1 773aa31cedSSam Ravnborg items: 783aa31cedSSam Ravnborg description: typical number of pixels 79652980b1SRob Herring - minItems: 3 803aa31cedSSam Ravnborg maxItems: 3 813aa31cedSSam Ravnborg items: 823aa31cedSSam Ravnborg description: min, typ, max number of pixels 833aa31cedSSam Ravnborg 843aa31cedSSam Ravnborg hback-porch: 853aa31cedSSam Ravnborg description: Horizontal back porch timing 86652980b1SRob Herring $ref: /schemas/types.yaml#/definitions/uint32-array 873aa31cedSSam Ravnborg oneOf: 88652980b1SRob Herring - maxItems: 1 893aa31cedSSam Ravnborg items: 903aa31cedSSam Ravnborg description: typical number of pixels 91652980b1SRob Herring - minItems: 3 923aa31cedSSam Ravnborg maxItems: 3 933aa31cedSSam Ravnborg items: 943aa31cedSSam Ravnborg description: min, typ, max number of pixels 953aa31cedSSam Ravnborg 963aa31cedSSam Ravnborg hsync-len: 973aa31cedSSam Ravnborg description: Horizontal sync length panel timing 98652980b1SRob Herring $ref: /schemas/types.yaml#/definitions/uint32-array 993aa31cedSSam Ravnborg oneOf: 100652980b1SRob Herring - maxItems: 1 1013aa31cedSSam Ravnborg items: 1023aa31cedSSam Ravnborg description: typical number of pixels 103652980b1SRob Herring - minItems: 3 1043aa31cedSSam Ravnborg maxItems: 3 1053aa31cedSSam Ravnborg items: 1063aa31cedSSam Ravnborg description: min, typ, max number of pixels 1073aa31cedSSam Ravnborg 1083aa31cedSSam Ravnborg vfront-porch: 1093aa31cedSSam Ravnborg description: Vertical front porch panel timing 110652980b1SRob Herring $ref: /schemas/types.yaml#/definitions/uint32-array 1113aa31cedSSam Ravnborg oneOf: 112652980b1SRob Herring - maxItems: 1 1133aa31cedSSam Ravnborg items: 1143aa31cedSSam Ravnborg description: typical number of lines 115652980b1SRob Herring - minItems: 3 1163aa31cedSSam Ravnborg maxItems: 3 1173aa31cedSSam Ravnborg items: 1183aa31cedSSam Ravnborg description: min, typ, max number of lines 1193aa31cedSSam Ravnborg 1203aa31cedSSam Ravnborg vback-porch: 1213aa31cedSSam Ravnborg description: Vertical back porch panel timing 122652980b1SRob Herring $ref: /schemas/types.yaml#/definitions/uint32-array 1233aa31cedSSam Ravnborg oneOf: 124652980b1SRob Herring - maxItems: 1 1253aa31cedSSam Ravnborg items: 1263aa31cedSSam Ravnborg description: typical number of lines 127652980b1SRob Herring - minItems: 3 1283aa31cedSSam Ravnborg maxItems: 3 1293aa31cedSSam Ravnborg items: 1303aa31cedSSam Ravnborg description: min, typ, max number of lines 1313aa31cedSSam Ravnborg 1323aa31cedSSam Ravnborg vsync-len: 1333aa31cedSSam Ravnborg description: Vertical sync length panel timing 134652980b1SRob Herring $ref: /schemas/types.yaml#/definitions/uint32-array 1353aa31cedSSam Ravnborg oneOf: 136652980b1SRob Herring - maxItems: 1 1373aa31cedSSam Ravnborg items: 1383aa31cedSSam Ravnborg description: typical number of lines 139652980b1SRob Herring - minItems: 3 1403aa31cedSSam Ravnborg maxItems: 3 1413aa31cedSSam Ravnborg items: 1423aa31cedSSam Ravnborg description: min, typ, max number of lines 1433aa31cedSSam Ravnborg 1443aa31cedSSam Ravnborg hsync-active: 1453aa31cedSSam Ravnborg description: | 1463aa31cedSSam Ravnborg Horizontal sync pulse. 1473aa31cedSSam Ravnborg 0 selects active low, 1 selects active high. 1483aa31cedSSam Ravnborg If omitted then it is not used by the hardware 1494e71ed98SRob Herring $ref: /schemas/types.yaml#/definitions/uint32 1503aa31cedSSam Ravnborg enum: [0, 1] 1513aa31cedSSam Ravnborg 1523aa31cedSSam Ravnborg vsync-active: 1533aa31cedSSam Ravnborg description: | 1543aa31cedSSam Ravnborg Vertical sync pulse. 1553aa31cedSSam Ravnborg 0 selects active low, 1 selects active high. 1563aa31cedSSam Ravnborg If omitted then it is not used by the hardware 1574e71ed98SRob Herring $ref: /schemas/types.yaml#/definitions/uint32 1583aa31cedSSam Ravnborg enum: [0, 1] 1593aa31cedSSam Ravnborg 1603aa31cedSSam Ravnborg de-active: 1613aa31cedSSam Ravnborg description: | 1623aa31cedSSam Ravnborg Data enable. 1633aa31cedSSam Ravnborg 0 selects active low, 1 selects active high. 1643aa31cedSSam Ravnborg If omitted then it is not used by the hardware 1654e71ed98SRob Herring $ref: /schemas/types.yaml#/definitions/uint32 1663aa31cedSSam Ravnborg enum: [0, 1] 1673aa31cedSSam Ravnborg 1683aa31cedSSam Ravnborg pixelclk-active: 1693aa31cedSSam Ravnborg description: | 1703aa31cedSSam Ravnborg Data driving on rising or falling edge. 1713aa31cedSSam Ravnborg Use 0 to drive pixel data on falling edge and 1723aa31cedSSam Ravnborg sample data on rising edge. 1733aa31cedSSam Ravnborg Use 1 to drive pixel data on rising edge and 1743aa31cedSSam Ravnborg sample data on falling edge 1754e71ed98SRob Herring $ref: /schemas/types.yaml#/definitions/uint32 1763aa31cedSSam Ravnborg enum: [0, 1] 1773aa31cedSSam Ravnborg 1783aa31cedSSam Ravnborg syncclk-active: 1793aa31cedSSam Ravnborg description: | 1803aa31cedSSam Ravnborg Drive sync on rising or sample sync on falling edge. 1813aa31cedSSam Ravnborg If not specified then the setup is as specified by pixelclk-active. 1823aa31cedSSam Ravnborg Use 0 to drive sync on falling edge and 1833aa31cedSSam Ravnborg sample sync on rising edge of pixel clock. 1843aa31cedSSam Ravnborg Use 1 to drive sync on rising edge and 1853aa31cedSSam Ravnborg sample sync on falling edge of pixel clock 1864e71ed98SRob Herring $ref: /schemas/types.yaml#/definitions/uint32 1873aa31cedSSam Ravnborg enum: [0, 1] 1883aa31cedSSam Ravnborg 1893aa31cedSSam Ravnborg interlaced: 1903aa31cedSSam Ravnborg type: boolean 1913aa31cedSSam Ravnborg description: Enable interlaced mode 1923aa31cedSSam Ravnborg 1933aa31cedSSam Ravnborg doublescan: 1943aa31cedSSam Ravnborg type: boolean 1953aa31cedSSam Ravnborg description: Enable double scan mode 1963aa31cedSSam Ravnborg 1973aa31cedSSam Ravnborg doubleclk: 1983aa31cedSSam Ravnborg type: boolean 1993aa31cedSSam Ravnborg description: Enable double clock mode 2003aa31cedSSam Ravnborg 2013aa31cedSSam Ravnborgrequired: 2023aa31cedSSam Ravnborg - clock-frequency 2033aa31cedSSam Ravnborg - hactive 2043aa31cedSSam Ravnborg - vactive 2053aa31cedSSam Ravnborg - hfront-porch 2063aa31cedSSam Ravnborg - hback-porch 2073aa31cedSSam Ravnborg - hsync-len 2083aa31cedSSam Ravnborg - vfront-porch 2093aa31cedSSam Ravnborg - vback-porch 2103aa31cedSSam Ravnborg - vsync-len 2113aa31cedSSam Ravnborg 2123aa31cedSSam RavnborgadditionalProperties: false 2133aa31cedSSam Ravnborg 2143aa31cedSSam Ravnborg... 215