i2c-pxa.yaml 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. # SPDX-License-Identifier: GPL-2.0-only
  2. %YAML 1.2
  3. ---
  4. $id: http://devicetree.org/schemas/i2c/i2c-pxa.yaml#
  5. $schema: http://devicetree.org/meta-schemas/core.yaml#
  6. title: Marvell MMP I2C controller
  7. maintainers:
  8. - Rob Herring <robh@kernel.org>
  9. allOf:
  10. - $ref: /schemas/i2c/i2c-controller.yaml#
  11. - if:
  12. not:
  13. required:
  14. - mrvl,i2c-polling
  15. then:
  16. required:
  17. - interrupts
  18. properties:
  19. compatible:
  20. enum:
  21. - mrvl,mmp-twsi
  22. - mrvl,pxa-i2c
  23. - marvell,armada-3700-i2c
  24. reg:
  25. maxItems: 1
  26. interrupts:
  27. maxItems: 1
  28. clocks:
  29. minItems: 1
  30. resets:
  31. minItems: 1
  32. mrvl,i2c-polling:
  33. $ref: /schemas/types.yaml#/definitions/flag
  34. description: |
  35. Disable interrupt of i2c controller. Polling status register of i2c
  36. controller instead.
  37. mrvl,i2c-fast-mode:
  38. $ref: /schemas/types.yaml#/definitions/flag
  39. description: Enable fast mode of i2c controller.
  40. unevaluatedProperties: false
  41. required:
  42. - compatible
  43. - reg
  44. - interrupts
  45. - clocks
  46. - '#address-cells'
  47. - '#size-cells'
  48. examples:
  49. - |
  50. #include <dt-bindings/clock/marvell,mmp2.h>
  51. i2c@d4011000 {
  52. compatible = "mrvl,mmp-twsi";
  53. reg = <0xd4011000 0x1000>;
  54. interrupts = <7>;
  55. clocks = <&soc_clocks MMP2_CLK_TWSI1>;
  56. mrvl,i2c-fast-mode;
  57. #address-cells = <1>;
  58. #size-cells = <0>;
  59. };
  60. ...