omap-spi.yaml 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117
  1. # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
  2. %YAML 1.2
  3. ---
  4. $id: http://devicetree.org/schemas/spi/omap-spi.yaml#
  5. $schema: http://devicetree.org/meta-schemas/core.yaml#
  6. title: SPI Controller on OMAP and K3 SoCs
  7. maintainers:
  8. - Aswath Govindraju <a-govindraju@ti.com>
  9. allOf:
  10. - $ref: spi-controller.yaml#
  11. properties:
  12. compatible:
  13. oneOf:
  14. - items:
  15. - enum:
  16. - ti,am654-mcspi
  17. - ti,am4372-mcspi
  18. - const: ti,omap4-mcspi
  19. - items:
  20. - enum:
  21. - ti,omap2-mcspi
  22. - ti,omap4-mcspi
  23. reg:
  24. maxItems: 1
  25. interrupts:
  26. maxItems: 1
  27. clocks:
  28. maxItems: 1
  29. power-domains:
  30. maxItems: 1
  31. ti,spi-num-cs:
  32. $ref: /schemas/types.yaml#/definitions/uint32
  33. description: Number of chipselect supported by the instance.
  34. minimum: 1
  35. maximum: 4
  36. ti,hwmods:
  37. $ref: /schemas/types.yaml#/definitions/string
  38. description:
  39. Must be "mcspi<n>", n being the instance number (1-based).
  40. This property is applicable only on legacy platforms mainly omap2/3
  41. and ti81xx and should not be used on other platforms.
  42. deprecated: true
  43. ti,pindir-d0-out-d1-in:
  44. description:
  45. Select the D0 pin as output and D1 as input. The default is D0
  46. as input and D1 as output.
  47. type: boolean
  48. dmas:
  49. description:
  50. List of DMA specifiers with the controller specific format as
  51. described in the generic DMA client binding. A tx and rx
  52. specifier is required for each chip select.
  53. minItems: 1
  54. maxItems: 8
  55. dma-names:
  56. description:
  57. List of DMA request names. These strings correspond 1:1 with
  58. the DMA specifiers listed in dmas. The string names is to be
  59. "rxN" and "txN" for RX and TX requests, respectively. Where N
  60. is the chip select number.
  61. minItems: 1
  62. maxItems: 8
  63. required:
  64. - compatible
  65. - reg
  66. - interrupts
  67. unevaluatedProperties: false
  68. if:
  69. properties:
  70. compatible:
  71. enum:
  72. - ti,omap2-mcspi
  73. - ti,omap4-mcspi
  74. then:
  75. properties:
  76. ti,hwmods:
  77. items:
  78. - pattern: "^mcspi([1-9])$"
  79. else:
  80. properties:
  81. ti,hwmods: false
  82. examples:
  83. - |
  84. #include <dt-bindings/interrupt-controller/irq.h>
  85. #include <dt-bindings/interrupt-controller/arm-gic.h>
  86. #include <dt-bindings/soc/ti,sci_pm_domain.h>
  87. spi@2100000 {
  88. compatible = "ti,am654-mcspi","ti,omap4-mcspi";
  89. reg = <0x2100000 0x400>;
  90. interrupts = <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>;
  91. clocks = <&k3_clks 137 1>;
  92. power-domains = <&k3_pds 137 TI_SCI_PD_EXCLUSIVE>;
  93. #address-cells = <1>;
  94. #size-cells = <0>;
  95. dmas = <&main_udmap 0xc500>, <&main_udmap 0x4500>;
  96. dma-names = "tx0", "rx0";
  97. };