1 ## SPDX-License-Identifier: GPL-2.0-only
3 config SOC_INTEL_TIGERLAKE
5 select ACPI_INTEL_HARDWARE_SLEEP_VALUES
7 select BOOT_DEVICE_SUPPORTS_WRITES
8 select CACHE_MRC_SETTINGS
9 select CPU_INTEL_COMMON
10 select CPU_INTEL_FIRMWARE_INTERFACE_TABLE
11 select CPU_SUPPORTS_INTEL_TME
12 select CPU_SUPPORTS_PM_TIMER_EMULATION
13 select DEFAULT_SOFTWARE_CONNECTION_MANAGER if MAINBOARD_HAS_CHROMEOS
14 select DISPLAY_FSP_VERSION_INFO if !FSP_TYPE_IOT
15 select DRIVERS_USB_ACPI
16 select EDK2_CPU_TIMER_LIB if PAYLOAD_EDK2
17 select FAST_SPI_SUPPORTS_EXT_BIOS_WINDOW
18 select FSP_COMPRESS_FSP_S_LZ4
20 select FSP_STATUS_GLOBAL_RESET_REQUIRED_3
21 select GENERIC_GPIO_LIB
23 select HAVE_HYPERTHREADING
24 select HAVE_INTEL_FSP_REPO
25 select INTEL_DESCRIPTOR_MODE_CAPABLE
26 select HAVE_SMI_HANDLER
27 select IDT_IN_EVERY_STAGE
28 select INTEL_CAR_NEM_ENHANCED if !INTEL_CAR_NEM
29 select CAR_HAS_SF_MASKS if INTEL_CAR_NEM_ENHANCED
30 select COS_MAPPED_TO_MSB if INTEL_CAR_NEM_ENHANCED
31 select SF_MASK_2WAYS_PER_BIT if INTEL_CAR_NEM_ENHANCED
33 select INTEL_GMA_ADD_VBT if RUN_FSP_GOP
34 select INTEL_GMA_VERSION_2
35 select MP_SERVICES_PPI_V1
36 select MRC_SETTINGS_PROTECT
37 select PARALLEL_MP_AP_WORK
38 select PLATFORM_USES_FSP2_2
39 select PMC_GLOBAL_RESET_ENABLE_LOCK
40 select SOC_INTEL_COMMON
41 select SOC_INTEL_COMMON_ACPI_WAKE_SOURCE
42 select SOC_INTEL_COMMON_BLOCK
43 select SOC_INTEL_COMMON_BLOCK_ACPI
44 select SOC_INTEL_COMMON_BLOCK_ACPI_CPPC
45 select SOC_INTEL_COMMON_BLOCK_ACPI_GPIO
46 select SOC_INTEL_COMMON_BLOCK_ACPI_LPIT
47 select SOC_INTEL_COMMON_BLOCK_ACPI_PEP
48 select SOC_INTEL_COMMON_BLOCK_ACPI_PEP_LPM_REQ
49 select SOC_INTEL_COMMON_BLOCK_CAR
50 select SOC_INTEL_COMMON_BLOCK_CHIP_CONFIG
51 select SOC_INTEL_COMMON_BLOCK_CNVI
52 select SOC_INTEL_COMMON_BLOCK_CPU
53 select SOC_INTEL_COMMON_BLOCK_CPU_MPINIT
54 select SOC_INTEL_COMMON_BLOCK_CPU_SMMRELOCATE
55 select SOC_INTEL_COMMON_BLOCK_DTT
56 select SOC_INTEL_COMMON_BLOCK_GPIO_DUAL_ROUTE_SUPPORT
57 select SOC_INTEL_COMMON_BLOCK_GPIO_IOSTANDBY
58 select SOC_INTEL_COMMON_BLOCK_GSPI_VERSION_2
59 select SOC_INTEL_COMMON_BLOCK_HDA
60 select SOC_INTEL_COMMON_BLOCK_HECI1_DISABLE_USING_PMC_IPC
61 select SOC_INTEL_COMMON_BLOCK_IRQ
62 select SOC_INTEL_COMMON_BLOCK_ME_SPEC_15
63 select SOC_INTEL_COMMON_BLOCK_MEMINIT
64 select SOC_INTEL_COMMON_BLOCK_PCIE_RTD3
65 select SOC_INTEL_COMMON_BLOCK_PMC_EPOC
66 select SOC_INTEL_COMMON_BLOCK_SA
67 select SOC_INTEL_COMMON_BLOCK_SMM
68 select SOC_INTEL_COMMON_BLOCK_SMM_IO_TRAP
69 select SOC_INTEL_COMMON_BLOCK_TCSS
70 select SOC_INTEL_COMMON_BLOCK_USB4
71 select SOC_INTEL_COMMON_BLOCK_USB4_PCIE
72 select SOC_INTEL_COMMON_BLOCK_USB4_XHCI
73 select SOC_INTEL_COMMON_BLOCK_XHCI_ELOG
74 select SOC_INTEL_COMMON_FSP_RESET
75 select SOC_INTEL_COMMON_PCH_CLIENT
76 select SOC_INTEL_COMMON_RESET
77 select SOC_INTEL_COMMON_BLOCK_POWER_LIMIT
78 select SOC_INTEL_CSE_SEND_EOP_LATE
79 select SOC_INTEL_CSE_SET_EOP
80 select SOC_INTEL_MEM_MAPPED_PM_CONFIGURATION
82 select SUPPORT_CPU_UCODE_IN_CBFS
83 select TSC_MONOTONIC_TIMER
85 select UDK_2017_BINDING
86 select USE_FSP_NOTIFY_PHASE_POST_PCI_ENUM
87 select USE_FSP_NOTIFY_PHASE_READY_TO_BOOT
88 select USE_FSP_NOTIFY_PHASE_END_OF_FIRMWARE
89 select SOC_INTEL_COMMON_BASECODE
90 select SOC_INTEL_COMMON_BASECODE_RAMTOP
91 select CR50_USE_LONG_INTERRUPT_PULSES if TPM_GOOGLE_CR50
92 select X86_CLFLUSH_CAR
94 Intel Tigerlake support
96 config SOC_INTEL_TIGERLAKE_PCH_H
99 if SOC_INTEL_TIGERLAKE
103 default 16 if SOC_INTEL_TIGERLAKE_PCH_H
109 config DCACHE_RAM_BASE
112 config DCACHE_RAM_SIZE
115 The size of the cache-as-ram region required during bootblock
118 config DCACHE_BSP_STACK_SIZE
122 The amount of anticipated stack usage in CAR by bootblock and
123 other stages. In the case of FSP_USES_CB_STACK default value will be
124 sum of FSP-M stack requirement(256KiB) and CB romstage stack requirement
127 config FSP_TEMP_RAM_SIZE
131 The amount of anticipated heap usage in CAR by FSP.
132 Refer to Platform FSP integration guide document to know
133 the exact FSP requirement for Heap setup.
135 config CHIPSET_DEVICETREE
137 default "soc/intel/tigerlake/chipset_pch_h.cb" if SOC_INTEL_TIGERLAKE_PCH_H
138 default "soc/intel/tigerlake/chipset.cb"
140 config EXT_BIOS_WIN_BASE
143 config EXT_BIOS_WIN_SIZE
150 config IED_REGION_SIZE
157 config MAX_ROOT_PORTS
159 default 24 if SOC_INTEL_TIGERLAKE_PCH_H
162 config MAX_PCIE_CLOCK_SRC
164 default 16 if SOC_INTEL_TIGERLAKE_PCH_H
171 config SMM_RESERVED_SIZE
175 config PCR_BASE_ADDRESS
179 This option allows you to select MMIO Base Address of sideband bus.
181 config ECAM_MMCONF_BASE_ADDRESS
188 config SOC_INTEL_COMMON_BLOCK_GSPI_CLOCK_MHZ
195 config DRIVERS_I2C_DESIGNWARE_CLOCK_MHZ
199 config SOC_INTEL_COMMON_BLOCK_GSPI_MAX
203 config SOC_INTEL_I2C_DEV_MAX
207 config SOC_INTEL_UART_DEV_MAX
211 config CONSOLE_UART_BASE_ADDRESS
214 depends on INTEL_LPSS_UART_FOR_CONSOLE
216 # Clock divider parameters for 115200 baud rate
217 # Baudrate = (UART source clock * M) /(N *16)
218 # TGL UART source clock: 100MHz
219 config SOC_INTEL_COMMON_LPSS_UART_CLK_M_VAL
223 config SOC_INTEL_COMMON_LPSS_UART_CLK_N_VAL
228 select VBOOT_MUST_REQUEST_DISPLAY
229 select VBOOT_STARTS_IN_BOOTBLOCK
230 select VBOOT_VBNV_CMOS
231 select VBOOT_VBNV_CMOS_BACKUP_TO_FLASH
240 This option allows to select FSP IOT type from 3rdparty/fsp repo
242 config FSP_TYPE_CLIENT
244 default !FSP_TYPE_IOT
246 This option allows to select FSP CLIENT type from 3rdparty/fsp repo
248 config FSP_HEADER_PATH
249 default "3rdparty/fsp/TigerLakeFspBinPkg/TGL_IOT/Include/" if FSP_TYPE_IOT
250 default "3rdparty/fsp/TigerLakeFspBinPkg/Client/Include/" if FSP_TYPE_CLIENT
253 default "3rdparty/fsp/TigerLakeFspBinPkg/TGL_IOT/Fsp.fd" if FSP_TYPE_IOT
254 default "3rdparty/fsp/TigerLakeFspBinPkg/Client/Fsp.fd" if FSP_TYPE_CLIENT
256 config SOC_INTEL_TIGERLAKE_DEBUG_CONSENT
257 int "Debug Consent for TGL"
258 # USB DBC is more common for developers so make this default to 3 if
259 # SOC_INTEL_DEBUG_CONSENT=y
260 default 3 if SOC_INTEL_DEBUG_CONSENT
263 This is to control debug interface on SOC.
264 Setting non-zero value will allow to use DBC or DCI to debug SOC.
265 PlatformDebugConsent in FspmUpd.h has the details.
267 Desired platform debug type are
268 0:Disabled, 1:Enabled (DCI OOB+[DbC]), 2:Enabled (DCI OOB),
269 3:Enabled (USB3 DbC), 4:Enabled (XDP/MIPI60), 5:Enabled (USB2 DbC),
270 6:Enable (2-wire DCI OOB), 7:Manual
272 config PRERAM_CBMEM_CONSOLE_SIZE
276 config DATA_BUS_WIDTH
280 config DIMMS_PER_CHANNEL
284 config MRC_CHANNEL_WIDTH
288 # Intel recommends reserving the following resources per USB4 root port,
289 # from TGL BIOS Spec (doc #611569) Revision 0.7.6 Section 7.2.5.1.5
291 # - 194 MiB Non-prefetchable memory
292 # - 448 MiB Prefetchable memory
293 if SOC_INTEL_ENABLE_USB4_PCIE_RESOURCES
295 config PCIEXP_HOTPLUG_BUSES
298 config PCIEXP_HOTPLUG_MEM
299 default 0xc200000 # 194 MiB
301 config PCIEXP_HOTPLUG_PREFETCH_MEM
302 default 0x1c000000 # 448 MiB
304 endif # SOC_INTEL_ENABLE_USB4_PCIE_RESOURCES
306 config INTEL_GMA_BCLV_OFFSET
309 config INTEL_GMA_BCLV_WIDTH
312 config INTEL_GMA_BCLM_OFFSET
315 config INTEL_GMA_BCLM_WIDTH