From: Yoshihiro Shimoda Date: Tue, 10 Apr 2018 05:38:53 +0000 (+0900) Subject: usb: gadget: udc: renesas_usb3: should fail if devm_phy_get() returns error X-Git-Tag: Ubuntu-4.15.0-35.38~165 X-Git-Url: https://git.proxmox.com/?a=commitdiff_plain;h=0899b15caa9c9ad75ca80a1eeaddbf0260377c8b;p=mirror_ubuntu-bionic-kernel.git usb: gadget: udc: renesas_usb3: should fail if devm_phy_get() returns error BugLink: http://bugs.launchpad.net/bugs/1790188 commit 0259068f63f23a665ded28647f2f9cdb6b20dc72 upstream. 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 Fixes: 279d4bc64060 ("usb: gadget: udc: renesas_usb3: add support for generic phy") Cc: # v4.15+ Reviewed-by: Simon Horman Signed-off-by: Yoshihiro Shimoda Signed-off-by: Felipe Balbi Signed-off-by: Greg Kroah-Hartman Signed-off-by: Kamal Mostafa Signed-off-by: Kleber Sacilotto de Souza --- diff --git a/drivers/usb/gadget/udc/renesas_usb3.c b/drivers/usb/gadget/udc/renesas_usb3.c index 1fc96d9bb5af..5caf78bbbf7c 100644 --- a/drivers/usb/gadget/udc/renesas_usb3.c +++ b/drivers/usb/gadget/udc/renesas_usb3.c @@ -2643,9 +2643,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);