aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/usb/musb/blackfin.c8
-rw-r--r--include/linux/usb/musb.h1
2 files changed, 5 insertions, 4 deletions
diff --git a/drivers/usb/musb/blackfin.c b/drivers/usb/musb/blackfin.c
index 7c71eb422a9c..eb4392f904e4 100644
--- a/drivers/usb/musb/blackfin.c
+++ b/drivers/usb/musb/blackfin.c
@@ -238,10 +238,10 @@ static void bfin_vbus_power(struct musb *musb, int is_on, int sleeping)
238 238
239static void bfin_set_vbus(struct musb *musb, int is_on) 239static void bfin_set_vbus(struct musb *musb, int is_on)
240{ 240{
241 if (is_on) 241 int value = musb->config->gpio_vrsel_active;
242 gpio_set_value(musb->config->gpio_vrsel, 1); 242 if (!is_on)
243 else 243 value = !value;
244 gpio_set_value(musb->config->gpio_vrsel, 0); 244 gpio_set_value(musb->config->gpio_vrsel, value);
245 245
246 DBG(1, "VBUS %s, devctl %02x " 246 DBG(1, "VBUS %s, devctl %02x "
247 /* otg %3x conf %08x prcm %08x */ "\n", 247 /* otg %3x conf %08x prcm %08x */ "\n",
diff --git a/include/linux/usb/musb.h b/include/linux/usb/musb.h
index f3d68f62dae8..fbb83fe21851 100644
--- a/include/linux/usb/musb.h
+++ b/include/linux/usb/musb.h
@@ -88,6 +88,7 @@ struct musb_hdrc_config {
88#ifdef CONFIG_BLACKFIN 88#ifdef CONFIG_BLACKFIN
89 /* A GPIO controlling VRSEL in Blackfin */ 89 /* A GPIO controlling VRSEL in Blackfin */
90 unsigned int gpio_vrsel; 90 unsigned int gpio_vrsel;
91 unsigned int gpio_vrsel_active;
91#endif 92#endif
92 93
93}; 94};