i2c-s3c2410.txt 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. * Samsung's I2C controller
  2. The Samsung's I2C controller is used to interface with I2C devices.
  3. Required properties:
  4. - compatible: value should be either of the following.
  5. (a) "samsung, s3c2410-i2c", for i2c compatible with s3c2410 i2c.
  6. (b) "samsung, s3c2440-i2c", for i2c compatible with s3c2440 i2c.
  7. (c) "samsung, s3c2440-hdmiphy-i2c", for s3c2440-like i2c used
  8. inside HDMIPHY block found on several samsung SoCs
  9. (d) "samsung, exynos5440-i2c", for s3c2440-like i2c used
  10. on EXYNOS5440 which does not need GPIO configuration.
  11. (e) "samsung, exynos5-sata-phy-i2c", for s3c2440-like i2c used as
  12. a host to SATA PHY controller on an internal bus.
  13. - reg: physical base address of the controller and length of memory mapped
  14. region.
  15. - interrupts: interrupt number to the cpu.
  16. - samsung,i2c-sda-delay: Delay (in ns) applied to data line (SDA) edges.
  17. Required for all cases except "samsung,s3c2440-hdmiphy-i2c":
  18. - Samsung GPIO variant (deprecated):
  19. - gpios: The order of the gpios should be the following: <SDA, SCL>.
  20. The gpio specifier depends on the gpio controller. Required in all
  21. cases except for "samsung,s3c2440-hdmiphy-i2c" whose input/output
  22. lines are permanently wired to the respective clienta
  23. - Pinctrl variant (preferred, if available):
  24. - pinctrl-0: Pin control group to be used for this controller.
  25. - pinctrl-names: Should contain only one value - "default".
  26. Optional properties:
  27. - samsung,i2c-slave-addr: Slave address in multi-master environment. If not
  28. specified, default value is 0.
  29. - samsung,i2c-max-bus-freq: Desired frequency in Hz of the bus. If not
  30. specified, the default value in Hz is 100000.
  31. - samsung,sysreg-phandle - handle to syscon used to control the system registers
  32. Example:
  33. i2c@13870000 {
  34. compatible = "samsung,s3c2440-i2c";
  35. reg = <0x13870000 0x100>;
  36. interrupts = <345>;
  37. samsung,i2c-sda-delay = <100>;
  38. samsung,i2c-max-bus-freq = <100000>;
  39. /* Samsung GPIO variant begins here */
  40. gpios = <&gpd1 2 0 /* SDA */
  41. &gpd1 3 0 /* SCL */>;
  42. /* Samsung GPIO variant ends here */
  43. /* Pinctrl variant begins here */
  44. pinctrl-0 = <&i2c3_bus>;
  45. pinctrl-names = "default";
  46. /* Pinctrl variant ends here */
  47. #address-cells = <1>;
  48. #size-cells = <0>;
  49. wm8994@1a {
  50. compatible = "wlf,wm8994";
  51. reg = <0x1a>;
  52. };
  53. };