From: Pin-yen Lin Date: Thu, 26 Sep 2024 09:29:09 +0000 (+0800) Subject: drm/bridge: it6505: Drop EDID cache on bridge power off X-Git-Tag: v6.13-rc1~122^2~21^2~25 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=574c558ddb68591c9a4b7a95e45e935ab22c0fc6;p=thirdparty%2Fkernel%2Flinux.git drm/bridge: it6505: Drop EDID cache on bridge power off The bridge might miss the display change events when it's powered off. This happens when a user changes the external monitor when the system is suspended and the embedded controller doesn't not wake AP up. It's also observed that one DP-to-HDMI bridge doesn't work correctly when there is no EDID read after it is powered on. Drop the cache to force an EDID read after system resume to fix this. Fixes: 11feaef69d0c ("drm/bridge: it6505: Add caching for EDID") Signed-off-by: Pin-yen Lin Reviewed-by: Dmitry Baryshkov Reviewed-by: Douglas Anderson Signed-off-by: Douglas Anderson Link: https://patchwork.freedesktop.org/patch/msgid/20240926092931.3870342-3-treapking@chromium.org --- diff --git a/drivers/gpu/drm/bridge/ite-it6505.c b/drivers/gpu/drm/bridge/ite-it6505.c index f372c05360f2e..7ff17aa14b01e 100644 --- a/drivers/gpu/drm/bridge/ite-it6505.c +++ b/drivers/gpu/drm/bridge/ite-it6505.c @@ -3107,6 +3107,8 @@ static __maybe_unused int it6505_bridge_suspend(struct device *dev) { struct it6505 *it6505 = dev_get_drvdata(dev); + it6505_remove_edid(it6505); + return it6505_poweroff(it6505); }