disp: msm: dp: reset panel object for connector when uninstalled
When panel object for a dp connector is destroyed, the instance of dp_panel in the connector object is made NULL to prevent further panel object dereferences. Change-Id: I63409ab8c470f14cf9c032e373cb0c0872577504 Signed-off-by: Sankeerth Billakanti <sbillaka@codeaurora.org> Signed-off-by: Tatenda Chipeperekwa <tatendac@codeaurora.org>
This commit is contained in:

committed by
Tatenda Chipeperekwa

parent
3630628d0d
commit
be267c80f7
@@ -3069,6 +3069,7 @@ error:
|
|||||||
void dp_panel_put(struct dp_panel *dp_panel)
|
void dp_panel_put(struct dp_panel *dp_panel)
|
||||||
{
|
{
|
||||||
struct dp_panel_private *panel;
|
struct dp_panel_private *panel;
|
||||||
|
struct sde_connector *sde_conn;
|
||||||
|
|
||||||
if (!dp_panel)
|
if (!dp_panel)
|
||||||
return;
|
return;
|
||||||
@@ -3076,5 +3077,9 @@ void dp_panel_put(struct dp_panel *dp_panel)
|
|||||||
panel = container_of(dp_panel, struct dp_panel_private, dp_panel);
|
panel = container_of(dp_panel, struct dp_panel_private, dp_panel);
|
||||||
|
|
||||||
dp_panel_edid_deregister(panel);
|
dp_panel_edid_deregister(panel);
|
||||||
|
sde_conn = to_sde_connector(dp_panel->connector);
|
||||||
|
if (sde_conn)
|
||||||
|
sde_conn->drv_panel = NULL;
|
||||||
|
|
||||||
devm_kfree(panel->dev, panel);
|
devm_kfree(panel->dev, panel);
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user