summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJeffrey Hugo <jeffrey.l.hugo@gmail.com>2019-06-26 11:00:15 -0700
committerSasha Levin <sashal@kernel.org>2019-08-25 10:10:33 -0400
commitf9075dea4a7dce15df92fd5b409d8965b63ecd20 (patch)
tree6416623de1c5ed0202fce742d840d8ae0cde5af2
parentfebe356e3589b1d4f294b6d74d60ae529524e077 (diff)
downloadlinux-stable-f9075dea4a7dce15df92fd5b409d8965b63ecd20.tar.gz
linux-stable-f9075dea4a7dce15df92fd5b409d8965b63ecd20.tar.bz2
linux-stable-f9075dea4a7dce15df92fd5b409d8965b63ecd20.zip
drm: msm: Fix add_gpu_components
[ Upstream commit 9ca7ad6c7706edeae331c1632d0c63897418ebad ] add_gpu_components() adds found GPU nodes from the DT to the match list, regardless of the status of the nodes. This is a problem, because if the nodes are disabled, they should not be on the match list because they will not be matched. This prevents display from initing if a GPU node is defined, but it's status is disabled. Fix this by checking the node's status before adding it to the match list. Fixes: dc3ea265b856 (drm/msm: Drop the gpu binding) Reviewed-by: Rob Clark <robdclark@gmail.com> Signed-off-by: Jeffrey Hugo <jeffrey.l.hugo@gmail.com> Signed-off-by: Sean Paul <seanpaul@chromium.org> Link: https://patchwork.freedesktop.org/patch/msgid/20190626180015.45242-1-jeffrey.l.hugo@gmail.com Signed-off-by: Sasha Levin <sashal@kernel.org>
-rw-r--r--drivers/gpu/drm/msm/msm_drv.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/gpu/drm/msm/msm_drv.c b/drivers/gpu/drm/msm/msm_drv.c
index 4a0fe8a25ad7..a56eef3cfee7 100644
--- a/drivers/gpu/drm/msm/msm_drv.c
+++ b/drivers/gpu/drm/msm/msm_drv.c
@@ -1267,7 +1267,8 @@ static int add_gpu_components(struct device *dev,
if (!np)
return 0;
- drm_of_component_match_add(dev, matchptr, compare_of, np);
+ if (of_device_is_available(np))
+ drm_of_component_match_add(dev, matchptr, compare_of, np);
of_node_put(np);