diff options
author | Ben Dooks <ben-linux@fluff.org> | 2008-10-31 16:14:59 +0000 |
---|---|---|
committer | Ben Dooks <ben-linux@fluff.org> | 2008-12-15 23:46:19 +0000 |
commit | 096941ed1e4b3ded5eded1b3f4208b8e35d5d3c3 (patch) | |
tree | 50f4d16c56e5ba868f398fd89088fdeb0b1c68ad | |
parent | d7ea3743ca9939eb71931dedb613d14ff7201d02 (diff) |
[ARM] SMDK6410: Add I2C device board information
Add the I2C devices on the SMDK6410.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
-rw-r--r-- | arch/arm/mach-s3c6410/mach-smdk6410.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/arch/arm/mach-s3c6410/mach-smdk6410.c b/arch/arm/mach-s3c6410/mach-smdk6410.c index 8d7101aab759..e845b2a1becf 100644 --- a/arch/arm/mach-s3c6410/mach-smdk6410.c +++ b/arch/arm/mach-s3c6410/mach-smdk6410.c @@ -20,6 +20,7 @@ #include <linux/serial_core.h> #include <linux/platform_device.h> #include <linux/io.h> +#include <linux/i2c.h> #include <asm/mach/arch.h> #include <asm/mach/map.h> @@ -68,6 +69,16 @@ static struct platform_device *smdk6410_devices[] __initdata = { &s3c_device_i2c1, }; + +static struct i2c_board_info i2c_devs0[] __initdata = { + { I2C_BOARD_INFO("24c08", 0x50), }, + { I2C_BOARD_INFO("WM8580", 0X1b), }, +}; + +static struct i2c_board_info i2c_devs1[] __initdata = { + { I2C_BOARD_INFO("24c128", 0x57), }, /* Samsung S524AD0XD1 */ +}; + extern void s3c64xx_init_io(struct map_desc *, int); static void __init smdk6410_map_io(void) @@ -81,6 +92,10 @@ static void __init smdk6410_machine_init(void) { s3c_i2c0_set_platdata(NULL); s3c_i2c1_set_platdata(NULL); + + i2c_register_board_info(0, i2c_devs0, ARRAY_SIZE(i2c_devs0)); + i2c_register_board_info(1, i2c_devs1, ARRAY_SIZE(i2c_devs1)); + platform_add_devices(smdk6410_devices, ARRAY_SIZE(smdk6410_devices)); } |