diff options
author | Lars-Peter Clausen <lars@metafoo.de> | 2011-03-07 02:42:00 -0500 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2011-03-07 15:23:22 -0500 |
commit | e27c3c5c7e0fb107990c7f465a3525312f6d45aa (patch) | |
tree | 697835d843f1310cc670511ad078e1ddd305f0ec /arch/arm/mach-s3c2440/mach-mini2440.c | |
parent | a74022a55e44fe2044ac3660452cafecb300aece (diff) |
ARM: s3c24xx: Switch to common GPIO controlled UDC pullup implementation
Currently all boards using the s3c2410_udc driver use a GPIO to control the
state of the pullup, as a result the same code is reimplemented in each board
This patch changes these boards to use the common implementation for GPIO
controlled pullup in the UDC driver.
Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Acked-by: Vasily Khoruzhick <anarsoul@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'arch/arm/mach-s3c2440/mach-mini2440.c')
-rw-r--r-- | arch/arm/mach-s3c2440/mach-mini2440.c | 24 |
1 files changed, 1 insertions, 23 deletions
diff --git a/arch/arm/mach-s3c2440/mach-mini2440.c b/arch/arm/mach-s3c2440/mach-mini2440.c index f62bb4c793bd..d80f129bca94 100644 --- a/arch/arm/mach-s3c2440/mach-mini2440.c +++ b/arch/arm/mach-s3c2440/mach-mini2440.c | |||
@@ -97,26 +97,8 @@ static struct s3c2410_uartcfg mini2440_uartcfgs[] __initdata = { | |||
97 | 97 | ||
98 | /* USB device UDC support */ | 98 | /* USB device UDC support */ |
99 | 99 | ||
100 | static void mini2440_udc_pullup(enum s3c2410_udc_cmd_e cmd) | ||
101 | { | ||
102 | pr_debug("udc: pullup(%d)\n", cmd); | ||
103 | |||
104 | switch (cmd) { | ||
105 | case S3C2410_UDC_P_ENABLE : | ||
106 | gpio_set_value(S3C2410_GPC(5), 1); | ||
107 | break; | ||
108 | case S3C2410_UDC_P_DISABLE : | ||
109 | gpio_set_value(S3C2410_GPC(5), 0); | ||
110 | break; | ||
111 | case S3C2410_UDC_P_RESET : | ||
112 | break; | ||
113 | default: | ||
114 | break; | ||
115 | } | ||
116 | } | ||
117 | |||
118 | static struct s3c2410_udc_mach_info mini2440_udc_cfg __initdata = { | 100 | static struct s3c2410_udc_mach_info mini2440_udc_cfg __initdata = { |
119 | .udc_command = mini2440_udc_pullup, | 101 | .pullup_pin = S3C2410_GPC(5), |
120 | }; | 102 | }; |
121 | 103 | ||
122 | 104 | ||
@@ -644,10 +626,6 @@ static void __init mini2440_init(void) | |||
644 | s3c2410_gpio_setpin(S3C2410_GPB(1), 0); | 626 | s3c2410_gpio_setpin(S3C2410_GPB(1), 0); |
645 | s3c_gpio_cfgpin(S3C2410_GPB(1), S3C2410_GPIO_INPUT); | 627 | s3c_gpio_cfgpin(S3C2410_GPB(1), S3C2410_GPIO_INPUT); |
646 | 628 | ||
647 | /* Make sure the D+ pullup pin is output */ | ||
648 | WARN_ON(gpio_request(S3C2410_GPC(5), "udc pup")); | ||
649 | gpio_direction_output(S3C2410_GPC(5), 0); | ||
650 | |||
651 | /* mark the key as input, without pullups (there is one on the board) */ | 629 | /* mark the key as input, without pullups (there is one on the board) */ |
652 | for (i = 0; i < ARRAY_SIZE(mini2440_buttons); i++) { | 630 | for (i = 0; i < ARRAY_SIZE(mini2440_buttons); i++) { |
653 | s3c_gpio_setpull(mini2440_buttons[i].gpio, S3C_GPIO_PULL_UP); | 631 | s3c_gpio_setpull(mini2440_buttons[i].gpio, S3C_GPIO_PULL_UP); |