usb: gadget: pch_udc: Fix wrong return value
authorTomoya MORINAGA <tomoya.rohm@gmail.com>
Thu, 12 Jan 2012 02:27:06 +0000 (11:27 +0900)
committerLuis Henriques <luis.henriques@canonical.com>
Mon, 30 Apr 2012 18:15:11 +0000 (19:15 +0100)
BugLink: http://bugs.launchpad.net/bugs/987337

commit c802672cd36cd063bfd54d54c8c34825ab5b2357 upstream.

ISSUE:
If the return value of pch_udc_pcd_init() is False, the return value of
this function is unsettled.
Since pch_udc_pcd_init() always returns 0, there is not actually the issue.

CAUSE:
If pch_udc_pcd_init() is True, the variable, retval, is not set for an
appropriate value.

Signed-off-by: Tomoya MORINAGA <tomoya.rohm@gmail.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Tim Gardner <tim.gardner@canonical.com>

drivers/usb/gadget/pch_udc.c

index 147ec4e..8080780 100644 (file)
@@ -2915,8 +2915,10 @@ static int pch_udc_probe(struct pci_dev *pdev,
        }
        pch_udc = dev;
        /* initialize the hardware */
-       if (pch_udc_pcd_init(dev))
+       if (pch_udc_pcd_init(dev)) {
+               retval = -ENODEV;
                goto finished;
+       }
        if (request_irq(pdev->irq, pch_udc_isr, IRQF_SHARED, KBUILD_MODNAME,
                        dev)) {
                dev_err(&pdev->dev, "%s: request_irq(%d) fail\n", __func__,