diff options
Diffstat (limited to 'drivers/gpu/drm/msm/dsi/dsi.c')
| -rw-r--r-- | drivers/gpu/drm/msm/dsi/dsi.c | 7 | 
1 files changed, 6 insertions, 1 deletions
| diff --git a/drivers/gpu/drm/msm/dsi/dsi.c b/drivers/gpu/drm/msm/dsi/dsi.c index 052548883d27..0fe02529b5e7 100644 --- a/drivers/gpu/drm/msm/dsi/dsi.c +++ b/drivers/gpu/drm/msm/dsi/dsi.c @@ -40,7 +40,12 @@ static int dsi_get_phy(struct msm_dsi *msm_dsi)  	of_node_put(phy_node); -	if (!phy_pdev || !msm_dsi->phy) { +	if (!phy_pdev) { +		DRM_DEV_ERROR(&pdev->dev, "%s: phy driver is not ready\n", __func__); +		return -EPROBE_DEFER; +	} +	if (!msm_dsi->phy) { +		put_device(&phy_pdev->dev);  		DRM_DEV_ERROR(&pdev->dev, "%s: phy driver is not ready\n", __func__);  		return -EPROBE_DEFER;  	} |