From d6bc68fa71e5ed26afb5b17e242417230438f9d4 Mon Sep 17 00:00:00 2001 From: Thierry Reding Date: Wed, 3 Apr 2013 21:57:57 +0200 Subject: [PATCH] --- yaml --- r: 364519 b: refs/heads/master c: 369a9a9d2af702bac3ccd2ade86ddcb2594eb3b1 h: refs/heads/master i: 364517: 949f3d85d8238f1a1cb60aa09629a1b0bebbd403 364515: 908ea8c72ffb24fbcb09bd1fda7ec50125f00617 364511: c67b125c0a52a7311137df768d7247c56c3e8acf v: v3 --- [refs] | 2 +- trunk/drivers/usb/host/ehci-tegra.c | 7 +++++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/[refs] b/[refs] index ecf3b0e5698e..4e142154c21f 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: eb5369edca4f4307a6035dc6f6813698b0762906 +refs/heads/master: 369a9a9d2af702bac3ccd2ade86ddcb2594eb3b1 diff --git a/trunk/drivers/usb/host/ehci-tegra.c b/trunk/drivers/usb/host/ehci-tegra.c index 83d190a1cafd..4f3cfb83f862 100644 --- a/trunk/drivers/usb/host/ehci-tegra.c +++ b/trunk/drivers/usb/host/ehci-tegra.c @@ -760,7 +760,7 @@ static int tegra_ehci_probe(struct platform_device *pdev) err = usb_phy_set_suspend(hcd->phy, 0); if (err) { dev_err(&pdev->dev, "Failed to power on the phy\n"); - goto fail; + goto fail_phy; } tegra->host_resumed = 1; @@ -770,7 +770,7 @@ static int tegra_ehci_probe(struct platform_device *pdev) if (!irq) { dev_err(&pdev->dev, "Failed to get IRQ\n"); err = -ENODEV; - goto fail; + goto fail_phy; } #ifdef CONFIG_USB_OTG_UTILS @@ -779,6 +779,8 @@ static int tegra_ehci_probe(struct platform_device *pdev) devm_usb_get_phy(&pdev->dev, USB_PHY_TYPE_USB2); if (!IS_ERR_OR_NULL(tegra->transceiver)) otg_set_host(tegra->transceiver->otg, &hcd->self); + } else { + tegra->transceiver = ERR_PTR(-ENODEV); } #endif @@ -803,6 +805,7 @@ static int tegra_ehci_probe(struct platform_device *pdev) if (!IS_ERR_OR_NULL(tegra->transceiver)) otg_set_host(tegra->transceiver->otg, NULL); #endif +fail_phy: usb_phy_shutdown(hcd->phy); fail_io: clk_disable_unprepare(tegra->clk);