blob: e9611ace87924b8131295831103cb1ba0f3372f7 [file] [log] [blame]
Thomas Abraham5a5f5082011-09-13 09:46:05 +05301* Samsung's I2C controller
2
3The Samsung's I2C controller is used to interface with I2C devices.
4
5Required 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.
Karol Lewandowskiec39ef82012-04-23 18:24:01 +02009 (c) "samsung, s3c2440-hdmiphy-i2c", for s3c2440-like i2c used
10 inside HDMIPHY block found on several samsung SoCs
Thomas Abraham5a5f5082011-09-13 09:46:05 +053011 - reg: physical base address of the controller and length of memory mapped
12 region.
13 - interrupts: interrupt number to the cpu.
14 - samsung,i2c-sda-delay: Delay (in ns) applied to data line (SDA) edges.
Thomas Abraham5a5f5082011-09-13 09:46:05 +053015
Tomasz Figa2693ac62012-11-13 11:33:40 +010016Required for all cases except "samsung,s3c2440-hdmiphy-i2c":
17 - Samsung GPIO variant (deprecated):
18 - gpios: The order of the gpios should be the following: <SDA, SCL>.
19 The gpio specifier depends on the gpio controller. Required in all
20 cases except for "samsung,s3c2440-hdmiphy-i2c" whose input/output
21 lines are permanently wired to the respective clienta
22 - Pinctrl variant (preferred, if available):
23 - pinctrl-0: Pin control group to be used for this controller.
24 - pinctrl-names: Should contain only one value - "default".
25
Thomas Abraham5a5f5082011-09-13 09:46:05 +053026Optional properties:
Thomas Abraham5a5f5082011-09-13 09:46:05 +053027 - samsung,i2c-slave-addr: Slave address in multi-master enviroment. 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
32Example:
33
34 i2c@13870000 {
35 compatible = "samsung,s3c2440-i2c";
36 reg = <0x13870000 0x100>;
37 interrupts = <345>;
38 samsung,i2c-sda-delay = <100>;
39 samsung,i2c-max-bus-freq = <100000>;
Tomasz Figa2693ac62012-11-13 11:33:40 +010040 /* Samsung GPIO variant begins here */
Thomas Abraham5a5f5082011-09-13 09:46:05 +053041 gpios = <&gpd1 2 0 /* SDA */
42 &gpd1 3 0 /* SCL */>;
Tomasz Figa2693ac62012-11-13 11:33:40 +010043 /* Samsung GPIO variant ends here */
44 /* Pinctrl variant begins here */
45 pinctrl-0 = <&i2c3_bus>;
46 pinctrl-names = "default";
47 /* Pinctrl variant ends here */
Thomas Abraham5a5f5082011-09-13 09:46:05 +053048 #address-cells = <1>;
49 #size-cells = <0>;
50
51 wm8994@1a {
52 compatible = "wlf,wm8994";
53 reg = <0x1a>;
54 };
55 };