14 #include <linux/kernel.h>
15 #include <linux/types.h>
17 #include <linux/list.h>
20 #include <linux/input.h>
21 #include <linux/serial_core.h>
24 #include <linux/i2c.h>
35 #ifdef CONFIG_SMDK6410_WM1190_EV1
40 #ifdef CONFIG_SMDK6410_WM1192_EV1
53 #include <mach/hardware.h>
61 #include <mach/regs-gpio.h>
62 #include <mach/regs-sys.h>
69 #include <plat/clock.h>
79 #define UCON S3C2410_UCON_DEFAULT | S3C2410_UCON_UCLK
80 #define ULCON S3C2410_LCON_CS8 | S3C2410_LCON_PNONE | S3C2410_LCON_STOPB
81 #define UFCON S3C2410_UFCON_RXTRIG8 | S3C2410_UFCON_FIFOMODE
139 .set_power = smdk6410_lcd_power_set,
143 .name =
"platform-lcd",
145 .dev.platform_data = &smdk6410_lcd_power_data,
153 .virtual_y = 480 * 2,
171 .vtiming = &smdk6410_lcd_timing,
172 .win[0] = &smdk6410_fb_win0,
187 static struct resource smdk6410_smsc911x_resources[] = {
204 .num_resources =
ARRAY_SIZE(smdk6410_smsc911x_resources),
205 .resource = &smdk6410_smsc911x_resources[0],
207 .platform_data = &smdk6410_smsc911x_pdata,
211 #ifdef CONFIG_REGULATOR
221 .num_consumer_supplies =
ARRAY_SIZE(smdk6410_b_pwr_5v_consumers),
222 .consumer_supplies = smdk6410_b_pwr_5v_consumers,
227 .microvolts = 5000000,
228 .init_data = &smdk6410_b_pwr_5v_data,
233 .
name =
"reg-fixed-voltage",
236 .platform_data = &smdk6410_b_pwr_5v_pdata,
245 static uint32_t smdk6410_keymap[] __initdata = {
254 .
keymap = smdk6410_keymap,
259 .keymap_data = &smdk6410_keymap_data,
264 static struct map_desc smdk6410_iodesc[] = {};
267 #ifdef CONFIG_SMDK6410_SD_CH0
270 #ifdef CONFIG_SMDK6410_SD_CH1
282 #ifdef CONFIG_REGULATOR
285 &smdk6410_lcd_powerdev,
295 #ifdef CONFIG_REGULATOR
310 .num_consumer_supplies =
ARRAY_SIZE(smdk6410_vddarm_consumers),
311 .consumer_supplies = smdk6410_vddarm_consumers,
344 .name =
"PVDD_UH+PVDD_MMC",
392 .name =
"PVDD_ALIVE",
400 .name =
"PVDD_AUDIO",
406 #ifdef CONFIG_SMDK6410_WM1190_EV1
410 .name =
"PVDD_INT+PVDD_PLL",
441 .name =
"PVDD_HI+PVDD_EXT+PVDD_SYS+PVCCM2MTV",
446 .num_consumer_supplies =
ARRAY_SIZE(wm8350_dcdc4_consumers),
447 .consumer_supplies = wm8350_dcdc4_consumers,
453 .name =
"PVDD_OTGI+HPVDD+AVDD",
464 } wm1190_regulators[] = {
483 for (i = 0; i <
ARRAY_SIZE(wm1190_regulators); i++)
486 wm1190_regulators[i].initdata);
492 .
init = smdk6410_wm8350_init,
498 #ifdef CONFIG_SMDK6410_WM1192_EV1
499 static struct gpio_led wm1192_pmic_leds[] = {
501 .
name =
"PMIC:red:power",
509 .leds = wm1192_pmic_leds,
516 .platform_data = &wm1192_pmic_led,
529 dev_err(wm831x->
dev,
"Failed to add PMIC LED: %d\n", ret);
541 .name =
"PVDD_MEM+PVDD_GPS",
552 .name =
"PVDD_LCD+PVDD_EXT",
555 .consumer_supplies = wm1192_ldo1_consumers,
556 .num_consumer_supplies =
ARRAY_SIZE(wm1192_ldo1_consumers),
560 .
name =
"LED7:green:",
564 .
name =
"LED8:green:",
570 .backlight = &wm1192_backlight_pdata,
601 #ifdef CONFIG_SMDK6410_WM1192_EV1
603 .platform_data = &smdk6410_wm1192_pdata,
608 #ifdef CONFIG_SMDK6410_WM1190_EV1
610 .platform_data = &smdk6410_wm8350_pdata,
632 static void __init smdk6410_map_io(
void)
653 static void __init smdk6410_machine_init(
void)
701 .atag_offset = 0x100,
705 .map_io = smdk6410_map_io,
706 .init_machine = smdk6410_machine_init,