1*4882a593Smuzhiyun# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2*4882a593Smuzhiyun%YAML 1.2 3*4882a593Smuzhiyun--- 4*4882a593Smuzhiyun$id: http://devicetree.org/schemas/display/panel/display-timings.yaml# 5*4882a593Smuzhiyun$schema: http://devicetree.org/meta-schemas/core.yaml# 6*4882a593Smuzhiyun 7*4882a593Smuzhiyuntitle: display timings bindings 8*4882a593Smuzhiyun 9*4882a593Smuzhiyunmaintainers: 10*4882a593Smuzhiyun - Thierry Reding <thierry.reding@gmail.com> 11*4882a593Smuzhiyun - Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> 12*4882a593Smuzhiyun - Sam Ravnborg <sam@ravnborg.org> 13*4882a593Smuzhiyun 14*4882a593Smuzhiyundescription: | 15*4882a593Smuzhiyun A display panel may be able to handle several display timings, 16*4882a593Smuzhiyun with different resolutions. 17*4882a593Smuzhiyun The display-timings node makes it possible to specify the timings 18*4882a593Smuzhiyun and to specify the timing that is native for the display. 19*4882a593Smuzhiyun 20*4882a593Smuzhiyunproperties: 21*4882a593Smuzhiyun $nodename: 22*4882a593Smuzhiyun const: display-timings 23*4882a593Smuzhiyun 24*4882a593Smuzhiyun native-mode: 25*4882a593Smuzhiyun $ref: /schemas/types.yaml#/definitions/phandle 26*4882a593Smuzhiyun description: | 27*4882a593Smuzhiyun The default display timing is the one specified as native-mode. 28*4882a593Smuzhiyun If no native-mode is specified then the first node is assumed 29*4882a593Smuzhiyun to be the native mode. 30*4882a593Smuzhiyun 31*4882a593SmuzhiyunpatternProperties: 32*4882a593Smuzhiyun "^timing": 33*4882a593Smuzhiyun type: object 34*4882a593Smuzhiyun allOf: 35*4882a593Smuzhiyun - $ref: panel-timing.yaml# 36*4882a593Smuzhiyun 37*4882a593SmuzhiyunadditionalProperties: false 38*4882a593Smuzhiyun 39*4882a593Smuzhiyunexamples: 40*4882a593Smuzhiyun - |+ 41*4882a593Smuzhiyun 42*4882a593Smuzhiyun /* 43*4882a593Smuzhiyun * Example that specifies panel timing using minimum, typical, 44*4882a593Smuzhiyun * maximum values as commonly used in datasheet description. 45*4882a593Smuzhiyun * timing1 is the native-mode. 46*4882a593Smuzhiyun */ 47*4882a593Smuzhiyun display-timings { 48*4882a593Smuzhiyun native-mode = <&timing1>; 49*4882a593Smuzhiyun timing0 { 50*4882a593Smuzhiyun /* 1920x1080p24 */ 51*4882a593Smuzhiyun clock-frequency = <148500000>; 52*4882a593Smuzhiyun hactive = <1920>; 53*4882a593Smuzhiyun vactive = <1080>; 54*4882a593Smuzhiyun hsync-len = <0 44 60>; 55*4882a593Smuzhiyun hfront-porch = <80 88 95>; 56*4882a593Smuzhiyun hback-porch = <100 148 160>; 57*4882a593Smuzhiyun vfront-porch = <0 4 6>; 58*4882a593Smuzhiyun vback-porch = <0 36 50>; 59*4882a593Smuzhiyun vsync-len = <0 5 6>; 60*4882a593Smuzhiyun }; 61*4882a593Smuzhiyun timing1 { 62*4882a593Smuzhiyun /* 1920x1080p24 */ 63*4882a593Smuzhiyun clock-frequency = <52000000>; 64*4882a593Smuzhiyun hactive = <1920>; 65*4882a593Smuzhiyun vactive = <1080>; 66*4882a593Smuzhiyun hfront-porch = <25>; 67*4882a593Smuzhiyun hback-porch = <25>; 68*4882a593Smuzhiyun hsync-len = <0 25 25>; 69*4882a593Smuzhiyun vback-porch = <2>; 70*4882a593Smuzhiyun vfront-porch = <2>; 71*4882a593Smuzhiyun vsync-len = <2>; 72*4882a593Smuzhiyun hsync-active = <1>; 73*4882a593Smuzhiyun pixelclk-active = <1>; 74*4882a593Smuzhiyun }; 75*4882a593Smuzhiyun }; 76*4882a593Smuzhiyun 77*4882a593Smuzhiyun... 78