summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThierry Reding <treding@nvidia.com>2013-09-03 08:50:39 +0200
committerThierry Reding <treding@nvidia.com>2013-09-03 10:10:11 +0200
commit03c961ba6d04786c8a7e7df118538a01f442e90b (patch)
treeb2f2a2fdce603585275f87a25934bddb8fc7d310
parent745cecc07cee878a5afdda40d13f8b0901a88ebd (diff)
downloadop-kernel-dev-03c961ba6d04786c8a7e7df118538a01f442e90b.zip
op-kernel-dev-03c961ba6d04786c8a7e7df118538a01f442e90b.tar.gz
gpu: host1x: Check for valid host1x pointer
Under rare circumstances it can happen that the host1x driver's .probe() doesn't finish properly, in which case the device's driver-specific data will not be set. Instead of crashing in such a situation, propagate the error to callers of the host1x_get_drm_data() function. Signed-off-by: Thierry Reding <treding@nvidia.com>
-rw-r--r--drivers/gpu/host1x/dev.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/gpu/host1x/dev.c b/drivers/gpu/host1x/dev.c
index 28e28a2..4716302 100644
--- a/drivers/gpu/host1x/dev.c
+++ b/drivers/gpu/host1x/dev.c
@@ -43,7 +43,7 @@ void host1x_set_drm_data(struct device *dev, void *data)
void *host1x_get_drm_data(struct device *dev)
{
struct host1x *host1x = dev_get_drvdata(dev);
- return host1x->drm_data;
+ return host1x ? host1x->drm_data : NULL;
}
void host1x_sync_writel(struct host1x *host1x, u32 v, u32 r)
OpenPOWER on IntegriCloud