ti,omap4-i2c.yaml 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
  2. %YAML 1.2
  3. ---
  4. $id: http://devicetree.org/schemas/i2c/ti,omap4-i2c.yaml#
  5. $schema: http://devicetree.org/meta-schemas/core.yaml#
  6. title: I2C controllers on TI's OMAP and K3 SoCs
  7. maintainers:
  8. - Vignesh Raghavendra <vigneshr@ti.com>
  9. properties:
  10. compatible:
  11. oneOf:
  12. - enum:
  13. - ti,omap2420-i2c
  14. - ti,omap2430-i2c
  15. - ti,omap3-i2c
  16. - ti,omap4-i2c
  17. - items:
  18. - enum:
  19. - ti,am4372-i2c
  20. - ti,am64-i2c
  21. - ti,am654-i2c
  22. - ti,j721e-i2c
  23. - const: ti,omap4-i2c
  24. reg:
  25. maxItems: 1
  26. interrupts:
  27. maxItems: 1
  28. clocks:
  29. maxItems: 1
  30. clock-names:
  31. const: fck
  32. power-domains: true
  33. ti,hwmods:
  34. description:
  35. Must be "i2c<n>", n being the instance number (1-based).
  36. This property is applicable only on legacy platforms mainly omap2/3
  37. and ti81xx and should not be used on other platforms.
  38. $ref: /schemas/types.yaml#/definitions/string
  39. deprecated: true
  40. mux-states:
  41. description:
  42. mux controller node to route the I2C signals from SoC to clients.
  43. maxItems: 1
  44. required:
  45. - compatible
  46. - reg
  47. - interrupts
  48. allOf:
  49. - $ref: /schemas/i2c/i2c-controller.yaml#
  50. - if:
  51. properties:
  52. compatible:
  53. enum:
  54. - ti,omap2420-i2c
  55. - ti,omap2430-i2c
  56. - ti,omap3-i2c
  57. - ti,omap4-i2c
  58. then:
  59. properties:
  60. ti,hwmods:
  61. items:
  62. - pattern: "^i2c([1-9])$"
  63. else:
  64. properties:
  65. ti,hwmods: false
  66. unevaluatedProperties: false
  67. examples:
  68. - |
  69. #include <dt-bindings/interrupt-controller/irq.h>
  70. #include <dt-bindings/interrupt-controller/arm-gic.h>
  71. main_i2c0: i2c@2000000 {
  72. compatible = "ti,j721e-i2c", "ti,omap4-i2c";
  73. reg = <0x2000000 0x100>;
  74. interrupts = <GIC_SPI 200 IRQ_TYPE_LEVEL_HIGH>;
  75. #address-cells = <1>;
  76. #size-cells = <0>;
  77. mux-states = <&i2c_mux 1>;
  78. };