diff --git a/headers/private/graphics/intel_extreme/intel_extreme.h b/headers/private/graphics/intel_extreme/intel_extreme.h index bc58da1a2d..581b59f6cc 100644 --- a/headers/private/graphics/intel_extreme/intel_extreme.h +++ b/headers/private/graphics/intel_extreme/intel_extreme.h @@ -55,6 +55,7 @@ #define INTEL_GROUP_CML (INTEL_FAMILY_LAKE | 0x0080) // CometLake #define INTEL_GROUP_JSL (INTEL_FAMILY_LAKE | 0x0100) // JasperLake #define INTEL_GROUP_TGL (INTEL_FAMILY_LAKE | 0x0200) // TigerLake +#define INTEL_GROUP_ALD (INTEL_FAMILY_LAKE | 0x0400) // AlderLake // models #define INTEL_TYPE_SERVER 0x0004 #define INTEL_TYPE_MOBILE 0x0008 @@ -96,6 +97,7 @@ #define INTEL_MODEL_JSL (INTEL_GROUP_JSL) #define INTEL_MODEL_JSLM (INTEL_GROUP_JSL | INTEL_TYPE_MOBILE) #define INTEL_MODEL_TGLM (INTEL_GROUP_TGL | INTEL_TYPE_MOBILE) +#define INTEL_MODEL_ALDM (INTEL_GROUP_ALD | INTEL_TYPE_MOBILE) #define INTEL_PCH_DEVICE_ID_MASK 0xff80 #define INTEL_PCH_IBX_DEVICE_ID 0x3b00 @@ -124,6 +126,7 @@ #define INTEL_PCH_ADP2_DEVICE_ID 0x5180 #define INTEL_PCH_ADP3_DEVICE_ID 0x7a00 #define INTEL_PCH_ADP4_DEVICE_ID 0x5480 +#define INTEL_PCH_ADP5_DEVICE_ID 0x4600 #define INTEL_PCH_P2X_DEVICE_ID 0x7100 #define INTEL_PCH_P3X_DEVICE_ID 0x7000 @@ -233,7 +236,7 @@ struct DeviceType { return 8; if (InGroup(INTEL_GROUP_JSL)) return 11; - if (InGroup(INTEL_GROUP_TGL)) + if (InGroup(INTEL_GROUP_TGL) || InGroup(INTEL_GROUP_ALD)) return 12; if (InFamily(INTEL_FAMILY_LAKE)) return 9; diff --git a/src/add-ons/kernel/busses/agp_gart/intel_gart.cpp b/src/add-ons/kernel/busses/agp_gart/intel_gart.cpp index 6df0d50963..a833bceb15 100644 --- a/src/add-ons/kernel/busses/agp_gart/intel_gart.cpp +++ b/src/add-ons/kernel/busses/agp_gart/intel_gart.cpp @@ -237,6 +237,9 @@ const struct supported_device { {0x9a36, 0x9a68, INTEL_MODEL_TGLM, "TigerLake-LP GT1"}, {0x9a26, 0x9a60, INTEL_MODEL_TGLM, "TigerLake-LP GT1"}, {0x9a26, 0x9a68, INTEL_MODEL_TGLM, "TigerLake-LP GT1"}, + + {0x4621, 0x46a6, INTEL_MODEL_ALDM, "Alder Lake-P GT2"}, + {0x4621, 0x46d1, INTEL_MODEL_ALDM, "Alder Lake-N GT2"}, }; struct intel_info { diff --git a/src/add-ons/kernel/drivers/graphics/intel_extreme/driver.cpp b/src/add-ons/kernel/drivers/graphics/intel_extreme/driver.cpp index f77168eebc..8f962d536c 100644 --- a/src/add-ons/kernel/drivers/graphics/intel_extreme/driver.cpp +++ b/src/add-ons/kernel/drivers/graphics/intel_extreme/driver.cpp @@ -208,6 +208,10 @@ const struct supported_device { {0x9a60, INTEL_MODEL_TGLM, "TigerLake"}, {0x9a68, INTEL_MODEL_TGLM, "TigerLake"}, {0x9a70, INTEL_MODEL_TGLM, "TigerLake"}, + + {0x46a6, INTEL_MODEL_ALDM, "Alder Lake-P GT2"}, + {0x46d1, INTEL_MODEL_ALDM, "Alder Lake-N"}, + }; int32 api_version = B_CUR_DRIVER_API_VERSION; @@ -323,6 +327,7 @@ detect_intel_pch() case INTEL_PCH_ADP2_DEVICE_ID: case INTEL_PCH_ADP3_DEVICE_ID: case INTEL_PCH_ADP4_DEVICE_ID: + case INTEL_PCH_ADP5_DEVICE_ID: ERROR("%s: Found Alder Lake PCH\n", __func__); return INTEL_PCH_ADP; } diff --git a/src/add-ons/kernel/drivers/graphics/intel_extreme/intel_extreme.cpp b/src/add-ons/kernel/drivers/graphics/intel_extreme/intel_extreme.cpp index 8f8c575ef9..4cdd971f5b 100644 --- a/src/add-ons/kernel/drivers/graphics/intel_extreme/intel_extreme.cpp +++ b/src/add-ons/kernel/drivers/graphics/intel_extreme/intel_extreme.cpp @@ -518,7 +518,7 @@ init_interrupt_handler(intel_info &info) write32(info, GEN11_TBT_HOTPLUG_CTL, 0); if (info.shared_info->pch_info >= INTEL_PCH_ICP) { - if (info.shared_info->pch_info <= INTEL_PCH_TGP) + if (info.shared_info->pch_info <= INTEL_PCH_ADP) write32(info, SHPD_FILTER_CNT, SHPD_FILTER_CNT_500_ADJ); read32(info, SDEIMR); write32(info, SDEIMR, 0x3f023f07);