ARM: EXYNOS4: Add usb ehci device to the SMDKV310
authorJingoo Han <jg1.han@samsung.com>
Wed, 28 Sep 2011 01:33:25 +0000 (10:33 +0900)
committerKukjin Kim <kgene.kim@samsung.com>
Tue, 4 Oct 2011 10:01:35 +0000 (19:01 +0900)
This patch is to support usb ehci device to the SMDKV310 board.

Signed-off-by: Jingoo Han <jg1.han@samsung.com>
Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
arch/arm/mach-exynos4/Kconfig
arch/arm/mach-exynos4/mach-smdkv310.c

index 980ffd6..c4068fd 100644 (file)
@@ -142,6 +142,7 @@ config MACH_SMDKV310
        select S5P_DEV_I2C_HDMIPHY
        select S5P_DEV_MFC
        select S5P_DEV_TV
+       select S5P_DEV_USB_EHCI
        select S3C_DEV_HSMMC
        select S3C_DEV_HSMMC1
        select S3C_DEV_HSMMC2
@@ -156,6 +157,7 @@ config MACH_SMDKV310
        select EXYNOS4_SETUP_I2C1
        select EXYNOS4_SETUP_KEYPAD
        select EXYNOS4_SETUP_SDHCI
+       select EXYNOS4_SETUP_USB_PHY
        help
          Machine support for Samsung SMDKV310
 
index 5ba432e..0fa734c 100644 (file)
@@ -33,6 +33,8 @@
 #include <plat/gpio-cfg.h>
 #include <plat/backlight.h>
 #include <plat/mfc.h>
+#include <plat/ehci.h>
+#include <plat/clock.h>
 
 #include <mach/map.h>
 
@@ -167,6 +169,16 @@ static struct i2c_board_info i2c_devs1[] __initdata = {
        {I2C_BOARD_INFO("wm8994", 0x1a),},
 };
 
+/* USB EHCI */
+static struct s5p_ehci_platdata smdkv310_ehci_pdata;
+
+static void __init smdkv310_ehci_init(void)
+{
+       struct s5p_ehci_platdata *pdata = &smdkv310_ehci_pdata;
+
+       s5p_ehci_set_platdata(pdata);
+}
+
 static struct platform_device *smdkv310_devices[] __initdata = {
        &s3c_device_hsmmc0,
        &s3c_device_hsmmc1,
@@ -176,6 +188,7 @@ static struct platform_device *smdkv310_devices[] __initdata = {
        &s5p_device_i2c_hdmiphy,
        &s3c_device_rtc,
        &s3c_device_wdt,
+       &s5p_device_ehci,
        &exynos4_device_ac97,
        &exynos4_device_i2s0,
        &samsung_device_keypad,
@@ -276,6 +289,9 @@ static void __init smdkv310_machine_init(void)
 
        samsung_bl_set(&smdkv310_bl_gpio_info, &smdkv310_bl_data);
 
+       smdkv310_ehci_init();
+       clk_xusbxti.rate = 24000000;
+
        platform_add_devices(smdkv310_devices, ARRAY_SIZE(smdkv310_devices));
        s5p_device_mfc.dev.parent = &exynos4_device_pd[PD_MFC].dev;
 }