atmel,lcdc-display.yaml 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  1. # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
  2. %YAML 1.2
  3. ---
  4. $id: http://devicetree.org/schemas/display/atmel,lcdc-display.yaml#
  5. $schema: http://devicetree.org/meta-schemas/core.yaml#
  6. title: Microchip's LCDC Display
  7. maintainers:
  8. - Nicolas Ferre <nicolas.ferre@microchip.com>
  9. - Dharma Balasubiramani <dharma.b@microchip.com>
  10. description:
  11. The LCD Controller (LCDC) consists of logic for transferring LCD image data
  12. from an external display buffer to a TFT LCD panel. The LCDC has one display
  13. input buffer per layer that fetches pixels through the single bus host
  14. interface and a look-up table to allow palletized display configurations. The
  15. LCDC is programmable on a per layer basis, and supports different LCD
  16. resolutions, window sizes, image formats and pixel depths.
  17. # We need a select here since this schema is applicable only for nodes with the
  18. # following properties
  19. select:
  20. anyOf:
  21. - required: [ 'atmel,dmacon' ]
  22. - required: [ 'atmel,lcdcon2' ]
  23. - required: [ 'atmel,guard-time' ]
  24. properties:
  25. atmel,dmacon:
  26. $ref: /schemas/types.yaml#/definitions/uint32
  27. description: dma controller configuration
  28. atmel,lcdcon2:
  29. $ref: /schemas/types.yaml#/definitions/uint32
  30. description: lcd controller configuration
  31. atmel,guard-time:
  32. $ref: /schemas/types.yaml#/definitions/uint32
  33. description: lcd guard time (Delay in frame periods)
  34. maximum: 127
  35. bits-per-pixel:
  36. $ref: /schemas/types.yaml#/definitions/uint32
  37. description: lcd panel bit-depth.
  38. enum: [1, 2, 4, 8, 16, 24, 32]
  39. atmel,lcdcon-backlight:
  40. $ref: /schemas/types.yaml#/definitions/flag
  41. description: enable backlight
  42. atmel,lcdcon-backlight-inverted:
  43. $ref: /schemas/types.yaml#/definitions/flag
  44. description: invert backlight PWM polarity
  45. atmel,lcd-wiring-mode:
  46. $ref: /schemas/types.yaml#/definitions/string
  47. description: lcd wiring mode "RGB" or "BRG"
  48. enum:
  49. - RGB
  50. - BRG
  51. atmel,power-control-gpio:
  52. description: gpio to power on or off the LCD (as many as needed)
  53. maxItems: 1
  54. display-timings:
  55. $ref: panel/display-timings.yaml#
  56. required:
  57. - atmel,dmacon
  58. - atmel,lcdcon2
  59. - atmel,guard-time
  60. - bits-per-pixel
  61. additionalProperties: false
  62. examples:
  63. - |
  64. display: panel {
  65. bits-per-pixel = <32>;
  66. atmel,lcdcon-backlight;
  67. atmel,dmacon = <0x1>;
  68. atmel,lcdcon2 = <0x80008002>;
  69. atmel,guard-time = <9>;
  70. atmel,lcd-wiring-mode = "RGB";
  71. display-timings {
  72. native-mode = <&timing0>;
  73. timing0: timing0 {
  74. clock-frequency = <9000000>;
  75. hactive = <480>;
  76. vactive = <272>;
  77. hback-porch = <1>;
  78. hfront-porch = <1>;
  79. vback-porch = <40>;
  80. vfront-porch = <1>;
  81. hsync-len = <45>;
  82. vsync-len = <1>;
  83. };
  84. };
  85. };