diff options
author | Vishwanathrao Badarkhe, Manish <manishv.b@ti.com> | 2013-02-06 04:36:22 -0500 |
---|---|---|
committer | Sekhar Nori <nsekhar@ti.com> | 2013-02-09 12:07:43 -0500 |
commit | 01729ccf19b3c136cd93f8837b0a2761c23da700 (patch) | |
tree | 7b00df270bca494bf83cab6227c77d11fcad843e /arch | |
parent | 1661636d362b6d1a6c2bab210f2ab363a69deccc (diff) |
ARM: davinci: da850: add DT node for I2C0
Add I2C0 device tree and pin muxing information to da850-evm.
Also, add OF_DEV_AUXDATA for I2C0 controller driver in da850
board dt file to use I2C0 clock.
Verified i2c0 node gets created in sys class interface as
"/sys/class/i2c-dev/i2c-0/subsystem/i2c-0".
nsekhar@ti.com: tested using i2cdetect and i2cdump.
Signed-off-by: Vishwanathrao Badarkhe, Manish <manishv.b@ti.com>
Signed-off-by: Sekhar Nori <nsekhar@ti.com>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/arm/boot/dts/da850-evm.dts | 6 | ||||
-rw-r--r-- | arch/arm/boot/dts/da850.dtsi | 14 | ||||
-rw-r--r-- | arch/arm/mach-davinci/da8xx-dt.c | 8 |
3 files changed, 27 insertions, 1 deletions
diff --git a/arch/arm/boot/dts/da850-evm.dts b/arch/arm/boot/dts/da850-evm.dts index fa04152b24bf..0060903b2b78 100644 --- a/arch/arm/boot/dts/da850-evm.dts +++ b/arch/arm/boot/dts/da850-evm.dts | |||
@@ -30,6 +30,12 @@ | |||
30 | rtc0: rtc@1c23000 { | 30 | rtc0: rtc@1c23000 { |
31 | status = "okay"; | 31 | status = "okay"; |
32 | }; | 32 | }; |
33 | i2c0: i2c@1c22000 { | ||
34 | status = "okay"; | ||
35 | clock-frequency = <100000>; | ||
36 | pinctrl-names = "default"; | ||
37 | pinctrl-0 = <&i2c0_pins>; | ||
38 | }; | ||
33 | }; | 39 | }; |
34 | nand_cs3@62000000 { | 40 | nand_cs3@62000000 { |
35 | status = "okay"; | 41 | status = "okay"; |
diff --git a/arch/arm/boot/dts/da850.dtsi b/arch/arm/boot/dts/da850.dtsi index 8dd15c0426a8..9669e80cbada 100644 --- a/arch/arm/boot/dts/da850.dtsi +++ b/arch/arm/boot/dts/da850.dtsi | |||
@@ -56,6 +56,12 @@ | |||
56 | 0x30 0x01100000 0x0ff00000 | 56 | 0x30 0x01100000 0x0ff00000 |
57 | >; | 57 | >; |
58 | }; | 58 | }; |
59 | i2c0_pins: pinmux_i2c0_pins { | ||
60 | pinctrl-single,bits = < | ||
61 | /* I2C0_SDA,I2C0_SCL */ | ||
62 | 0x10 0x00002200 0x0000ff00 | ||
63 | >; | ||
64 | }; | ||
59 | }; | 65 | }; |
60 | serial0: serial@1c42000 { | 66 | serial0: serial@1c42000 { |
61 | compatible = "ns16550a"; | 67 | compatible = "ns16550a"; |
@@ -88,6 +94,14 @@ | |||
88 | 19>; | 94 | 19>; |
89 | status = "disabled"; | 95 | status = "disabled"; |
90 | }; | 96 | }; |
97 | i2c0: i2c@1c22000 { | ||
98 | compatible = "ti,davinci-i2c"; | ||
99 | reg = <0x22000 0x1000>; | ||
100 | interrupts = <15>; | ||
101 | #address-cells = <1>; | ||
102 | #size-cells = <0>; | ||
103 | status = "disabled"; | ||
104 | }; | ||
91 | }; | 105 | }; |
92 | nand_cs3@62000000 { | 106 | nand_cs3@62000000 { |
93 | compatible = "ti,davinci-nand"; | 107 | compatible = "ti,davinci-nand"; |
diff --git a/arch/arm/mach-davinci/da8xx-dt.c b/arch/arm/mach-davinci/da8xx-dt.c index 37c27af18fa0..a1731f0f5b97 100644 --- a/arch/arm/mach-davinci/da8xx-dt.c +++ b/arch/arm/mach-davinci/da8xx-dt.c | |||
@@ -37,11 +37,17 @@ static void __init da8xx_init_irq(void) | |||
37 | of_irq_init(da8xx_irq_match); | 37 | of_irq_init(da8xx_irq_match); |
38 | } | 38 | } |
39 | 39 | ||
40 | struct of_dev_auxdata da850_auxdata_lookup[] __initdata = { | ||
41 | OF_DEV_AUXDATA("ti,davinci-i2c", 0x01c22000, "i2c_davinci.1", NULL), | ||
42 | {} | ||
43 | }; | ||
44 | |||
40 | #ifdef CONFIG_ARCH_DAVINCI_DA850 | 45 | #ifdef CONFIG_ARCH_DAVINCI_DA850 |
41 | 46 | ||
42 | static void __init da850_init_machine(void) | 47 | static void __init da850_init_machine(void) |
43 | { | 48 | { |
44 | of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL); | 49 | of_platform_populate(NULL, of_default_bus_match_table, |
50 | da850_auxdata_lookup, NULL); | ||
45 | 51 | ||
46 | da8xx_uart_clk_enable(); | 52 | da8xx_uart_clk_enable(); |
47 | } | 53 | } |