Some machines with Intel UHD Graphics 620 (8086:5917) such as Dell
Latitude 7490 are unable to wake from sleep. Disable DMC for
Intel UHD Graphics 620.

Link: https://gitlab.freedesktop.org/drm/intel/-/issues/7339
Signed-off-by: Steven 'Steve' Kendall <sk...@google.com>
---
 drivers/gpu/drm/i915/i915_pci.c | 14 ++++++++++++++
 include/drm/i915_pciids.h       |  6 +++++-
 2 files changed, 19 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/i915_pci.c b/drivers/gpu/drm/i915/i915_pci.c
index cd4487a1d3be..ea148be46b14 100644
--- a/drivers/gpu/drm/i915/i915_pci.c
+++ b/drivers/gpu/drm/i915/i915_pci.c
@@ -697,6 +697,10 @@ static const struct intel_device_info skl_gt4_info = {
        .gt = 4,
 };
 
+#define GEN9_DMCLESS_FEATURES \
+       GEN9_FEATURES, \
+       .__runtime.has_dmc = 0
+
 #define GEN9_LP_FEATURES \
        GEN(9), \
        .is_lp = 1, \
@@ -753,6 +757,10 @@ static const struct intel_device_info glk_info = {
        GEN9_FEATURES, \
        PLATFORM(INTEL_KABYLAKE)
 
+#define KBL_DMCLESS_PLATFORM \
+       GEN9_DMCLESS_FEATURES, \
+       PLATFORM(INTEL_KABYLAKE)
+
 static const struct intel_device_info kbl_gt1_info = {
        KBL_PLATFORM,
        .gt = 1,
@@ -763,6 +771,11 @@ static const struct intel_device_info kbl_gt2_info = {
        .gt = 2,
 };
 
+static const struct intel_device_info dmcless_kbl_gt2_info = {
+       KBL_DMCLESS_PLATFORM,
+       .gt = 2,
+};
+
 static const struct intel_device_info kbl_gt3_info = {
        KBL_PLATFORM,
        .gt = 3,
@@ -1202,6 +1215,7 @@ static const struct pci_device_id pciidlist[] = {
        INTEL_GLK_IDS(&glk_info),
        INTEL_KBL_GT1_IDS(&kbl_gt1_info),
        INTEL_KBL_GT2_IDS(&kbl_gt2_info),
+       DMCLESS_INTEL_KBL_GT2_IDS(&dmcless_kbl_gt2_info),
        INTEL_KBL_GT3_IDS(&kbl_gt3_info),
        INTEL_KBL_GT4_IDS(&kbl_gt3_info),
        INTEL_AML_KBL_GT2_IDS(&kbl_gt2_info),
diff --git a/include/drm/i915_pciids.h b/include/drm/i915_pciids.h
index 4a4c190f7698..93bea60772ff 100644
--- a/include/drm/i915_pciids.h
+++ b/include/drm/i915_pciids.h
@@ -420,11 +420,15 @@
        INTEL_KBL_ULT_GT2_IDS(info), \
        INTEL_KBL_ULX_GT2_IDS(info), \
        INTEL_VGA_DEVICE(0x5912, info), /* DT  GT2 */ \
-       INTEL_VGA_DEVICE(0x5917, info), /* Mobile GT2 */ \
        INTEL_VGA_DEVICE(0x591A, info), /* SRV GT2 */ \
        INTEL_VGA_DEVICE(0x591B, info), /* Halo GT2 */ \
        INTEL_VGA_DEVICE(0x591D, info) /* WKS GT2 */
 
+#define DMCLESS_INTEL_KBL_GT2_IDS(info) \
+       INTEL_KBL_ULT_GT2_IDS(info), \
+       INTEL_KBL_ULX_GT2_IDS(info), \
+       INTEL_VGA_DEVICE(0x5917, info) /* Mobile GT2 */
+
 #define INTEL_KBL_ULT_GT3_IDS(info) \
        INTEL_VGA_DEVICE(0x5926, info) /* ULT GT3 */
 
-- 
2.38.1.431.g37b22c650d-goog

Reply via email to