usb: dwc3: core: memory ordering fix in close
[pandora-kernel.git] / drivers / usb / dwc3 / core.c
index c34452a..08a5738 100644 (file)
@@ -99,6 +99,7 @@ void dwc3_put_device_id(int id)
 
        ret = test_bit(id, dwc3_devs);
        WARN(!ret, "dwc3: ID %d not in use\n", id);
+       smp_mb__before_clear_bit();
        clear_bit(id, dwc3_devs);
 }
 EXPORT_SYMBOL_GPL(dwc3_put_device_id);
@@ -459,7 +460,7 @@ static int __devinit dwc3_probe(struct platform_device *pdev)
                return -ENOMEM;
        }
 
-       regs = devm_ioremap(dev, res->start, resource_size(res));
+       regs = devm_ioremap_nocache(dev, res->start, resource_size(res));
        if (!regs) {
                dev_err(dev, "ioremap failed\n");
                return -ENOMEM;