diff options
author | Kyungmin Park <kyungmin.park@samsung.com> | 2009-11-17 02:41:22 -0500 |
---|---|---|
committer | Ben Dooks <ben-linux@fluff.org> | 2009-11-30 20:33:17 -0500 |
commit | 067f131d09d89bd56864f1f4b3144cc778024b33 (patch) | |
tree | 24488f9c035260fe47eccaf7a75a53287a4cdbfb | |
parent | 5eda288fa96cac0b0f25c90249f5347c6c62da0e (diff) |
SMDKC100: add I2C0 and I2C1 buses support
Add required machine definitions for I2C 0 and 1 bus controllers.
Currently no I2C device are defined yet.
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
-rw-r--r-- | arch/arm/mach-s5pc100/Kconfig | 2 | ||||
-rw-r--r-- | arch/arm/mach-s5pc100/mach-smdkc100.c | 17 |
2 files changed, 19 insertions, 0 deletions
diff --git a/arch/arm/mach-s5pc100/Kconfig b/arch/arm/mach-s5pc100/Kconfig index 5e6b9a32bd90..36e7e0046c15 100644 --- a/arch/arm/mach-s5pc100/Kconfig +++ b/arch/arm/mach-s5pc100/Kconfig | |||
@@ -18,6 +18,8 @@ config MACH_SMDKC100 | |||
18 | bool "SMDKC100" | 18 | bool "SMDKC100" |
19 | select CPU_S5PC100 | 19 | select CPU_S5PC100 |
20 | select S3C_DEV_FB | 20 | select S3C_DEV_FB |
21 | select S3C_DEV_I2C1 | ||
22 | select S5PC1XX_SETUP_I2C0 | ||
21 | select S5PC1XX_SETUP_I2C1 | 23 | select S5PC1XX_SETUP_I2C1 |
22 | select S5PC1XX_SETUP_FB_24BPP | 24 | select S5PC1XX_SETUP_FB_24BPP |
23 | help | 25 | help |
diff --git a/arch/arm/mach-s5pc100/mach-smdkc100.c b/arch/arm/mach-s5pc100/mach-smdkc100.c index e8f45535f035..844f6bab0372 100644 --- a/arch/arm/mach-s5pc100/mach-smdkc100.c +++ b/arch/arm/mach-s5pc100/mach-smdkc100.c | |||
@@ -42,6 +42,7 @@ | |||
42 | #include <plat/cpu.h> | 42 | #include <plat/cpu.h> |
43 | #include <plat/s5pc100.h> | 43 | #include <plat/s5pc100.h> |
44 | #include <plat/fb.h> | 44 | #include <plat/fb.h> |
45 | #include <plat/iic.h> | ||
45 | 46 | ||
46 | #define UCON (S3C2410_UCON_DEFAULT | S3C2410_UCON_UCLK) | 47 | #define UCON (S3C2410_UCON_DEFAULT | S3C2410_UCON_UCLK) |
47 | #define ULCON (S3C2410_LCON_CS8 | S3C2410_LCON_PNONE | S3C2410_LCON_STOPB) | 48 | #define ULCON (S3C2410_LCON_CS8 | S3C2410_LCON_PNONE | S3C2410_LCON_STOPB) |
@@ -78,6 +79,14 @@ static struct s3c2410_uartcfg smdkc100_uartcfgs[] __initdata = { | |||
78 | }, | 79 | }, |
79 | }; | 80 | }; |
80 | 81 | ||
82 | /* I2C0 */ | ||
83 | static struct i2c_board_info i2c_devs0[] __initdata = { | ||
84 | }; | ||
85 | |||
86 | /* I2C1 */ | ||
87 | static struct i2c_board_info i2c_devs1[] __initdata = { | ||
88 | }; | ||
89 | |||
81 | /* LCD power controller */ | 90 | /* LCD power controller */ |
82 | static void smdkc100_lcd_power_set(struct plat_lcd_data *pd, | 91 | static void smdkc100_lcd_power_set(struct plat_lcd_data *pd, |
83 | unsigned int power) | 92 | unsigned int power) |
@@ -135,6 +144,8 @@ static struct s3c_fb_platdata smdkc100_lcd_pdata __initdata = { | |||
135 | static struct map_desc smdkc100_iodesc[] = {}; | 144 | static struct map_desc smdkc100_iodesc[] = {}; |
136 | 145 | ||
137 | static struct platform_device *smdkc100_devices[] __initdata = { | 146 | static struct platform_device *smdkc100_devices[] __initdata = { |
147 | &s3c_device_i2c0, | ||
148 | &s3c_device_i2c1, | ||
138 | &s3c_device_fb, | 149 | &s3c_device_fb, |
139 | &smdkc100_lcd_powerdev, | 150 | &smdkc100_lcd_powerdev, |
140 | }; | 151 | }; |
@@ -148,6 +159,12 @@ static void __init smdkc100_map_io(void) | |||
148 | 159 | ||
149 | static void __init smdkc100_machine_init(void) | 160 | static void __init smdkc100_machine_init(void) |
150 | { | 161 | { |
162 | /* I2C */ | ||
163 | s3c_i2c0_set_platdata(NULL); | ||
164 | s3c_i2c1_set_platdata(NULL); | ||
165 | i2c_register_board_info(0, i2c_devs0, ARRAY_SIZE(i2c_devs0)); | ||
166 | i2c_register_board_info(1, i2c_devs1, ARRAY_SIZE(i2c_devs1)); | ||
167 | |||
151 | s3c_fb_set_platdata(&smdkc100_lcd_pdata); | 168 | s3c_fb_set_platdata(&smdkc100_lcd_pdata); |
152 | 169 | ||
153 | /* LCD init */ | 170 | /* LCD init */ |