display-timing bindings 
 | 
======================= 
 | 
  
 | 
display-timings node 
 | 
-------------------- 
 | 
  
 | 
required properties: 
 | 
 - none 
 | 
  
 | 
optional properties: 
 | 
 - native-mode: The native mode for the display, in case multiple modes are 
 | 
        provided. When omitted, assume the first node is the native. 
 | 
  
 | 
timing subnode 
 | 
-------------- 
 | 
  
 | 
required properties: 
 | 
 - hactive, vactive: display resolution 
 | 
 - hfront-porch, hback-porch, hsync-len: horizontal display timing parameters 
 | 
   in pixels 
 | 
   vfront-porch, vback-porch, vsync-len: vertical display timing parameters in 
 | 
   lines 
 | 
 - clock-frequency: display clock in Hz 
 | 
  
 | 
optional properties: 
 | 
 - hsync-active: hsync pulse is active low/high/ignored 
 | 
 - vsync-active: vsync pulse is active low/high/ignored 
 | 
 - de-active: data-enable pulse is active low/high/ignored 
 | 
 - pixelclk-active: with 
 | 
            - active high = drive pixel data on rising edge/ 
 | 
                    sample data on falling edge 
 | 
            - active low  = drive pixel data on falling edge/ 
 | 
                    sample data on rising edge 
 | 
            - ignored     = ignored 
 | 
 - syncclk-active: with 
 | 
            - active high = drive sync on rising edge/ 
 | 
                    sample sync on falling edge of pixel 
 | 
                    clock 
 | 
            - active low  = drive sync on falling edge/ 
 | 
                    sample sync on rising edge of pixel 
 | 
                    clock 
 | 
            - omitted     = same configuration as pixelclk-active 
 | 
 - interlaced (bool): boolean to enable interlaced mode 
 | 
 - doublescan (bool): boolean to enable doublescan mode 
 | 
 - doubleclk (bool): boolean to enable doubleclock mode 
 | 
  
 | 
All the optional properties that are not bool follow the following logic: 
 | 
    <1>: high active 
 | 
    <0>: low active 
 | 
    omitted: not used on hardware 
 | 
  
 | 
There are different ways of describing the capabilities of a display. The 
 | 
devicetree representation corresponds to the one commonly found in datasheets 
 | 
for displays. If a display supports multiple signal timings, the native-mode 
 | 
can be specified. 
 | 
  
 | 
The parameters are defined as: 
 | 
  
 | 
  +----------+-------------------------------------+----------+-------+ 
 | 
  |          |        ^                            |          |       | 
 | 
  |          |        |vback_porch                 |          |       | 
 | 
  |          |        v                            |          |       | 
 | 
  +----------#######################################----------+-------+ 
 | 
  |          #        ^                            #          |       | 
 | 
  |          #        |                            #          |       | 
 | 
  |  hback   #        |                            #  hfront  | hsync | 
 | 
  |   porch  #        |       hactive              #  porch   |  len  | 
 | 
  |<-------->#<-------+--------------------------->#<-------->|<----->| 
 | 
  |          #        |                            #          |       | 
 | 
  |          #        |vactive                     #          |       | 
 | 
  |          #        |                            #          |       | 
 | 
  |          #        v                            #          |       | 
 | 
  +----------#######################################----------+-------+ 
 | 
  |          |        ^                            |          |       | 
 | 
  |          |        |vfront_porch                |          |       | 
 | 
  |          |        v                            |          |       | 
 | 
  +----------+-------------------------------------+----------+-------+ 
 | 
  |          |        ^                            |          |       | 
 | 
  |          |        |vsync_len                   |          |       | 
 | 
  |          |        v                            |          |       | 
 | 
  +----------+-------------------------------------+----------+-------+ 
 | 
  
 | 
Note: In addition to being used as subnode(s) of display-timings, the timing 
 | 
      subnode may also be used on its own. This is appropriate if only one mode 
 | 
      need be conveyed. In this case, the node should be named 'panel-timing'. 
 | 
  
 | 
  
 | 
Example: 
 | 
  
 | 
    display-timings { 
 | 
        native-mode = <&timing0>; 
 | 
        timing0: 1080p24 { 
 | 
            /* 1920x1080p24 */ 
 | 
            clock-frequency = <52000000>; 
 | 
            hactive = <1920>; 
 | 
            vactive = <1080>; 
 | 
            hfront-porch = <25>; 
 | 
            hback-porch = <25>; 
 | 
            hsync-len = <25>; 
 | 
            vback-porch = <2>; 
 | 
            vfront-porch = <2>; 
 | 
            vsync-len = <2>; 
 | 
            hsync-active = <1>; 
 | 
        }; 
 | 
    }; 
 | 
  
 | 
Every required property also supports the use of ranges, so the commonly used 
 | 
datasheet description with minimum, typical and maximum values can be used. 
 | 
  
 | 
Example: 
 | 
  
 | 
    timing1: timing { 
 | 
        /* 1920x1080p24 */ 
 | 
        clock-frequency = <148500000>; 
 | 
        hactive = <1920>; 
 | 
        vactive = <1080>; 
 | 
        hsync-len = <0 44 60>; 
 | 
        hfront-porch = <80 88 95>; 
 | 
        hback-porch = <100 148 160>; 
 | 
        vfront-porch = <0 4 6>; 
 | 
        vback-porch = <0 36 50>; 
 | 
        vsync-len = <0 5 6>; 
 | 
    }; 
 |