[ARM] pxa/em-x270: fix usb hub power up/reset sequence
authorIgor Grinberg <grinberg@compulab.co.il>
Sun, 6 Dec 2009 13:45:43 +0000 (15:45 +0200)
committerEric Miao <eric.y.miao@gmail.com>
Sun, 13 Dec 2009 13:42:57 +0000 (21:42 +0800)
Signed-off-by: Igor Grinberg <grinberg@compulab.co.il>
Signed-off-by: Mike Rapoport <mike@compulab.co.il>
Signed-off-by: Eric Miao <eric.y.miao@gmail.com>
arch/arm/mach-pxa/em-x270.c

index 1c0de808b54d456e9c780146efc26b2168e0a85f..c8a01bc85fdefe2452e9acb74ad590a05953831d 100644 (file)
@@ -497,16 +497,15 @@ static int em_x270_usb_hub_init(void)
                goto err_free_vbus_gpio;
 
        /* USB Hub power-on and reset */
-       gpio_direction_output(usb_hub_reset, 0);
+       gpio_direction_output(usb_hub_reset, 1);
+       gpio_direction_output(GPIO9_USB_VBUS_EN, 0);
        regulator_enable(em_x270_usb_ldo);
-       gpio_set_value(usb_hub_reset, 1);
        gpio_set_value(usb_hub_reset, 0);
+       gpio_set_value(usb_hub_reset, 1);
        regulator_disable(em_x270_usb_ldo);
        regulator_enable(em_x270_usb_ldo);
-       gpio_set_value(usb_hub_reset, 1);
-
-       /* enable VBUS */
-       gpio_direction_output(GPIO9_USB_VBUS_EN, 1);
+       gpio_set_value(usb_hub_reset, 0);
+       gpio_set_value(GPIO9_USB_VBUS_EN, 1);
 
        return 0;