> 
> diff --git a/drivers/usb/chipidea/ci_hdrc_msm.c
> b/drivers/usb/chipidea/ci_hdrc_msm.c
> index 880009987460..813673eee815 100644
> --- a/drivers/usb/chipidea/ci_hdrc_msm.c
> +++ b/drivers/usb/chipidea/ci_hdrc_msm.c
> @@ -250,6 +250,10 @@ static int ci_hdrc_msm_probe(struct platform_device
> *pdev)
>       ulpi_node = of_get_child_by_name(pdev->dev.of_node, "ulpi");
>       if (ulpi_node) {
>               phy_node = of_get_next_available_child(ulpi_node, NULL);
> +             if (!phy_node) {
> +                     ret = -EINVAL;
> +                     goto err_mux;
> +             }

You may need to call of_node_put(ulpi_node) before goto, I commented it before.

Peter

>               ci->hsic = of_device_is_compatible(phy_node, 
> "qcom,usb-hsic-phy");
>               of_node_put(phy_node);
>       }
> --
> 2.17.1

Reply via email to