aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-exynos/mach-smdkv310.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/mach-exynos/mach-smdkv310.c')
-rw-r--r--arch/arm/mach-exynos/mach-smdkv310.c17
1 files changed, 15 insertions, 2 deletions
diff --git a/arch/arm/mach-exynos/mach-smdkv310.c b/arch/arm/mach-exynos/mach-smdkv310.c
index 5fb209c4a59..3cfa688d274 100644
--- a/arch/arm/mach-exynos/mach-smdkv310.c
+++ b/arch/arm/mach-exynos/mach-smdkv310.c
@@ -19,6 +19,7 @@
19#include <linux/i2c.h> 19#include <linux/i2c.h>
20#include <linux/input.h> 20#include <linux/input.h>
21#include <linux/pwm_backlight.h> 21#include <linux/pwm_backlight.h>
22#include <linux/platform_data/s3c-hsotg.h>
22 23
23#include <asm/mach/arch.h> 24#include <asm/mach/arch.h>
24#include <asm/hardware/gic.h> 25#include <asm/hardware/gic.h>
@@ -270,6 +271,15 @@ static void __init smdkv310_ohci_init(void)
270 exynos4_ohci_set_platdata(pdata); 271 exynos4_ohci_set_platdata(pdata);
271} 272}
272 273
274/* USB OTG */
275static struct s3c_hsotg_plat smdkv310_hsotg_pdata;
276
277/* Audio device */
278static struct platform_device smdkv310_device_audio = {
279 .name = "smdk-audio",
280 .id = -1,
281};
282
273static struct platform_device *smdkv310_devices[] __initdata = { 283static struct platform_device *smdkv310_devices[] __initdata = {
274 &s3c_device_hsmmc0, 284 &s3c_device_hsmmc0,
275 &s3c_device_hsmmc1, 285 &s3c_device_hsmmc1,
@@ -278,6 +288,7 @@ static struct platform_device *smdkv310_devices[] __initdata = {
278 &s3c_device_i2c1, 288 &s3c_device_i2c1,
279 &s5p_device_i2c_hdmiphy, 289 &s5p_device_i2c_hdmiphy,
280 &s3c_device_rtc, 290 &s3c_device_rtc,
291 &s3c_device_usb_hsotg,
281 &s3c_device_wdt, 292 &s3c_device_wdt,
282 &s5p_device_ehci, 293 &s5p_device_ehci,
283 &s5p_device_fimc0, 294 &s5p_device_fimc0,
@@ -301,6 +312,7 @@ static struct platform_device *smdkv310_devices[] __initdata = {
301 &samsung_asoc_dma, 312 &samsung_asoc_dma,
302 &samsung_asoc_idma, 313 &samsung_asoc_idma,
303 &s5p_device_fimd0, 314 &s5p_device_fimd0,
315 &smdkv310_device_audio,
304 &smdkv310_lcd_lte480wv, 316 &smdkv310_lcd_lte480wv,
305 &smdkv310_smsc911x, 317 &smdkv310_smsc911x,
306 &exynos4_device_ahci, 318 &exynos4_device_ahci,
@@ -353,7 +365,7 @@ static void s5p_tv_setup(void)
353static void __init smdkv310_map_io(void) 365static void __init smdkv310_map_io(void)
354{ 366{
355 exynos_init_io(NULL, 0); 367 exynos_init_io(NULL, 0);
356 s3c24xx_init_clocks(24000000); 368 s3c24xx_init_clocks(clk_xusbxti.rate);
357 s3c24xx_init_uarts(smdkv310_uartcfgs, ARRAY_SIZE(smdkv310_uartcfgs)); 369 s3c24xx_init_uarts(smdkv310_uartcfgs, ARRAY_SIZE(smdkv310_uartcfgs));
358} 370}
359 371
@@ -389,7 +401,7 @@ static void __init smdkv310_machine_init(void)
389 401
390 smdkv310_ehci_init(); 402 smdkv310_ehci_init();
391 smdkv310_ohci_init(); 403 smdkv310_ohci_init();
392 clk_xusbxti.rate = 24000000; 404 s3c_hsotg_set_platdata(&smdkv310_hsotg_pdata);
393 405
394 platform_add_devices(smdkv310_devices, ARRAY_SIZE(smdkv310_devices)); 406 platform_add_devices(smdkv310_devices, ARRAY_SIZE(smdkv310_devices));
395} 407}
@@ -416,5 +428,6 @@ MACHINE_START(SMDKC210, "SMDKC210")
416 .init_machine = smdkv310_machine_init, 428 .init_machine = smdkv310_machine_init,
417 .init_late = exynos_init_late, 429 .init_late = exynos_init_late,
418 .timer = &exynos4_timer, 430 .timer = &exynos4_timer,
431 .reserve = &smdkv310_reserve,
419 .restart = exynos4_restart, 432 .restart = exynos4_restart,
420MACHINE_END 433MACHINE_END