Adds the i2c device in the board's initialization

Signed-off-by: Jorge Luis Zapata <[email protected]>
---
 arch/arm/mach-davinci/board-ntosd_644xa.c |   25 +++++++++++++++++++++++++
 1 files changed, 25 insertions(+), 0 deletions(-)

diff --git a/arch/arm/mach-davinci/board-ntosd_644xa.c
b/arch/arm/mach-davinci/board-ntosd_644xa.c
index 075c7fd..ede760f 100644
--- a/arch/arm/mach-davinci/board-ntosd_644xa.c
+++ b/arch/arm/mach-davinci/board-ntosd_644xa.c
@@ -12,6 +12,8 @@
 #include <linux/init.h>
 #include <linux/dma-mapping.h>

+#include <linux/i2c.h>
+
 #include <asm/mach-types.h>

 #include <asm/mach/arch.h>
@@ -20,6 +22,7 @@
 #include <mach/common.h>
 #include <mach/serial.h>
 #include <mach/emac.h>
+#include <mach/i2c.h>

 
/*******************************************************************************
  *                                   UART
         *
@@ -39,6 +42,25 @@ static struct emac_platform_data ntosd_644xa_emac_pdata = {
        .mdio_max_freq  = NTOSD_644XA_MDIO_FREQUENCY,
 };

+/*******************************************************************************
+ *                                    I2C
         *
+ 
******************************************************************************/
+static struct i2c_board_info __initdata ntosd_644xa_i2c_info[] =  {
+       /* I2C devices:
+        * TLV320AIC32 @ 0x18
+        * THS8200 @ 0x20
+        * THS7313 @ 0x2c
+        * TPS65023 @ 0x48
+        * TVP7000 @ 0x5c
+        * TVP5150 @ 0x5d
+        */
+};
+
+static struct davinci_i2c_platform_data ntosd_644xa_i2c_pdata = {
+       .bus_freq       = 20 /* kHz */,
+       .bus_delay      = 100 /* usec */,
+};
+
 static void __init ntosd_644xa_map_io(void)
 {
        davinci_map_common_io();
@@ -49,6 +71,9 @@ static __init void ntosd_644xa_init(void)
 {
        davinci_serial_init(&ntosd_644xa_uart_config);
        davinci_init_emac(&ntosd_644xa_emac_pdata);
+       davinci_init_i2c(&ntosd_644xa_i2c_pdata);
+       i2c_register_board_info(1, ntosd_644xa_i2c_info,
+                       ARRAY_SIZE(ntosd_644xa_i2c_info));
 }

 static __init void ntosd_644xa_irq_init(void)
-- 
1.6.2.2

_______________________________________________
Davinci-linux-open-source mailing list
[email protected]
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source

Reply via email to