i2c-mv64xxx.txt 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. * Marvell MV64XXX I2C controller
  2. Required properties :
  3. - reg : Offset and length of the register set for the device
  4. - compatible : Should be either:
  5. - "allwinner,sun4i-a10-i2c"
  6. - "allwinner,sun6i-a31-i2c"
  7. - "marvell,mv64xxx-i2c"
  8. - "marvell,mv78230-i2c"
  9. - "marvell,mv78230-a0-i2c"
  10. * Note: Only use "marvell,mv78230-a0-i2c" for a
  11. very rare, initial version of the SoC which
  12. had broken offload support. Linux
  13. auto-detects this and sets it appropriately.
  14. - interrupts : The interrupt number
  15. Optional properties :
  16. - clock-frequency : Desired I2C bus clock frequency in Hz. If not set the
  17. default frequency is 100kHz
  18. - resets : phandle to the parent reset controller. Mandatory
  19. whenever you're using the "allwinner,sun6i-a31-i2c"
  20. compatible.
  21. - clocks: : pointers to the reference clocks for this device, the
  22. first one is the one used for the clock on the i2c bus,
  23. the second one is the clock used to acces the registers
  24. of the controller
  25. - clock-names : names of used clocks, mandatory if the second clock is
  26. used, the name must be "core", and "reg" (the latter is
  27. only for Armada 7K/8K).
  28. Examples:
  29. i2c@11000 {
  30. compatible = "marvell,mv64xxx-i2c";
  31. reg = <0x11000 0x20>;
  32. interrupts = <29>;
  33. clock-frequency = <100000>;
  34. };
  35. For the Armada XP:
  36. i2c@11000 {
  37. compatible = "marvell,mv78230-i2c", "marvell,mv64xxx-i2c";
  38. reg = <0x11000 0x100>;
  39. interrupts = <29>;
  40. clock-frequency = <100000>;
  41. };
  42. For the Armada 7040:
  43. i2c@701000 {
  44. compatible = "marvell,mv78230-i2c";
  45. reg = <0x701000 0x20>;
  46. interrupts = <29>;
  47. clock-frequency = <100000>;
  48. clock-names = "core", "reg";
  49. clocks = <&core_clock>, <&reg_clock>;
  50. };