diff options
author | Vladimir Zapolskiy <vz@mleia.com> | 2016-04-25 20:53:31 (GMT) |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2016-04-26 21:50:02 (GMT) |
commit | 97b9b7dc7722dc78d46046fc7a0dd0264832327f (patch) | |
tree | f4ce1389ae6fefe5a3c5e51b364a87955ab3e732 | |
parent | f551e13529833e052f75ec628a8af7b034af20f9 (diff) | |
download | linux-97b9b7dc7722dc78d46046fc7a0dd0264832327f.tar.xz |
usb: musb: jz4740: fix error check of usb_get_phy()
The usb_get_phy() function returns either a valid pointer to phy or
ERR_PTR() error, check for NULL always fails and may lead to oops on
error path, fix this issue.
Signed-off-by: Vladimir Zapolskiy <vz@mleia.com>
Signed-off-by: Bin Liu <b-liu@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r-- | drivers/usb/musb/jz4740.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/usb/musb/jz4740.c b/drivers/usb/musb/jz4740.c index 5e5a8fa..bc88899 100644 --- a/drivers/usb/musb/jz4740.c +++ b/drivers/usb/musb/jz4740.c @@ -83,9 +83,9 @@ static int jz4740_musb_init(struct musb *musb) { usb_phy_generic_register(); musb->xceiv = usb_get_phy(USB_PHY_TYPE_USB2); - if (!musb->xceiv) { + if (IS_ERR(musb->xceiv)) { pr_err("HS UDC: no transceiver configured\n"); - return -ENODEV; + return PTR_ERR(musb->xceiv); } /* Silicon does not implement ConfigData register. |