arm: bcmbca: remove bcm6858 support under CONFIG_ARCH_BCM6858
[platform/kernel/u-boot.git] / common / usb_hub.c
index 3d856e7..95f1449 100644 (file)
@@ -47,6 +47,8 @@
 #define HUB_SHORT_RESET_TIME   20
 #define HUB_LONG_RESET_TIME    200
 
+#define HUB_DEBOUNCE_TIMEOUT   1000
+
 #define PORT_OVERCURRENT_MAX_SCAN_COUNT                3
 
 struct usb_device_scan {
@@ -144,7 +146,8 @@ int usb_get_port_status(struct usb_device *dev, int port, void *data)
 
        if (!usb_hub_is_root_hub(dev->dev) && usb_hub_is_superspeed(dev)) {
                struct usb_port_status *status = (struct usb_port_status *)data;
-               u16 tmp = (status->wPortStatus) & USB_SS_PORT_STAT_MASK;
+               u16 tmp = le16_to_cpu(status->wPortStatus) &
+                       USB_SS_PORT_STAT_MASK;
 
                if (status->wPortStatus & USB_SS_PORT_STAT_POWER)
                        tmp |= USB_PORT_STAT_POWER;
@@ -152,7 +155,7 @@ int usb_get_port_status(struct usb_device *dev, int port, void *data)
                    USB_SS_PORT_STAT_SPEED_5GBPS)
                        tmp |= USB_PORT_STAT_SUPER_SPEED;
 
-               status->wPortStatus = tmp;
+               status->wPortStatus = cpu_to_le16(tmp);
        }
 #endif
 
@@ -165,7 +168,7 @@ static void usb_hub_power_on(struct usb_hub_device *hub)
        int i;
        struct usb_device *dev;
        unsigned pgood_delay = hub->desc.bPwrOn2PwrGood * 2;
-       const char *env;
+       const char __maybe_unused *env;
 
        dev = hub->pusb_dev;
 
@@ -190,10 +193,12 @@ static void usb_hub_power_on(struct usb_hub_device *hub)
         * but allow this time to be increased via env variable as some
         * devices break the spec and require longer warm-up times
         */
+#if CONFIG_IS_ENABLED(ENV_SUPPORT)
        env = env_get("usb_pgood_delay");
        if (env)
                pgood_delay = max(pgood_delay,
                                  (unsigned)simple_strtol(env, NULL, 0));
+#endif
        debug("pgood_delay=%dms\n", pgood_delay);
 
        /*
@@ -207,10 +212,10 @@ static void usb_hub_power_on(struct usb_hub_device *hub)
         * will be done based on this value in the USB port loop in
         * usb_hub_configure() later.
         */
-       hub->connect_timeout = hub->query_delay + 1000;
+       hub->connect_timeout = hub->query_delay + HUB_DEBOUNCE_TIMEOUT;
        debug("devnum=%d poweron: query_delay=%d connect_timeout=%d\n",
              dev->devnum, max(100, (int)pgood_delay),
-             max(100, (int)pgood_delay) + 1000);
+             max(100, (int)pgood_delay) + HUB_DEBOUNCE_TIMEOUT);
 }
 
 #if !CONFIG_IS_ENABLED(DM_USB)