summaryrefslogtreecommitdiff
path: root/drivers/usb/gadget/udc/fsl_udc_core.c
diff options
context:
space:
mode:
authorYe Bin <yebin10@huawei.com>2020-08-24 16:42:34 +0800
committerFelipe Balbi <balbi@kernel.org>2020-10-02 09:57:41 +0300
commit87a2dfb136430c914f286e4b9870d538e559df29 (patch)
treef829dd9df8279bcd285cbaac816b9cb427b207c0 /drivers/usb/gadget/udc/fsl_udc_core.c
parent4eea21dc67b0c6ba15ae41b1defa113a680a858e (diff)
usb: gadget: fsl: Fix unsigned expression compared with zero in fsl_udc_probe
udc_controller->irq is "unsigned int" always >= 0, but platform_get_irq may return little than zero. So "dc_controller->irq < 0" condition is never accessible. Acked-by: Li Yang <leoyang.li@nxp.com> Signed-off-by: Ye Bin <yebin10@huawei.com> Signed-off-by: Felipe Balbi <balbi@kernel.org>
Diffstat (limited to 'drivers/usb/gadget/udc/fsl_udc_core.c')
-rw-r--r--drivers/usb/gadget/udc/fsl_udc_core.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/usb/gadget/udc/fsl_udc_core.c b/drivers/usb/gadget/udc/fsl_udc_core.c
index a6f7b2594c09..3e98740b8cfc 100644
--- a/drivers/usb/gadget/udc/fsl_udc_core.c
+++ b/drivers/usb/gadget/udc/fsl_udc_core.c
@@ -2439,11 +2439,12 @@ static int fsl_udc_probe(struct platform_device *pdev)
/* DEN is bidirectional ep number, max_ep doubles the number */
udc_controller->max_ep = (dccparams & DCCPARAMS_DEN_MASK) * 2;
- udc_controller->irq = platform_get_irq(pdev, 0);
- if (udc_controller->irq <= 0) {
- ret = udc_controller->irq ? : -ENODEV;
+ ret = platform_get_irq(pdev, 0);
+ if (ret <= 0) {
+ ret = ret ? : -ENODEV;
goto err_iounmap;
}
+ udc_controller->irq = ret;
ret = request_irq(udc_controller->irq, fsl_udc_irq, IRQF_SHARED,
driver_name, udc_controller);