From 1d030d294ec7186ee402419a3759291e7b0a198c Mon Sep 17 00:00:00 2001 From: Zhang Yubing Date: Sun, 23 Apr 2023 15:28:25 +0800 Subject: [PATCH] drm/rockchip: dw-dp: notify audio when enable/disable dptx Signed-off-by: Zhang Yubing Change-Id: I61e07cce16f8e0a30e6a67ff508be03a5b249563 --- drivers/gpu/drm/rockchip/dw-dp.c | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/drivers/gpu/drm/rockchip/dw-dp.c b/drivers/gpu/drm/rockchip/dw-dp.c index 66522bfb7e77..1f399982fceb 100644 --- a/drivers/gpu/drm/rockchip/dw-dp.c +++ b/drivers/gpu/drm/rockchip/dw-dp.c @@ -3106,6 +3106,9 @@ static void dw_dp_bridge_atomic_enable(struct drm_bridge *bridge, if (dp->panel) drm_panel_enable(dp->panel); + + extcon_set_state_sync(dp->extcon, EXTCON_DISP_DP, true); + dw_dp_audio_handle_plugged_change(&dp->audio, true); } static void dw_dp_reset(struct dw_dp *dp) @@ -3141,6 +3144,9 @@ static void dw_dp_bridge_atomic_disable(struct drm_bridge *bridge, dw_dp_link_disable(dp); bitmap_zero(dp->sdp_reg_bank, SDP_REG_BANK_SIZE); dw_dp_reset(dp); + + extcon_set_state_sync(dp->extcon, EXTCON_DISP_DP, false); + dw_dp_audio_handle_plugged_change(&dp->audio, false); } static bool dw_dp_detect_dpcd(struct dw_dp *dp) @@ -3200,14 +3206,6 @@ static enum drm_connector_status dw_dp_bridge_detect(struct drm_bridge *bridge) } out: - if (status == connector_status_connected) { - extcon_set_state_sync(dp->extcon, EXTCON_DISP_DP, true); - dw_dp_audio_handle_plugged_change(&dp->audio, true); - } else { - extcon_set_state_sync(dp->extcon, EXTCON_DISP_DP, false); - dw_dp_audio_handle_plugged_change(&dp->audio, false); - } - return status; }