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