Skip to content

Commit 9268a3d

Browse files
committed
Add ARL-HX CPU, MCH, and PCH IDs
1 parent ac4d5be commit 9268a3d

File tree

9 files changed

+109
-12
lines changed

9 files changed

+109
-12
lines changed

src/include/cpu/intel/cpu_ids.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -83,6 +83,8 @@
8383
#define CPUID_LUNARLAKE_A0_1 0xb06d0
8484
#define CPUID_LUNARLAKE_A0_2 0xb06d1
8585
#define CPUID_ARROWLAKE_H_A0 0xc0652
86+
#define CPUID_ARROWLAKE_S_A0 0xc0660
87+
#define CPUID_ARROWLAKE_S_B0 0xc0662
8688
#define CPUID_PANTHERLAKE_A0 0xc06c0
8789
#define CPUID_SNOWRIDGE_A0 0x80660
8890
#define CPUID_SNOWRIDGE_A1 0x80661

src/include/device/pci_ids.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4403,6 +4403,7 @@
44034403
#define PCI_DID_INTEL_MTL_P_GT2_4 0x7d60
44044404
#define PCI_DID_INTEL_MTL_P_GT2_5 0x7dd5
44054405
#define PCI_DID_INTEL_ARL_H_GT2 0x7d51
4406+
#define PCI_DID_INTEL_ARL_HX_GT2 0x7d67
44064407
#define PCI_DID_INTEL_RPL_HX_GT1 0xa788
44074408
#define PCI_DID_INTEL_RPL_HX_GT2 0xa78b
44084409
#define PCI_DID_INTEL_RPL_HX_GT3 0x4688
@@ -4549,6 +4550,9 @@
45494550
#define PCI_DID_INTEL_MTL_P_ID_5 0x7d16
45504551
#define PCI_DID_INTEL_ARL_H_ID_1 0x7d06
45514552
#define PCI_DID_INTEL_ARL_H_ID_2 0x7d20
4553+
#define PCI_DID_INTEL_ARL_HX_ID_1 0x7d1c
4554+
#define PCI_DID_INTEL_ARL_HX_ID_2 0x7d2d
4555+
#define PCI_DID_INTEL_ARL_HX_ID_3 0x7d2f
45524556
#define PCI_DID_INTEL_RPL_HX_ID_1 0xa702
45534557
#define PCI_DID_INTEL_RPL_HX_ID_2 0xa729
45544558
#define PCI_DID_INTEL_RPL_HX_ID_3 0xa728

src/soc/intel/common/block/cpu/mp_init.c

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,8 @@ static const struct cpu_device_id cpu_table[] = {
4040
{ X86_VENDOR_INTEL, CPUID_METEORLAKE_B0, CPUID_EXACT_MATCH_MASK },
4141
{ X86_VENDOR_INTEL, CPUID_METEORLAKE_C0, CPUID_EXACT_MATCH_MASK },
4242
{ X86_VENDOR_INTEL, CPUID_ARROWLAKE_H_A0, CPUID_EXACT_MATCH_MASK },
43+
{ X86_VENDOR_INTEL, CPUID_ARROWLAKE_S_A0, CPUID_EXACT_MATCH_MASK },
44+
{ X86_VENDOR_INTEL, CPUID_ARROWLAKE_S_B0, CPUID_EXACT_MATCH_MASK },
4345
{ X86_VENDOR_INTEL, CPUID_SKYLAKE_C0, CPUID_EXACT_MATCH_MASK },
4446
{ X86_VENDOR_INTEL, CPUID_SKYLAKE_D0, CPUID_EXACT_MATCH_MASK },
4547
{ X86_VENDOR_INTEL, CPUID_SKYLAKE_HQ0, CPUID_EXACT_MATCH_MASK },

src/soc/intel/common/block/graphics/graphics.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -364,6 +364,7 @@ static const unsigned short pci_device_ids[] = {
364364
PCI_DID_INTEL_MTL_P_GT2_4,
365365
PCI_DID_INTEL_MTL_P_GT2_5,
366366
PCI_DID_INTEL_ARL_H_GT2,
367+
PCI_DID_INTEL_ARL_HX_GT2,
367368
PCI_DID_INTEL_APL_IGD_HD_505,
368369
PCI_DID_INTEL_APL_IGD_HD_500,
369370
PCI_DID_INTEL_CNL_GT2_ULX_1,

src/soc/intel/common/block/systemagent/systemagent.c

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -426,6 +426,9 @@ static const unsigned short systemagent_ids[] = {
426426
PCI_DID_INTEL_MTL_P_ID_5,
427427
PCI_DID_INTEL_ARL_H_ID_1,
428428
PCI_DID_INTEL_ARL_H_ID_2,
429+
PCI_DID_INTEL_ARL_HX_ID_1,
430+
PCI_DID_INTEL_ARL_HX_ID_2,
431+
PCI_DID_INTEL_ARL_HX_ID_3,
429432
PCI_DID_INTEL_GLK_NB,
430433
PCI_DID_INTEL_APL_NB,
431434
PCI_DID_INTEL_CNL_ID_U,

src/soc/intel/meteorlake/Kconfig

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -243,7 +243,7 @@ config MAX_ROOT_PORTS
243243

244244
config MAX_PCIE_CLOCK_SRC
245245
int
246-
default 13 if SOC_INTEL_ARROWLAKE_PCH_S
246+
default 14 if SOC_INTEL_ARROWLAKE_PCH_S
247247
default 9
248248

249249
config SMM_TSEG_SIZE

src/soc/intel/meteorlake/bootblock/report_platform.c

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,8 @@ static struct {
2323
{ CPUID_METEORLAKE_B0, "MeteorLake B0" },
2424
{ CPUID_METEORLAKE_C0, "MeteorLake C0" },
2525
{ CPUID_ARROWLAKE_H_A0, "ArrowLake-H A0" },
26+
{ CPUID_ARROWLAKE_S_A0, "ArrowLake-S A0" },
27+
{ CPUID_ARROWLAKE_S_B0, "ArrowLake-S B0" },
2628
};
2729

2830
static struct {
@@ -37,6 +39,9 @@ static struct {
3739
{ PCI_DID_INTEL_MTL_P_ID_5, "MeteorLake P" },
3840
{ PCI_DID_INTEL_ARL_H_ID_1, "ArrowLake-H" },
3941
{ PCI_DID_INTEL_ARL_H_ID_2, "ArrowLake-H" },
42+
{ PCI_DID_INTEL_ARL_HX_ID_1, "ArrowLake-HX (8+16)" },
43+
{ PCI_DID_INTEL_ARL_HX_ID_2, "ArrowLake-HX (8+12)" },
44+
{ PCI_DID_INTEL_ARL_HX_ID_3, "ArrowLake-HX (6+8)" },
4045
};
4146

4247
static struct {
@@ -52,6 +57,38 @@ static struct {
5257
{ PCI_DID_INTEL_MTL_ESPI_6, "MeteorLake SOC" },
5358
{ PCI_DID_INTEL_MTL_ESPI_7, "MeteorLake SOC" },
5459
{ PCI_DID_INTEL_ARL_H_ESPI, "ArrowLake-H SOC" },
60+
{ PCI_DID_INTEL_ARP_S_ESPI_0, "ArrowLake-S PCH" },
61+
{ PCI_DID_INTEL_ARP_S_ESPI_1, "ArrowLake-S PCH" },
62+
{ PCI_DID_INTEL_ARP_S_ESPI_2, "ArrowLake-S PCH" },
63+
{ PCI_DID_INTEL_ARP_S_ESPI_3, "ArrowLake-S Q870" },
64+
{ PCI_DID_INTEL_ARP_S_ESPI_4, "ArrowLake-S Z890" },
65+
{ PCI_DID_INTEL_ARP_S_ESPI_5, "ArrowLake-S PCH" },
66+
{ PCI_DID_INTEL_ARP_S_ESPI_6, "ArrowLake-S B860" },
67+
{ PCI_DID_INTEL_ARP_S_ESPI_7, "ArrowLake-S H810" },
68+
{ PCI_DID_INTEL_ARP_S_ESPI_8, "ArrowLake-S W880" },
69+
{ PCI_DID_INTEL_ARP_S_ESPI_9, "ArrowLake-S W890" },
70+
{ PCI_DID_INTEL_ARP_S_ESPI_10, "ArrowLake-S PCH" },
71+
{ PCI_DID_INTEL_ARP_S_ESPI_11, "ArrowLake-S PCH" },
72+
{ PCI_DID_INTEL_ARP_S_ESPI_12, "ArrowLake-S HM870" },
73+
{ PCI_DID_INTEL_ARP_S_ESPI_13, "ArrowLake-S WM880" },
74+
{ PCI_DID_INTEL_ARP_S_ESPI_14, "ArrowLake-S PCH" },
75+
{ PCI_DID_INTEL_ARP_S_ESPI_15, "ArrowLake-S PCH" },
76+
{ PCI_DID_INTEL_ARP_S_ESPI_16, "ArrowLake-S PCH" },
77+
{ PCI_DID_INTEL_ARP_S_ESPI_17, "ArrowLake-S PCH" },
78+
{ PCI_DID_INTEL_ARP_S_ESPI_18, "ArrowLake-S PCH" },
79+
{ PCI_DID_INTEL_ARP_S_ESPI_19, "ArrowLake-S PCH" },
80+
{ PCI_DID_INTEL_ARP_S_ESPI_20, "ArrowLake-S PCH" },
81+
{ PCI_DID_INTEL_ARP_S_ESPI_21, "ArrowLake-S PCH" },
82+
{ PCI_DID_INTEL_ARP_S_ESPI_22, "ArrowLake-S PCH" },
83+
{ PCI_DID_INTEL_ARP_S_ESPI_23, "ArrowLake-S PCH" },
84+
{ PCI_DID_INTEL_ARP_S_ESPI_24, "ArrowLake-S PCH" },
85+
{ PCI_DID_INTEL_ARP_S_ESPI_25, "ArrowLake-S PCH" },
86+
{ PCI_DID_INTEL_ARP_S_ESPI_26, "ArrowLake-S PCH" },
87+
{ PCI_DID_INTEL_ARP_S_ESPI_27, "ArrowLake-S PCH" },
88+
{ PCI_DID_INTEL_ARP_S_ESPI_28, "ArrowLake-S PCH" },
89+
{ PCI_DID_INTEL_ARP_S_ESPI_29, "ArrowLake-S PCH" },
90+
{ PCI_DID_INTEL_ARP_S_ESPI_30, "ArrowLake-S PCH" },
91+
{ PCI_DID_INTEL_ARP_S_ESPI_31, "ArrowLake-S PCH" },
5592
};
5693

5794
static struct {
@@ -65,6 +102,7 @@ static struct {
65102
{ PCI_DID_INTEL_MTL_P_GT2_4, "Meteorlake-P GT2" },
66103
{ PCI_DID_INTEL_MTL_P_GT2_5, "Meteorlake-P GT2" },
67104
{ PCI_DID_INTEL_ARL_H_GT2, "ArrowLake-H GT2" },
105+
{ PCI_DID_INTEL_ARL_HX_GT2, "ArrowLake-HX GT2" },
68106
};
69107

70108
static inline uint8_t get_dev_revision(pci_devfn_t dev)

src/soc/intel/meteorlake/chip.h

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,13 +46,17 @@ struct ibecc_config {
4646
enum soc_intel_meteorlake_power_limits {
4747
MTL_P_282_242_CORE,
4848
MTL_P_682_482_CORE,
49+
ARL_HX_8_16_55W_CORE,
50+
ARL_HX_8_12_55W_CORE,
51+
ARL_HX_6_8_55W_CORE,
4952
MTL_POWER_LIMITS_COUNT
5053
};
5154

5255
/* TDP values for different SKUs */
5356
enum soc_intel_meteorlake_cpu_tdps {
5457
TDP_15W = 15,
55-
TDP_28W = 28
58+
TDP_28W = 28,
59+
TDP_55W = 55
5660
};
5761

5862
/* Mapping of different SKUs based on CPU ID and TDP values */
@@ -67,6 +71,9 @@ static const struct {
6771
{ PCI_DID_INTEL_MTL_P_ID_1, MTL_P_682_482_CORE, TDP_28W },
6872
{ PCI_DID_INTEL_ARL_H_ID_1, MTL_P_682_482_CORE, TDP_28W },
6973
{ PCI_DID_INTEL_ARL_H_ID_2, MTL_P_682_482_CORE, TDP_28W },
74+
{ PCI_DID_INTEL_ARL_HX_ID_1, ARL_HX_8_16_55W_CORE, TDP_55W },
75+
{ PCI_DID_INTEL_ARL_HX_ID_2, ARL_HX_8_12_55W_CORE, TDP_55W },
76+
{ PCI_DID_INTEL_ARL_HX_ID_3, ARL_HX_6_8_55W_CORE, TDP_55W },
7077
};
7178

7279
/* Types of display ports */

src/soc/intel/meteorlake/chipset_pch_s.cb

Lines changed: 50 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -2,19 +2,23 @@ chip soc/intel/meteorlake
22

33
device cpu_cluster 0 on end
44

5-
register "power_limits_config[MTL_P_282_242_CORE]" = "{
6-
.tdp_pl1_override = 15,
7-
.tdp_pl2_override = 57,
8-
.tdp_pl4 = 114,
5+
register "power_limits_config[ARL_HX_8_16_55W_CORE]" = "{
6+
.tdp_pl1_override = 55,
7+
.tdp_pl2_override = 160,
8+
.tdp_pl4 = 266,
99
}"
1010

11-
register "power_limits_config[MTL_P_682_482_CORE]" = "{
12-
.tdp_pl1_override = 28,
13-
.tdp_pl2_override = 64,
14-
.tdp_pl4 = 120,
11+
register "power_limits_config[ARL_HX_8_12_55W_CORE]" = "{
12+
.tdp_pl1_override = 55,
13+
.tdp_pl2_override = 144,
14+
.tdp_pl4 = 257,
15+
}"
16+
17+
register "power_limits_config[ARL_HX_6_8_55W_CORE]" = "{
18+
.tdp_pl1_override = 55,
19+
.tdp_pl2_override = 108,
20+
.tdp_pl4 = 204,
1521
}"
16-
17-
#TODO: ARL-HX limits
1822

1923
# Reduce the size of BasicMemoryTests to speed up the boot time.
2024
register "lower_basic_mem_test_size" = "true"
@@ -121,12 +125,48 @@ chip soc/intel/meteorlake
121125
chip drivers/usb/acpi
122126
device usb 2.9 alias usb2_port10 off end
123127
end
128+
chip drivers/usb/acpi
129+
device usb 2.a alias usb2_port11 off end
130+
end
131+
chip drivers/usb/acpi
132+
device usb 2.b alias usb2_port12 off end
133+
end
134+
chip drivers/usb/acpi
135+
device usb 2.c alias usb2_port13 off end
136+
end
137+
chip drivers/usb/acpi
138+
device usb 2.d alias usb2_port14 off end
139+
end
124140
chip drivers/usb/acpi
125141
device usb 3.0 alias usb3_port1 off end
126142
end
127143
chip drivers/usb/acpi
128144
device usb 3.1 alias usb3_port2 off end
129145
end
146+
chip drivers/usb/acpi
147+
device usb 3.2 alias usb3_port3 off end
148+
end
149+
chip drivers/usb/acpi
150+
device usb 3.3 alias usb3_port4 off end
151+
end
152+
chip drivers/usb/acpi
153+
device usb 3.4 alias usb3_port5 off end
154+
end
155+
chip drivers/usb/acpi
156+
device usb 3.5 alias usb3_port6 off end
157+
end
158+
chip drivers/usb/acpi
159+
device usb 3.6 alias usb3_port7 off end
160+
end
161+
chip drivers/usb/acpi
162+
device usb 3.7 alias usb3_port8 off end
163+
end
164+
chip drivers/usb/acpi
165+
device usb 3.8 alias usb3_port9 off end
166+
end
167+
chip drivers/usb/acpi
168+
device usb 3.9 alias usb3_port10 off end
169+
end
130170
end
131171
end
132172
end

0 commit comments

Comments
 (0)