If the function platform_get_irq() failed, the negative value
returned will not be detected here. So fix error handling in
tegra_ehci_probe().

Fixes: 79ad3b5add4a ("usb: host: Add EHCI driver for NVIDIA Tegra SoCs")
Signed-off-by: Tang Bin <tang...@cmss.chinamobile.com>
---
 drivers/usb/host/ehci-tegra.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/usb/host/ehci-tegra.c b/drivers/usb/host/ehci-tegra.c
index 75a075daf..7b0efaf15 100644
--- a/drivers/usb/host/ehci-tegra.c
+++ b/drivers/usb/host/ehci-tegra.c
@@ -479,9 +479,9 @@ static int tegra_ehci_probe(struct platform_device *pdev)
        u_phy->otg->host = hcd_to_bus(hcd);
 
        irq = platform_get_irq(pdev, 0);
-       if (!irq) {
-               err = -ENODEV;
-               goto cleanup_phy;
+       if (irq < 0) {
+               err = irq;
+               goto cleanup_phy;
        }
 
        otg_set_host(u_phy->otg, &hcd->self);
-- 
2.20.1.windows.1



Reply via email to