On Tue, Apr 10, 2018 at 02:38:53PM +0900, Yoshihiro Shimoda wrote: > This patch fixes an issue that this driver ignores errors other than > the non-existence of the device, f.e. a memory allocation failure > in devm_phy_get(). So, this patch replaces devm_phy_get() with > devm_phy_optional_get(). > > Reported-by: Simon Horman <horms+renesas@xxxxxxxxxxxx> > Fixes: 279d4bc64060 ("usb: gadget: udc: renesas_usb3: add support for generic phy") > Cc: <stable@xxxxxxxxxxxxxxx> # v4.15+ > Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@xxxxxxxxxxx> Reviewed-by: Simon Horman <horms+renesas@xxxxxxxxxxxx> > --- > Remarks: > - A new file in v2 > > drivers/usb/gadget/udc/renesas_usb3.c | 8 +++++--- > 1 file changed, 5 insertions(+), 3 deletions(-) > > diff --git a/drivers/usb/gadget/udc/renesas_usb3.c b/drivers/usb/gadget/udc/renesas_usb3.c > index 233bc04..0e70163 100644 > --- a/drivers/usb/gadget/udc/renesas_usb3.c > +++ b/drivers/usb/gadget/udc/renesas_usb3.c > @@ -2636,9 +2636,11 @@ static int renesas_usb3_probe(struct platform_device *pdev) > * This is optional. So, if this driver cannot get a phy, > * this driver will not handle a phy anymore. > */ > - usb3->phy = devm_phy_get(&pdev->dev, "usb"); > - if (IS_ERR(usb3->phy)) > - usb3->phy = NULL; > + usb3->phy = devm_phy_optional_get(&pdev->dev, "usb"); > + if (IS_ERR(usb3->phy)) { > + ret = PTR_ERR(usb3->phy); > + goto err_add_udc; > + } > > pm_runtime_enable(&pdev->dev); > ret = usb_add_gadget_udc(&pdev->dev, &usb3->gadget); > -- > 1.9.1 >