brcm,bcm2835-hdmi.yaml 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. # SPDX-License-Identifier: GPL-2.0
  2. %YAML 1.2
  3. ---
  4. $id: http://devicetree.org/schemas/display/brcm,bcm2835-hdmi.yaml#
  5. $schema: http://devicetree.org/meta-schemas/core.yaml#
  6. title: Broadcom VC4 (VideoCore4) HDMI Controller
  7. maintainers:
  8. - Eric Anholt <eric@anholt.net>
  9. properties:
  10. compatible:
  11. const: brcm,bcm2835-hdmi
  12. reg:
  13. items:
  14. - description: HDMI register range
  15. - description: HD register range
  16. interrupts:
  17. minItems: 2
  18. clocks:
  19. items:
  20. - description: The pixel clock
  21. - description: The HDMI state machine clock
  22. clock-names:
  23. items:
  24. - const: pixel
  25. - const: hdmi
  26. ddc:
  27. $ref: /schemas/types.yaml#/definitions/phandle
  28. description: >
  29. Phandle of the I2C controller used for DDC EDID probing
  30. hpd-gpios:
  31. maxItems: 1
  32. description: >
  33. The GPIO pin for the HDMI hotplug detect (if it doesn't appear
  34. as an interrupt/status bit in the HDMI controller itself)
  35. dmas:
  36. maxItems: 1
  37. description: >
  38. Should contain one entry pointing to the DMA channel used to
  39. transfer audio data.
  40. dma-names:
  41. const: audio-rx
  42. power-domains:
  43. maxItems: 1
  44. required:
  45. - compatible
  46. - reg
  47. - interrupts
  48. - clocks
  49. - ddc
  50. additionalProperties: false
  51. examples:
  52. - |
  53. #include <dt-bindings/clock/bcm2835.h>
  54. #include <dt-bindings/gpio/gpio.h>
  55. hdmi: hdmi@7e902000 {
  56. compatible = "brcm,bcm2835-hdmi";
  57. reg = <0x7e902000 0x600>,
  58. <0x7e808000 0x100>;
  59. interrupts = <2 8>, <2 9>;
  60. ddc = <&i2c2>;
  61. hpd-gpios = <&gpio 46 GPIO_ACTIVE_HIGH>;
  62. clocks = <&clocks BCM2835_PLLH_PIX>,
  63. <&clocks BCM2835_CLOCK_HSM>;
  64. clock-names = "pixel", "hdmi";
  65. };
  66. ...