[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <1360143382-24607-1-git-send-email-manishv.b@ti.com>
Date: Wed, 6 Feb 2013 15:06:22 +0530
From: "Vishwanathrao Badarkhe, Manish" <manishv.b@...com>
To: <linux-i2c@...r.kernel.org>, <devicetree-discuss@...ts.ozlabs.org>,
<davinci-linux-open-source@...ux.davincidsp.com>,
<linux-arm-kernel@...ts.infradead.org>,
<linux-kernel@...r.kernel.org>
CC: <nsekhar@...com>, <khilman@...prootsystems.com>, <hs@...x.de>,
<linux@....linux.org.uk>, <manishv.b@...com>
Subject: [PATCH] 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".
Signed-off-by: Vishwanathrao Badarkhe, Manish <manishv.b@...com>
---
Applies on top of v3.8-rc6 of linus tree.
Depends on
- drivers/pinctrl: grab default handles from device core
http://www.gossamer-threads.com/lists/linux/kernel/1665411
- ARM: davinci: da850: add interrupt-parent property in soc node
https://patchwork.kernel.org/patch/2044101/
- ARM: davinci: da850: add pinctrl support
http://comments.gmane.org/gmane.linux.davinci/25993
:100644 100644 433027f... 738d5d4... M arch/arm/boot/dts/da850-evm.dts
:100644 100644 4b02167... a0072aa... M arch/arm/boot/dts/da850.dtsi
:100644 100644 37c27af... 95ca4e9... M arch/arm/mach-davinci/da8xx-dt.c
arch/arm/boot/dts/da850-evm.dts | 6 ++++++
arch/arm/boot/dts/da850.dtsi | 14 ++++++++++++++
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 433027f..738d5d4 100644
--- a/arch/arm/boot/dts/da850-evm.dts
+++ b/arch/arm/boot/dts/da850-evm.dts
@@ -27,6 +27,12 @@
serial2: serial@...d000 {
status = "okay";
};
+ i2c0: i2c@...2000 {
+ status = "okay";
+ clock-frequency = <100000>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&i2c0_pins>;
+ };
};
nand_cs3@...00000 {
status = "okay";
diff --git a/arch/arm/boot/dts/da850.dtsi b/arch/arm/boot/dts/da850.dtsi
index 4b02167..a0072aa 100644
--- a/arch/arm/boot/dts/da850.dtsi
+++ b/arch/arm/boot/dts/da850.dtsi
@@ -56,6 +56,12 @@
0x30 0x01100000 0x0ff00000
>;
};
+ i2c0_pins: pinmux_i2c0_pins {
+ pinctrl-single,bits = <
+ /* I2C0_SDA,I2C0_SCL */
+ 0x10 0x00002200 0x0000ff00
+ >;
+ };
};
serial0: serial@...2000 {
compatible = "ns16550a";
@@ -81,6 +87,14 @@
interrupts = <61>;
status = "disabled";
};
+ i2c0: i2c@...2000 {
+ compatible = "ti,davinci-i2c";
+ reg = <0x22000 0x1000>;
+ interrupts = <15>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ status = "disabled";
+ };
};
nand_cs3@...00000 {
compatible = "ti,davinci-nand";
diff --git a/arch/arm/mach-davinci/da8xx-dt.c b/arch/arm/mach-davinci/da8xx-dt.c
index 37c27af..95ca4e9 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)
of_irq_init(da8xx_irq_match);
}
+struct of_dev_auxdata da850_auxdata_lookup[] __initdata = {
+ OF_DEV_AUXDATA("ti,davinci-i2c", 0x01c22000, "i2c_davinci.1", NULL),
+ {}
+};
+
#ifdef CONFIG_ARCH_DAVINCI_DA850
static void __init da850_init_machine(void)
{
- of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL);
+ of_platform_populate(NULL, of_default_bus_match_table,
+ da850_auxdata_lookup, NULL);
da8xx_uart_clk_enable();
}
--
1.7.4.1
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists