ARM: EXYNOS: Add s3c-hsotg device support for Universal C210 board
authorLukasz Majewski <l.majewski@samsung.com>
Sat, 12 May 2012 23:27:33 +0000 (08:27 +0900)
committerKukjin Kim <kgene.kim@samsung.com>
Wed, 16 May 2012 13:32:13 +0000 (22:32 +0900)
This patch adds platform data for using S3C-HSOTG driver at
Universal_C210 target.

Signed-off-by: Lukasz Majewski <l.majewski@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
arch/arm/mach-exynos/Kconfig
arch/arm/mach-exynos/mach-universal_c210.c

index cbe0dad6c05edc69f7e480c101ec5972598fdcff..a6a6a9417a013d68d6ad91892b933d3d605f838f 100644 (file)
@@ -250,6 +250,7 @@ config MACH_UNIVERSAL_C210
        select S3C_DEV_I2C1
        select S3C_DEV_I2C3
        select S3C_DEV_I2C5
+       select S3C_DEV_USB_HSOTG
        select S5P_DEV_I2C_HDMIPHY
        select S5P_DEV_MFC
        select S5P_DEV_ONENAND
@@ -262,6 +263,7 @@ config MACH_UNIVERSAL_C210
        select EXYNOS4_SETUP_SDHCI
        select EXYNOS4_SETUP_FIMC
        select S5P_SETUP_MIPIPHY
+       select EXYNOS4_SETUP_USB_PHY
        help
          Machine support for Samsung Mobile Universal S5PC210 Reference
          Board.
index a34036eb8ba26942d9859f9e574013c355e510c4..620f05341eb6db8a6f10dd07eded638594400f39 100644 (file)
@@ -205,6 +205,7 @@ static struct regulator_init_data lp3974_ldo2_data = {
 };
 
 static struct regulator_consumer_supply lp3974_ldo3_consumer[] = {
+       REGULATOR_SUPPLY("vusb_a", "s3c-hsotg"),
        REGULATOR_SUPPLY("vdd", "exynos4-hdmi"),
        REGULATOR_SUPPLY("vdd_pll", "exynos4-hdmi"),
        REGULATOR_SUPPLY("vdd11", "s5p-mipi-csis.0"),
@@ -290,6 +291,7 @@ static struct regulator_init_data lp3974_ldo7_data = {
 };
 
 static struct regulator_consumer_supply lp3974_ldo8_consumer[] = {
+       REGULATOR_SUPPLY("vusb_d", "s3c-hsotg"),
        REGULATOR_SUPPLY("vdd33a_dac", "s5p-sdo"),
 };
 
@@ -486,7 +488,10 @@ static struct regulator_init_data lp3974_vichg_data = {
 static struct regulator_init_data lp3974_esafeout1_data = {
        .constraints    = {
                .name           = "SAFEOUT1",
+               .min_uV         = 4800000,
+               .max_uV         = 4800000,
                .valid_ops_mask = REGULATOR_CHANGE_STATUS,
+               .always_on      = 1,
                .state_mem      = {
                        .enabled        = 1,
                },
@@ -994,6 +999,9 @@ static struct gpio universal_camera_gpios[] = {
        { GPIO_CAM_VGA_NSTBY,   GPIOF_OUT_INIT_LOW,  "CAM_VGA_NSTBY" },
 };
 
+/* USB OTG */
+static struct s3c_hsotg_plat universal_hsotg_pdata;
+
 static void __init universal_camera_init(void)
 {
        s3c_set_platdata(&mipi_csis_platdata, sizeof(mipi_csis_platdata),
@@ -1049,6 +1057,7 @@ static struct platform_device *universal_devices[] __initdata = {
        &s5p_device_onenand,
        &s5p_device_fimd0,
        &s5p_device_jpeg,
+       &s3c_device_usb_hsotg,
        &s5p_device_mfc,
        &s5p_device_mfc_l,
        &s5p_device_mfc_r,
@@ -1102,6 +1111,7 @@ static void __init universal_machine_init(void)
        i2c_register_board_info(I2C_GPIO_BUS_12, i2c_gpio12_devs,
                        ARRAY_SIZE(i2c_gpio12_devs));
 
+       s3c_hsotg_set_platdata(&universal_hsotg_pdata);
        universal_camera_init();
 
        /* Last */