disp: msm: dp: check panel state before accessing dp audio registers

During DP disable, it is possible for audio and display to race
causing the audio to send teardown notification after display driver
has disabled all the clocks. This change adds a check for panel state to
avoid accessing registers during this callback.

Change-Id: I6322726a04745bc6c73338cd33f65cfdbfe42ec7
Signed-off-by: Nisarg Bhavsar <quic_bhavsar@quicinc.com>
このコミットが含まれているのは:
Nisarg Bhavsar
2023-03-07 09:18:13 -08:00
コミット 65925ebbf0
3個のファイルの変更15行の追加2行の削除

ファイルの表示

@@ -3126,6 +3126,15 @@ int dp_panel_sink_crc_enable(struct dp_panel *dp_panel, bool enable)
return rc;
}
bool dp_panel_get_panel_on(struct dp_panel *dp_panel)
{
struct dp_panel_private *panel;
panel = container_of(dp_panel, struct dp_panel_private, dp_panel);
return panel->panel_on;
}
struct dp_panel *dp_panel_get(struct dp_panel_in *in)
{
int rc = 0;
@@ -3204,6 +3213,7 @@ struct dp_panel *dp_panel_get(struct dp_panel_in *in)
dp_panel->get_src_crc = dp_panel_get_src_crc;
dp_panel->get_sink_crc = dp_panel_get_sink_crc;
dp_panel->sink_crc_enable = dp_panel_sink_crc_enable;
dp_panel->get_panel_on = dp_panel_get_panel_on;
sde_conn = to_sde_connector(dp_panel->connector);
sde_conn->drv_panel = dp_panel;