arch/arm/cpu/ixp/npe/npe.c: Fix build warning
[platform/kernel/u-boot.git] / common / usb_hub.c
index 84d0d3f..f35ad95 100644 (file)
@@ -120,7 +120,7 @@ static void usb_hub_power_on(struct usb_hub_device *hub)
        }
 
        /* Wait at least 100 msec for power to become stable */
-       wait_ms(max(pgood_delay, (unsigned)100));
+       mdelay(max(pgood_delay, (unsigned)100));
 }
 
 void usb_hub_reset(void)
@@ -153,22 +153,22 @@ int hub_port_reset(struct usb_device *dev, int port,
                        unsigned short *portstat)
 {
        int tries;
-       struct usb_port_status portsts;
+       ALLOC_CACHE_ALIGN_BUFFER(struct usb_port_status, portsts, 1);
        unsigned short portstatus, portchange;
 
        USB_HUB_PRINTF("hub_port_reset: resetting port %d...\n", port);
        for (tries = 0; tries < MAX_TRIES; tries++) {
 
                usb_set_port_feature(dev, port + 1, USB_PORT_FEAT_RESET);
-               wait_ms(200);
+               mdelay(200);
 
-               if (usb_get_port_status(dev, port + 1, &portsts) < 0) {
+               if (usb_get_port_status(dev, port + 1, portsts) < 0) {
                        USB_HUB_PRINTF("get_port_status failed status %lX\n",
                                        dev->status);
                        return -1;
                }
-               portstatus = le16_to_cpu(portsts.wPortStatus);
-               portchange = le16_to_cpu(portsts.wPortChange);
+               portstatus = le16_to_cpu(portsts->wPortStatus);
+               portchange = le16_to_cpu(portsts->wPortChange);
 
                USB_HUB_PRINTF("portstatus %x, change %x, %s\n",
                                portstatus, portchange,
@@ -187,7 +187,7 @@ int hub_port_reset(struct usb_device *dev, int port,
                if (portstatus & USB_PORT_STAT_ENABLE)
                        break;
 
-               wait_ms(200);
+               mdelay(200);
        }
 
        if (tries == MAX_TRIES) {
@@ -206,19 +206,19 @@ int hub_port_reset(struct usb_device *dev, int port,
 void usb_hub_port_connect_change(struct usb_device *dev, int port)
 {
        struct usb_device *usb;
-       struct usb_port_status portsts;
+       ALLOC_CACHE_ALIGN_BUFFER(struct usb_port_status, portsts, 1);
        unsigned short portstatus;
 
        /* Check status */
-       if (usb_get_port_status(dev, port + 1, &portsts) < 0) {
+       if (usb_get_port_status(dev, port + 1, portsts) < 0) {
                USB_HUB_PRINTF("get_port_status failed\n");
                return;
        }
 
-       portstatus = le16_to_cpu(portsts.wPortStatus);
+       portstatus = le16_to_cpu(portsts->wPortStatus);
        USB_HUB_PRINTF("portstatus %x, change %x, %s\n",
                        portstatus,
-                       le16_to_cpu(portsts.wPortChange),
+                       le16_to_cpu(portsts->wPortChange),
                        portspeed(portstatus));
 
        /* Clear the connection change status */
@@ -232,7 +232,7 @@ void usb_hub_port_connect_change(struct usb_device *dev, int port)
                if (!(portstatus & USB_PORT_STAT_CONNECTION))
                        return;
        }
-       wait_ms(200);
+       mdelay(200);
 
        /* Reset the port */
        if (hub_port_reset(dev, port, &portstatus) < 0) {
@@ -240,7 +240,7 @@ void usb_hub_port_connect_change(struct usb_device *dev, int port)
                return;
        }
 
-       wait_ms(200);
+       mdelay(200);
 
        /* Allocate a new device struct for it */
        usb = usb_alloc_new_device();
@@ -267,7 +267,8 @@ void usb_hub_port_connect_change(struct usb_device *dev, int port)
 static int usb_hub_configure(struct usb_device *dev)
 {
        int i;
-       unsigned char buffer[USB_BUFSIZ], *bitmap;
+       ALLOC_CACHE_ALIGN_BUFFER(unsigned char, buffer, USB_BUFSIZ);
+       unsigned char *bitmap;
        struct usb_hub_descriptor *descriptor;
        struct usb_hub_device *hub;
 #ifdef USB_HUB_DEBUG
@@ -389,16 +390,16 @@ static int usb_hub_configure(struct usb_device *dev)
        usb_hub_power_on(hub);
 
        for (i = 0; i < dev->maxchild; i++) {
-               struct usb_port_status portsts;
+               ALLOC_CACHE_ALIGN_BUFFER(struct usb_port_status, portsts, 1);
                unsigned short portstatus, portchange;
 
-               if (usb_get_port_status(dev, i + 1, &portsts) < 0) {
+               if (usb_get_port_status(dev, i + 1, portsts) < 0) {
                        USB_HUB_PRINTF("get_port_status failed\n");
                        continue;
                }
 
-               portstatus = le16_to_cpu(portsts.wPortStatus);
-               portchange = le16_to_cpu(portsts.wPortChange);
+               portstatus = le16_to_cpu(portsts->wPortStatus);
+               portchange = le16_to_cpu(portsts->wPortChange);
                USB_HUB_PRINTF("Port %d Status %X Change %X\n",
                                i + 1, portstatus, portchange);