[PATCH v3 2/2] drm/i915/display: Disable display for iMac's
From: Atharva Tiwari
Date: Tue Feb 03 2026 - 02:35:05 EST
Disable display on iMacs, as they can't do link training
on the internal display.
(tested on iMac20,1)
Reviewed-by: Jani Nikula <jani.nikula@xxxxxxxxx>
Signed-off-by: Atharva Tiwari <atharvatiwarilinuxdev@xxxxxxxxx>
---
.../gpu/drm/i915/display/intel_display_device.c | 14 +++++++++++++-
1 file changed, 13 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/i915/display/intel_display_device.c b/drivers/gpu/drm/i915/display/intel_display_device.c
index 1170afaa8680..b1fec1018d7e 100644
--- a/drivers/gpu/drm/i915/display/intel_display_device.c
+++ b/drivers/gpu/drm/i915/display/intel_display_device.c
@@ -3,6 +3,7 @@
* Copyright © 2023 Intel Corporation
*/
+#include <linux/dmi.h>
#include <linux/pci.h>
#include <drm/drm_color_mgmt.h>
@@ -1435,7 +1436,18 @@ static bool has_no_display(struct pci_dev *pdev)
{}
};
- return pci_match_id(ids, pdev);
+ static const struct dmi_system_id dmi_ids[] = {
+ {
+ .ident = "Apple Inc. iMac",
+ .matches = {
+ DMI_EXACT_MATCH(DMI_BOARD_VENDOR, "Apple Inc."),
+ DMI_MATCH(DMI_PRODUCT_NAME, "iMac"),
+ }
+ },
+ {}
+ };
+
+ return pci_match_id(ids, pdev) || dmi_check_system(dmi_ids);
}
#define INTEL_DISPLAY_DEVICE(_id, _desc) { .devid = (_id), .desc = (_desc) }
--
2.43.0