drm/amd/display: Add monitor patch for specific eDP
authorjsg <jsg@openbsd.org>
Mon, 22 Jan 2024 03:03:39 +0000 (03:03 +0000)
committerjsg <jsg@openbsd.org>
Mon, 22 Jan 2024 03:03:39 +0000 (03:03 +0000)
From Ivan Lipski
7fc3d8ea1a675eae9ee57dca894a9c4fb0e0d8b5 in linux-6.6.y/6.6.13
3d71a8726e05a35beb9de394e86ce896d69e563f in mainline linux

sys/dev/pci/drm/amd/display/amdgpu_dm/amdgpu_dm_helpers.c

index b081313..cb0142f 100644 (file)
@@ -63,6 +63,12 @@ static void apply_edid_quirks(struct edid *edid, struct dc_edid_caps *edid_caps)
                DRM_DEBUG_DRIVER("Disabling FAMS on monitor with panel id %X\n", panel_id);
                edid_caps->panel_patch.disable_fams = true;
                break;
+       /* Workaround for some monitors that do not clear DPCD 0x317 if FreeSync is unsupported */
+       case drm_edid_encode_panel_id('A', 'U', 'O', 0xA7AB):
+       case drm_edid_encode_panel_id('A', 'U', 'O', 0xE69B):
+               DRM_DEBUG_DRIVER("Clearing DPCD 0x317 on monitor with panel id %X\n", panel_id);
+               edid_caps->panel_patch.remove_sink_ext_caps = true;
+               break;
        default:
                return;
        }