1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
|
## SPDX-License-Identifier: GPL-2.0-only
config SOC_INTEL_METEORLAKE
bool
select ACPI_INTEL_HARDWARE_SLEEP_VALUES
select ARCH_X86
select BOOT_DEVICE_SUPPORTS_WRITES
select CACHE_MRC_SETTINGS
select CPU_INTEL_COMMON
select CPU_INTEL_COMMON_VOLTAGE
select CPU_INTEL_FIRMWARE_INTERFACE_TABLE
select CPU_SUPPORTS_INTEL_TME
select CPU_SUPPORTS_PM_TIMER_EMULATION
select DEFAULT_SOFTWARE_CONNECTION_MANAGER if MAINBOARD_HAS_CHROMEOS
select DEFAULT_X2APIC_LATE_WORKAROUND
select DISPLAY_FSP_VERSION_INFO_2
select DRIVERS_USB_ACPI
select EDK2_CPU_TIMER_LIB if PAYLOAD_EDK2
select FSP_COMPRESS_FSP_S_LZ4
select FAST_SPI_SUPPORTS_EXT_BIOS_WINDOW
select FSP_M_XIP
select FSP_STATUS_GLOBAL_RESET_REQUIRED_3
select FSP_UGOP_EARLY_SIGN_OF_LIFE if !SOC_INTEL_METEORLAKE_PRE_PRODUCTION_SILICON
select FSP_USES_CB_DEBUG_EVENT_HANDLER
select FSPS_HAS_ARCH_UPD
select GENERIC_GPIO_LIB
select HAVE_DEBUG_RAM_SETUP
select HAVE_FSP_GOP
select HAVE_FSP_LOGO_SUPPORT if RUN_FSP_GOP
select HAVE_HYPERTHREADING
select HAVE_INTEL_COMPLIANCE_TEST_MODE
select HAVE_SMI_HANDLER
select IDT_IN_EVERY_STAGE
select INTEL_DESCRIPTOR_MODE_CAPABLE
select INTEL_GMA_ACPI
select INTEL_GMA_ADD_VBT if RUN_FSP_GOP
select INTEL_GMA_OPREGION_2_1
select INTEL_GMA_VERSION_2
select IOAPIC
select MICROCODE_BLOB_UNDISCLOSED
select MP_SERVICES_PPI_V2
select MRC_CACHE_USING_MRC_VERSION
select MRC_SETTINGS_PROTECT
select PARALLEL_MP_AP_WORK
select PCIE_CLOCK_CONTROL_THROUGH_P2SB
select PLATFORM_USES_FSP2_4 if HAVE_X86_64_SUPPORT
select PLATFORM_USES_FSP2_3 if !HAVE_X86_64_SUPPORT
select PMC_GLOBAL_RESET_ENABLE_LOCK
select SOC_INTEL_COMMON
select SOC_INTEL_COMMON_ACPI_WAKE_SOURCE
select SOC_INTEL_COMMON_BLOCK
select SOC_INTEL_COMMON_BLOCK_ACPI
select SOC_INTEL_COMMON_BLOCK_ACPI_CPPC
select SOC_INTEL_COMMON_BLOCK_ACPI_CPU_HYBRID
select SOC_INTEL_COMMON_BLOCK_ACPI_GPIO
select SOC_INTEL_COMMON_BLOCK_ACPI_LPIT
select SOC_INTEL_COMMON_BLOCK_ACPI_PEP
select SOC_INTEL_COMMON_BLOCK_ACPI_PEP_LPM_REQ
select SOC_INTEL_COMMON_BLOCK_CAR
select SOC_INTEL_COMMON_BLOCK_CHIP_CONFIG
select SOC_INTEL_COMMON_BLOCK_CNVI
select SOC_INTEL_COMMON_BLOCK_CPU
select SOC_INTEL_COMMON_BLOCK_CPU_MPINIT
select SOC_INTEL_COMMON_BLOCK_CPU_SMMRELOCATE
select SOC_INTEL_COMMON_BLOCK_DTT
select SOC_INTEL_COMMON_BLOCK_GPIO_DUAL_ROUTE_SUPPORT
select SOC_INTEL_COMMON_BLOCK_GPIO_IOSTANDBY
select SOC_INTEL_COMMON_BLOCK_GPIO_LOCK_USING_PCR
select SOC_INTEL_COMMON_BLOCK_GPIO_PMODE_4BITS
select SOC_INTEL_COMMON_BLOCK_GSPI_VERSION_2
select SOC_INTEL_COMMON_BLOCK_HDA
select SOC_INTEL_COMMON_BLOCK_HECI1_DISABLE_USING_PMC_IPC
select SOC_INTEL_COMMON_BLOCK_IPU
select SOC_INTEL_COMMON_BLOCK_IOE_P2SB
select SOC_INTEL_COMMON_BLOCK_IRQ
select SOC_INTEL_COMMON_BLOCK_ME_SPEC_18
select SOC_INTEL_COMMON_BLOCK_MEMINIT
select SOC_INTEL_COMMON_BLOCK_PCIE_RTD3
select SOC_INTEL_COMMON_BLOCK_PMC_EPOC
select SOC_INTEL_COMMON_BLOCK_POWER_LIMIT
select SOC_INTEL_COMMON_BLOCK_SA
select SOC_INTEL_COMMON_BLOCK_SMM
select SOC_INTEL_COMMON_BLOCK_SMM_IO_TRAP
select SOC_INTEL_COMMON_BLOCK_SMM_TCO_ENABLE
select SOC_INTEL_COMMON_BLOCK_THERMAL_BEHIND_PMC
select SOC_INTEL_COMMON_BLOCK_XHCI
select SOC_INTEL_COMMON_BLOCK_XHCI_ELOG
select SOC_INTEL_COMMON_BASECODE
select SOC_INTEL_COMMON_BASECODE_RAMTOP
select SOC_INTEL_COMMON_FSP_RESET
select SOC_INTEL_COMMON_PCH_CLIENT
select SOC_INTEL_COMMON_RESET
select SOC_INTEL_COMMON_BLOCK_IOC
select SOC_INTEL_CRASHLOG
select SOC_INTEL_CSE_LITE_PSR if MAINBOARD_HAS_CHROMEOS && SOC_INTEL_CSE_LITE_SKU
select SOC_INTEL_CSE_SEND_EOP_LATE if !MAINBOARD_HAS_CHROMEOS
select SOC_INTEL_CSE_SET_EOP
select SOC_INTEL_IOE_DIE_SUPPORT
select SOC_INTEL_GFX_MBUS_JOIN if MAINBOARD_HAS_CHROMEOS && BMP_LOGO
select SOC_INTEL_GFX_NON_PREFETCHABLE_MMIO
select SOC_INTEL_MEM_MAPPED_PM_CONFIGURATION
select SSE2
select SUPPORT_CPU_UCODE_IN_CBFS
select TME_KEY_REGENERATION_ON_WARM_BOOT
select TSC_MONOTONIC_TIMER
select UDELAY_TSC
select UDK_202302_BINDING
select X86_CLFLUSH_CAR
select X86_INIT_NEED_1_SIPI
select INTEL_KEYLOCKER
help
Intel Meteorlake support. Mainboards should specify the SoC
type using the `SOC_INTEL_METEORLAKE_*` options instead
of selecting this option directly.
config SOC_INTEL_METEORLAKE_U_H
bool
select SOC_INTEL_METEORLAKE
help
Choose this option if your mainboard has a MTL-U (9W or 15W)
or MTL-H (28W or 45W) SoC.
Note, the MTL-U/H-Processor Line offered in a 1-Chip Platform
that includes the Compute, SOC, GT, and IOE tile on the same
package.
config SOC_INTEL_METEORLAKE_S
bool
select SOC_INTEL_METEORLAKE
help
Choose this option if your mainboard has a MTL-S (35W or 65W) SoC.
Note, MTL-S SoC combines Compute, GFX, SoC, IOE and PCH die.
config SOC_INTEL_METEORLAKE_PRE_PRODUCTION_SILICON
bool
default n
help
Choose this option if your mainboard has a Meteor Lake pre-production
silicon. Typically known as engineering samples (like ES). This type
of the silicon are very common for early platform development.
if SOC_INTEL_METEORLAKE
config SOC_INTEL_METEORLAKE_TCSS_USB4_SUPPORT
bool
default y
select SOC_INTEL_COMMON_BLOCK_TCSS
select SOC_INTEL_COMMON_BLOCK_USB4
select SOC_INTEL_COMMON_BLOCK_USB4_PCIE
select SOC_INTEL_COMMON_BLOCK_USB4_XHCI
config METEORLAKE_CAR_ENHANCED_NEM
bool
default y if !INTEL_CAR_NEM
select INTEL_CAR_NEM_ENHANCED
select CAR_HAS_SF_MASKS
select COS_MAPPED_TO_MSB
select CAR_HAS_L3_PROTECTED_WAYS
config MAX_CPUS
int
default 22
config DCACHE_RAM_BASE
default 0xfef00000
config DCACHE_RAM_SIZE
default 0xc0000
help
The size of the cache-as-ram region required during bootblock
and/or romstage.
config DCACHE_BSP_STACK_SIZE
hex
default 0x88000
help
The amount of anticipated stack usage in CAR by bootblock and
other stages. In the case of FSP_USES_CB_STACK default value will be
sum of FSP-M stack requirement(512KiB) and CB romstage stack requirement
(~32KiB).
config FSP_TEMP_RAM_SIZE
hex
default 0x20000
help
The amount of anticipated heap usage in CAR by FSP.
Refer to Platform FSP integration guide document to know
the exact FSP requirement for Heap setup.
config CHIPSET_DEVICETREE
string
default "soc/intel/meteorlake/chipset.cb"
config EXT_BIOS_WIN_BASE
default 0xf8000000
config EXT_BIOS_WIN_SIZE
default 0x2000000
config IFD_CHIPSET
string
default "mtl"
config IED_REGION_SIZE
hex
default 0x400000
# Intel recommends reserving the PCIe TBT root port resources as below:
# - 42 buses
# - 194 MiB Non-prefetchable memory
# - 448 MiB Prefetchable memory
if SOC_INTEL_ENABLE_USB4_PCIE_RESOURCES
config PCIEXP_HOTPLUG_BUSES
int
default 42
config PCIEXP_HOTPLUG_MEM
hex
default 0xc200000
config PCIEXP_HOTPLUG_PREFETCH_MEM
hex
default 0x1c000000
endif # SOC_INTEL_ENABLE_USB4_PCIE_RESOURCES
config MAX_TBT_ROOT_PORTS
int
default 4
config MAX_ROOT_PORTS
int
default 12
config MAX_PCIE_CLOCK_SRC
int
default 9
config SMM_TSEG_SIZE
hex
default 0x800000
config SMM_RESERVED_SIZE
hex
default 0x200000
config PCR_BASE_ADDRESS
hex
default 0xe0000000
help
This option allows you to select MMIO Base Address of sideband bus.
config IOE_PCR_BASE_ADDRESS
hex
default 0x3fff0000000
help
This option allows you to select MMIO Base Address of IOE sideband bus.
config ECAM_MMCONF_BASE_ADDRESS
default 0xc0000000
config SOC_INTEL_PERFORMANCE_CORE_SCALE_FACTOR
int
default 125
config SOC_INTEL_EFFICIENT_CORE_SCALE_FACTOR
int
default 100
config CPU_BCLK_MHZ
int
default 100
config SOC_INTEL_COMMON_BLOCK_GSPI_CLOCK_MHZ
int
default 120
config CPU_XTAL_HZ
default 38400000
config DRIVERS_I2C_DESIGNWARE_CLOCK_MHZ
int
default 133
config SOC_INTEL_COMMON_BLOCK_GSPI_MAX
int
default 3
config SOC_INTEL_I2C_DEV_MAX
int
default 6
config SOC_INTEL_UART_DEV_MAX
int
default 3
config SOC_INTEL_USB2_DEV_MAX
int
default 10
config SOC_INTEL_USB3_DEV_MAX
int
default 2
config CONSOLE_UART_BASE_ADDRESS
hex
default 0xfe02c000
depends on INTEL_LPSS_UART_FOR_CONSOLE
# Clock divider parameters for 115200 baud rate
# Baudrate = (UART source clock * M) /(N *16)
# MTL UART source clock: 100MHz
config SOC_INTEL_COMMON_LPSS_UART_CLK_M_VAL
hex
default 0x25a
config SOC_INTEL_COMMON_LPSS_UART_CLK_N_VAL
hex
default 0x7fff
config VBOOT
select VBOOT_SEPARATE_VERSTAGE
select VBOOT_MUST_REQUEST_DISPLAY
select VBOOT_STARTS_IN_BOOTBLOCK
select VBOOT_VBNV_CMOS
select VBOOT_VBNV_CMOS_BACKUP_TO_FLASH
select VBOOT_X86_SHA256_ACCELERATION
select VBOOT_X86_RSA_ACCELERATION
# Default hash block size is 1KiB. Increasing it to 4KiB to improve
# hashing time as well as read time.
config VBOOT_HASH_BLOCK_SIZE
hex
default 0x1000
config CBFS_SIZE
hex
default 0x200000
config PRERAM_CBMEM_CONSOLE_SIZE
hex
default 0x2000
config CONSOLE_CBMEM_BUFFER_SIZE
hex
default 0x100000 if BUILDING_WITH_DEBUG_FSP
default 0x40000
config FSP_HEADER_PATH
string "Location of FSP headers"
default "src/vendorcode/intel/fsp/fsp2_0/meteorlake/x86_64/" if HAVE_X86_64_SUPPORT
default "src/vendorcode/intel/fsp/fsp2_0/meteorlake/x86_32/"
config FSP_FD_PATH
string
depends on FSP_USE_REPO
default "3rdparty/fsp/MeteorLakeFspBinPkg/Fsp.fd"
# Override platform debug consent value:
# 0:Disabled, 2:Enabled Trace Active, 4:Enabled Trace Ready,
# 6:Enable Trace Power-Off, 7:Manual
config SOC_INTEL_COMMON_DEBUG_CONSENT
int
default 6 if SOC_INTEL_DEBUG_CONSENT
default 2 if SOC_INTEL_COMMON_BLOCK_TRACEHUB
config DATA_BUS_WIDTH
int
default 128
config DIMMS_PER_CHANNEL
int
default 2
config MRC_CHANNEL_WIDTH
int
default 16
config SOC_INTEL_GFX_FRAMEBUFFER_OFFSET
hex
default 0x800000
config FSP_PUBLISH_MBP_HOB
bool
default n if CHROMEOS
default y
help
This is to control creation of ME_BIOS_PAYLOAD_HOB (MBP HOB) by FSP.
Disabling it for the platforms, which do not use MBP HOB, can improve the boot time.
config BUILDING_WITH_DEBUG_FSP
bool "Debug FSP is used for the build"
default n
help
Set this option if debug build of FSP is used.
config DROP_CPU_FEATURE_PROGRAM_IN_FSP
bool
default y if MP_SERVICES_PPI_V2_NOOP || CHROMEOS
default n
help
This is to avoid FSP running basic CPU feature programming on BSP
and on APs using the "CpuFeaturesPei.efi" module. The feature programming
includes enabling x2APIC, MCA, MCE and Turbo etc.
Most of these feature programming are getting performed today in scope
of coreboot doing MP Init. Running these redundant programming in scope
of FSP (when `USE_FSP_FEATURE_PROGRAM_ON_APS` config is enabled) would
results in CPU exception.
SoC users to select this config after dropping "CpuFeaturesPei.ffs" module
from FSP-S Firmware Volume (FV). Upon selection, coreboot runs those additional
feature programming on BSP and APs.
This feature is default enabled, in case of "coreboot running MP init"
aka MP_SERVICES_PPI_V2_NOOP config is selected.
config PCIE_LTR_MAX_SNOOP_LATENCY
hex
default 0x100f
help
Latency tolerance reporting, max snoop latency value defaults to 15.73 ms.
config PCIE_LTR_MAX_NO_SNOOP_LATENCY
hex
default 0x100f
help
Latency tolerance reporting, max non-snoop latency value defaults to 15.73 ms.
config IOE_DIE_CLOCK_START
int
default 6 if SOC_INTEL_METEORLAKE_U_H
config HAVE_BMP_LOGO_COMPRESS_LZMA
default n
# The default offset to store CSE RW FW version information is at 68.
# However, in Intel Meteor Lake based systems that use PSR, the additional
# size required to keep CSE RW FW version information and PSR back-up status
# in adjacent CMOS memory at offset 68 is not available. Therefore, we
# override the default offset to 161, which has enough space to keep both
# the CSE related information together.
config SOC_INTEL_CSE_FW_PARTITION_CMOS_OFFSET
int
default 161
config SOC_INTEL_COMMON_BLOCK_ACPI_SLP_S0_FREQ_HZ
default 0x2005
help
slp_s0_residency granularity in 122us ticks (i.e. ~8.2KHz) in Meteor Lake.
config SOC_PHYSICAL_ADDRESS_WIDTH
int
default 42
endif
|