summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--drivers/gpu/drm/imx/imx-ldb.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/gpu/drm/imx/imx-ldb.c b/drivers/gpu/drm/imx/imx-ldb.c
index bbe111e7d00f..cfb3f02f1a68 100644
--- a/drivers/gpu/drm/imx/imx-ldb.c
+++ b/drivers/gpu/drm/imx/imx-ldb.c
@@ -1291,6 +1291,8 @@ static void imx_ldb_unbind(struct device *dev, struct device *master,
kfree(channel->edid);
i2c_put_adapter(channel->ddc);
}
+
+ dev_set_drvdata(dev, NULL);
}
static const struct component_ops imx_ldb_ops = {
@@ -1316,6 +1318,9 @@ static int imx_ldb_suspend(struct device *dev)
struct imx_ldb_channel *channel;
int i;
+ if (imx_ldb == NULL)
+ return 0;
+
for (i = 0; i < 2; i++) {
channel = &imx_ldb->channel[i];
@@ -1333,6 +1338,9 @@ static int imx_ldb_resume(struct device *dev)
struct imx_ldb *imx_ldb = dev_get_drvdata(dev);
int i;
+ if (imx_ldb == NULL)
+ return 0;
+
if (imx_ldb->visible_phy)
for (i = 0; i < 2; i++)
phy_init(imx_ldb->channel[i].phy);