dsi-controller.yaml 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
  2. %YAML 1.2
  3. ---
  4. $id: http://devicetree.org/schemas/display/dsi-controller.yaml#
  5. $schema: http://devicetree.org/meta-schemas/core.yaml#
  6. title: Common Properties for DSI Display Panels
  7. maintainers:
  8. - Linus Walleij <linus.walleij@linaro.org>
  9. description: |
  10. This document defines device tree properties common to DSI, Display
  11. Serial Interface controllers and attached panels. It doesn't constitute
  12. a device tree binding specification by itself but is meant to be referenced
  13. by device tree bindings.
  14. When referenced from panel device tree bindings the properties defined in
  15. this document are defined as follows. The panel device tree bindings are
  16. responsible for defining whether each property is required or optional.
  17. Notice: this binding concerns DSI panels connected directly to a master
  18. without any intermediate port graph to the panel. Each DSI master
  19. can control one to four virtual channels to one panel. Each virtual
  20. channel should have a node "panel" for their virtual channel with their
  21. reg-property set to the virtual channel number, usually there is just
  22. one virtual channel, number 0.
  23. properties:
  24. $nodename:
  25. pattern: "^dsi(@.*)?$"
  26. clock-master:
  27. type: boolean
  28. description:
  29. Should be enabled if the host is being used in conjunction with
  30. another DSI host to drive the same peripheral. Hardware supporting
  31. such a configuration generally requires the data on both the busses
  32. to be driven by the same clock. Only the DSI host instance
  33. controlling this clock should contain this property.
  34. "#address-cells":
  35. const: 1
  36. "#size-cells":
  37. const: 0
  38. patternProperties:
  39. "^panel@[0-3]$":
  40. description: Panels connected to the DSI link
  41. type: object
  42. properties:
  43. reg:
  44. minimum: 0
  45. maximum: 3
  46. description:
  47. The virtual channel number of a DSI peripheral. Must be in the range
  48. from 0 to 3, as DSI uses a 2-bit addressing scheme. Some DSI
  49. peripherals respond to more than a single virtual channel. In that
  50. case the reg property can take multiple entries, one for each virtual
  51. channel that the peripheral responds to.
  52. enforce-video-mode:
  53. type: boolean
  54. description:
  55. The best option is usually to run a panel in command mode, as this
  56. gives better control over the panel hardware. However for different
  57. reasons like broken hardware, missing features or testing, it may be
  58. useful to be able to force a command mode-capable panel into video
  59. mode.
  60. required:
  61. - reg
  62. additionalProperties: true
  63. examples:
  64. - |
  65. #include <dt-bindings/gpio/gpio.h>
  66. dsi@a0351000 {
  67. reg = <0xa0351000 0x1000>;
  68. #address-cells = <1>;
  69. #size-cells = <0>;
  70. panel@0 {
  71. compatible = "sony,acx424akp";
  72. reg = <0>;
  73. vddi-supply = <&ab8500_ldo_aux1_reg>;
  74. reset-gpios = <&gpio2 1 GPIO_ACTIVE_LOW>;
  75. };
  76. };
  77. ...