]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - drivers/usb/musb/musb_dsps.c
Merge branch 'for-linux-next' of git://linux-c6x.org/git/projects/linux-c6x-upstreaming
[karo-tx-linux.git] / drivers / usb / musb / musb_dsps.c
index 84512d1d5eee1583fb057d6f45613f25293dc25b..eeb7d9ecf7df34ea1aa906330f55ba40952f4be1 100644 (file)
@@ -666,7 +666,7 @@ static int get_musb_port_mode(struct device *dev)
 {
        enum usb_dr_mode mode;
 
-       mode = of_usb_get_dr_mode(dev->of_node);
+       mode = usb_get_dr_mode(dev);
        switch (mode) {
        case USB_DR_MODE_HOST:
                return MUSB_PORT_MODE_HOST;
@@ -747,6 +747,19 @@ static int dsps_create_musb_pdev(struct dsps_glue *glue,
        if (!ret && val)
                config->multipoint = true;
 
+       config->maximum_speed = usb_get_maximum_speed(&parent->dev);
+       switch (config->maximum_speed) {
+       case USB_SPEED_LOW:
+       case USB_SPEED_FULL:
+               break;
+       case USB_SPEED_SUPER:
+               dev_warn(dev, "ignore incorrect maximum_speed "
+                               "(super-speed) setting in dts");
+               /* fall through */
+       default:
+               config->maximum_speed = USB_SPEED_HIGH;
+       }
+
        ret = platform_device_add_data(musb, &pdata, sizeof(pdata));
        if (ret) {
                dev_err(dev, "failed to add platform_data\n");