Commit 6b0e284c authored by benjamin.gaignard@linaro.org's avatar benjamin.gaignard@linaro.org Committed by Benjamin Gaignard

drm/bridge: make drm_panel_bridge_remove more robust

Make sure that bridge parameter is not NULL and can be safely
cast into a panel_bridge structure.
Signed-off-by: default avatarBenjamin Gaignard <benjamin.gaignard@linaro.org>
Reviewed-by: default avatarPhilippe Cornu <philippe.cornu@st.com>
Tested-by: default avatarPhilippe Cornu <philippe.cornu@st.com>
Link: https://patchwork.freedesktop.org/patch/msgid/1506936755-23625-2-git-send-email-benjamin.gaignard@linaro.org
parent f8e0731d
...@@ -188,7 +188,15 @@ EXPORT_SYMBOL(drm_panel_bridge_add); ...@@ -188,7 +188,15 @@ EXPORT_SYMBOL(drm_panel_bridge_add);
*/ */
void drm_panel_bridge_remove(struct drm_bridge *bridge) void drm_panel_bridge_remove(struct drm_bridge *bridge)
{ {
struct panel_bridge *panel_bridge = drm_bridge_to_panel_bridge(bridge); struct panel_bridge *panel_bridge;
if (!bridge)
return;
if (bridge->funcs != &panel_bridge_bridge_funcs)
return;
panel_bridge = drm_bridge_to_panel_bridge(bridge);
drm_bridge_remove(bridge); drm_bridge_remove(bridge);
devm_kfree(panel_bridge->panel->dev, bridge); devm_kfree(panel_bridge->panel->dev, bridge);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment