diff options
Diffstat (limited to 'drivers/usb/host/ehci-msm.c')
| -rw-r--r-- | drivers/usb/host/ehci-msm.c | 13 | 
1 files changed, 4 insertions, 9 deletions
diff --git a/drivers/usb/host/ehci-msm.c b/drivers/usb/host/ehci-msm.c index 17dd9e94001..4af4dc5b618 100644 --- a/drivers/usb/host/ehci-msm.c +++ b/drivers/usb/host/ehci-msm.c @@ -133,7 +133,7 @@ static int ehci_msm_probe(struct platform_device *pdev)  	hcd->rsrc_start = res->start;  	hcd->rsrc_len = resource_size(res); -	hcd->regs = ioremap(hcd->rsrc_start, hcd->rsrc_len); +	hcd->regs = devm_ioremap(&pdev->dev, hcd->rsrc_start, hcd->rsrc_len);  	if (!hcd->regs) {  		dev_err(&pdev->dev, "ioremap failed\n");  		ret = -ENOMEM; @@ -145,17 +145,17 @@ static int ehci_msm_probe(struct platform_device *pdev)  	 * powering up VBUS, mapping of registers address space and power  	 * management.  	 */ -	phy = usb_get_phy(USB_PHY_TYPE_USB2); +	phy = devm_usb_get_phy(&pdev->dev, USB_PHY_TYPE_USB2);  	if (IS_ERR_OR_NULL(phy)) {  		dev_err(&pdev->dev, "unable to find transceiver\n");  		ret = -ENODEV; -		goto unmap; +		goto put_hcd;  	}  	ret = otg_set_host(phy->otg, &hcd->self);  	if (ret < 0) {  		dev_err(&pdev->dev, "unable to register with transceiver\n"); -		goto put_transceiver; +		goto put_hcd;  	}  	device_init_wakeup(&pdev->dev, 1); @@ -168,10 +168,6 @@ static int ehci_msm_probe(struct platform_device *pdev)  	return 0; -put_transceiver: -	usb_put_phy(phy); -unmap: -	iounmap(hcd->regs);  put_hcd:  	usb_put_hcd(hcd); @@ -187,7 +183,6 @@ static int __devexit ehci_msm_remove(struct platform_device *pdev)  	pm_runtime_set_suspended(&pdev->dev);  	otg_set_host(phy->otg, NULL); -	usb_put_phy(phy);  	usb_put_hcd(hcd);  |