ARM: S5PV310: I2C0/1 devices support on Universal board
authorKyungmin Park <kyungmin.park@samsung.com>
Fri, 8 Oct 2010 13:34:56 +0000 (22:34 +0900)
committerKukjin Kim <kgene.kim@samsung.com>
Mon, 25 Oct 2010 07:03:01 +0000 (16:03 +0900)
Camera devices use the I2C0 and Gyro uese the I2C1 on universal board.

Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
[kgene.kim@samsung.com: minor title fixes]
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
arch/arm/mach-s5pv310/Kconfig
arch/arm/mach-s5pv310/mach-universal_c210.c

index 6b2b948c9ccd52fcc8a45377233d3273b2b71dae..f12f560894adeb5a20079d43016b8eda94760d2a 100644 (file)
@@ -57,6 +57,8 @@ config MACH_UNIVERSAL_C210
        bool "Mobile UNIVERSAL_C210 Board"
        select CPU_S5PV310
        select S5P_DEV_ONENAND
+       select S3C_DEV_I2C1
+       select S5PV310_SETUP_I2C1
        help
          Machine support for Samsung Mobile Universal S5PC210 Reference
          Board. S5PC210(MCP) is one of package option of S5PV310
index e16984963e893d7aae6cc10b22245f2bb65d43e1..deffeb1be3b90d251a96024c0c6b401b12372bea 100644 (file)
@@ -10,6 +10,7 @@
 #include <linux/platform_device.h>
 #include <linux/serial_core.h>
 #include <linux/input.h>
+#include <linux/i2c.h>
 #include <linux/gpio_keys.h>
 #include <linux/gpio.h>
 
@@ -116,6 +117,16 @@ static struct platform_device universal_gpio_keys = {
        },
 };
 
+/* I2C0 */
+static struct i2c_board_info i2c0_devs[] __initdata = {
+       /* Camera, To be updated */
+};
+
+/* I2C1 */
+static struct i2c_board_info i2c1_devs[] __initdata = {
+       /* Gyro, To be updated */
+};
+
 static struct platform_device *universal_devices[] __initdata = {
        &universal_gpio_keys,
        &s5p_device_onenand,
@@ -134,6 +145,9 @@ static void __init universal_machine_init(void)
        l2x0_init(S5P_VA_L2CC, 1 << 28, 0xffffffff);
 #endif
 
+       i2c_register_board_info(0, i2c0_devs, ARRAY_SIZE(i2c0_devs));
+       i2c_register_board_info(1, i2c1_devs, ARRAY_SIZE(i2c1_devs));
+
        /* Last */
        platform_add_devices(universal_devices, ARRAY_SIZE(universal_devices));
 }