blob: b324a048d45d0bb8c1c8bab176c7733eb2a71527 [file] [log] [blame]
Subrata Banik91e89c52019-11-01 18:30:01 +05301config SOC_INTEL_TIGERLAKE
2 bool
3 help
4 Intel Tigerlake support
5
Jeremy Soller6b1b9ad2021-08-12 10:49:58 -06006config SOC_INTEL_TIGERLAKE_PCH_H
7 bool
8
Aamir Bohraa23e0c92020-03-25 15:31:12 +05309if SOC_INTEL_TIGERLAKE
Subrata Banik91e89c52019-11-01 18:30:01 +053010
11config CPU_SPECIFIC_OPTIONS
12 def_bool y
13 select ACPI_INTEL_HARDWARE_SLEEP_VALUES
Angel Pons8e035e32021-06-22 12:58:20 +020014 select ARCH_X86
Subrata Banik91e89c52019-11-01 18:30:01 +053015 select BOOT_DEVICE_SUPPORTS_WRITES
Subrata Banik91e89c52019-11-01 18:30:01 +053016 select CACHE_MRC_SETTINGS
Alex Levinf3668fc2020-06-11 20:09:45 -070017 select CPU_INTEL_COMMON
Subrata Banik91e89c52019-11-01 18:30:01 +053018 select CPU_INTEL_FIRMWARE_INTERFACE_TABLE
Michael Niewöhner5307f122021-09-19 00:32:37 +020019 select CPU_SUPPORTS_INTEL_TME
Michael Niewöhnerfe6070f2020-10-04 15:16:04 +020020 select CPU_SUPPORTS_PM_TIMER_EMULATION
Duncan Laurie2e9315c2020-10-27 10:29:16 -070021 select DRIVERS_USB_ACPI
Furquan Shaikhba75c4c2020-11-22 15:45:54 -080022 select FAST_SPI_SUPPORTS_EXT_BIOS_WINDOW
Karthikeyan Ramasubramanian6abee842020-06-16 23:29:28 -060023 select FSP_COMPRESS_FSP_S_LZ4
Subrata Banik91e89c52019-11-01 18:30:01 +053024 select FSP_M_XIP
Subrata Banik4ed9f9a2020-10-31 22:01:55 +053025 select FSP_STATUS_GLOBAL_RESET_REQUIRED_3
Subrata Banik91e89c52019-11-01 18:30:01 +053026 select GENERIC_GPIO_LIB
27 select HAVE_FSP_GOP
Felix Singer3e3c4562020-12-17 18:34:45 +000028 select HAVE_INTEL_FSP_REPO
Subrata Banik91e89c52019-11-01 18:30:01 +053029 select INTEL_DESCRIPTOR_MODE_CAPABLE
30 select HAVE_SMI_HANDLER
31 select IDT_IN_EVERY_STAGE
Shreesh Chhabbi87c7ec72020-12-03 14:07:15 -080032 select INTEL_CAR_NEM_ENHANCED if !INTEL_CAR_NEM
Shreesh Chhabbi860c6842020-12-03 15:06:20 -080033 select CAR_HAS_SF_MASKS if INTEL_CAR_NEM_ENHANCED
Shreesh Chhabbi42b1d3f2020-11-05 12:06:29 -080034 select COS_MAPPED_TO_MSB if INTEL_CAR_NEM_ENHANCED
Subrata Banikad082652021-07-23 16:15:57 +053035 select SF_MASK_2WAYS_PER_BIT if INTEL_CAR_NEM_ENHANCED
Subrata Banik91e89c52019-11-01 18:30:01 +053036 select INTEL_GMA_ACPI
37 select INTEL_GMA_ADD_VBT if RUN_FSP_GOP
Aamir Bohra30cca6c2021-02-04 20:57:51 +053038 select MP_SERVICES_PPI_V1
Subrata Banik91e89c52019-11-01 18:30:01 +053039 select MRC_SETTINGS_PROTECT
Subrata Banik91e89c52019-11-01 18:30:01 +053040 select PARALLEL_MP_AP_WORK
Subrata Banikb622d4b2020-05-26 18:33:22 +053041 select PLATFORM_USES_FSP2_2
Subrata Banik91e89c52019-11-01 18:30:01 +053042 select PMC_GLOBAL_RESET_ENABLE_LOCK
43 select SOC_INTEL_COMMON
44 select SOC_INTEL_COMMON_ACPI_WAKE_SOURCE
45 select SOC_INTEL_COMMON_BLOCK
46 select SOC_INTEL_COMMON_BLOCK_ACPI
Michael Niewöhner02275be2020-11-12 23:50:37 +010047 select SOC_INTEL_COMMON_BLOCK_ACPI_CPPC
Angel Pons98f672a2021-02-19 19:42:10 +010048 select SOC_INTEL_COMMON_BLOCK_ACPI_GPIO
Michael Niewöhner8a6c34e2021-01-01 21:26:42 +010049 select SOC_INTEL_COMMON_BLOCK_ACPI_LPIT
Tim Wawrzynczak72d94022021-07-01 08:25:11 -060050 select SOC_INTEL_COMMON_BLOCK_ACPI_PEP
51 select SOC_INTEL_COMMON_BLOCK_ACPI_PEP_LPM_REQ
Subrata Banik21974ab2020-10-31 21:40:43 +053052 select SOC_INTEL_COMMON_BLOCK_CAR
Subrata Banik91e89c52019-11-01 18:30:01 +053053 select SOC_INTEL_COMMON_BLOCK_CHIP_CONFIG
Furquan Shaikh23e88132020-10-08 23:44:20 -070054 select SOC_INTEL_COMMON_BLOCK_CNVI
Subrata Banik91e89c52019-11-01 18:30:01 +053055 select SOC_INTEL_COMMON_BLOCK_CPU
56 select SOC_INTEL_COMMON_BLOCK_CPU_MPINIT
Angel Ponsa4cd9112021-02-19 19:23:38 +010057 select SOC_INTEL_COMMON_BLOCK_CPU_SMMRELOCATE
Tim Wawrzynczakc5316ec2020-05-29 15:20:56 -060058 select SOC_INTEL_COMMON_BLOCK_DTT
Nick Vaccaroef8258a2019-12-09 22:11:33 -080059 select SOC_INTEL_COMMON_BLOCK_GPIO_DUAL_ROUTE_SUPPORT
Duncan Laurie7d971362020-11-05 10:09:58 -080060 select SOC_INTEL_COMMON_BLOCK_GPIO_IOSTANDBY
Subrata Banik91e89c52019-11-01 18:30:01 +053061 select SOC_INTEL_COMMON_BLOCK_GSPI_VERSION_2
62 select SOC_INTEL_COMMON_BLOCK_HDA
Tim Wawrzynczaked042a92021-02-04 17:07:14 -070063 select SOC_INTEL_COMMON_BLOCK_IRQ
Furquan Shaikhf06d0462020-12-31 21:15:34 -080064 select SOC_INTEL_COMMON_BLOCK_MEMINIT
Duncan Lauriee997d852020-10-10 00:18:08 +000065 select SOC_INTEL_COMMON_BLOCK_PCIE_RTD3
Lean Sheng Tan75020002021-06-30 01:47:48 -070066 select SOC_INTEL_COMMON_BLOCK_PMC_EPOC
Subrata Banik91e89c52019-11-01 18:30:01 +053067 select SOC_INTEL_COMMON_BLOCK_SA
68 select SOC_INTEL_COMMON_BLOCK_SMM
69 select SOC_INTEL_COMMON_BLOCK_SMM_IO_TRAP
John Zhao3c463712022-01-10 15:49:37 -080070 select SOC_INTEL_COMMON_BLOCK_TCSS
71 select SOC_INTEL_COMMON_BLOCK_TCSS_REG_ACCESS_REGBAR
Duncan Laurie6f58b992020-08-28 19:44:42 +000072 select SOC_INTEL_COMMON_BLOCK_USB4
73 select SOC_INTEL_COMMON_BLOCK_USB4_PCIE
Duncan Laurie2e9315c2020-10-27 10:29:16 -070074 select SOC_INTEL_COMMON_BLOCK_USB4_XHCI
Karthikeyan Ramasubramanianfa9e8f92020-11-04 22:22:46 -070075 select SOC_INTEL_COMMON_BLOCK_XHCI_ELOG
Subrata Banik4ed9f9a2020-10-31 22:01:55 +053076 select SOC_INTEL_COMMON_FSP_RESET
Subrata Banik91e89c52019-11-01 18:30:01 +053077 select SOC_INTEL_COMMON_PCH_BASE
78 select SOC_INTEL_COMMON_RESET
Sumeet R Pawnikard2132462020-05-15 15:55:37 +053079 select SOC_INTEL_COMMON_BLOCK_POWER_LIMIT
Tim Wawrzynczak25d24522021-06-17 12:44:06 -060080 select SOC_INTEL_CSE_SET_EOP
Subrata Banik91e89c52019-11-01 18:30:01 +053081 select SSE2
82 select SUPPORT_CPU_UCODE_IN_CBFS
83 select TSC_MONOTONIC_TIMER
84 select UDELAY_TSC
85 select UDK_2017_BINDING
86 select DISPLAY_FSP_VERSION_INFO
87 select HECI_DISABLE_USING_SMM
88
Andy Pontd2f52ff2021-06-08 10:30:35 +010089config MAX_CPUS
90 int
Tim Crawfordf4962862021-08-30 13:08:36 -060091 default 16 if SOC_INTEL_TIGERLAKE_PCH_H
Andy Pontd2f52ff2021-06-08 10:30:35 +010092 default 8
93
Subrata Banik91e89c52019-11-01 18:30:01 +053094config DCACHE_RAM_BASE
95 default 0xfef00000
96
97config DCACHE_RAM_SIZE
Maulik V Vaghelae9b1e0f2019-12-16 16:39:53 +053098 default 0x80000
Subrata Banik91e89c52019-11-01 18:30:01 +053099 help
100 The size of the cache-as-ram region required during bootblock
101 and/or romstage.
102
103config DCACHE_BSP_STACK_SIZE
104 hex
Aamir Bohra555c9b62020-03-23 10:13:10 +0530105 default 0x40400
Subrata Banik91e89c52019-11-01 18:30:01 +0530106 help
107 The amount of anticipated stack usage in CAR by bootblock and
108 other stages. In the case of FSP_USES_CB_STACK default value will be
Aamir Bohra555c9b62020-03-23 10:13:10 +0530109 sum of FSP-M stack requirement(256KiB) and CB romstage stack requirement
110 (~1KiB).
Subrata Banik91e89c52019-11-01 18:30:01 +0530111
112config FSP_TEMP_RAM_SIZE
113 hex
Maulik V Vaghelae9b1e0f2019-12-16 16:39:53 +0530114 default 0x20000
Subrata Banik91e89c52019-11-01 18:30:01 +0530115 help
116 The amount of anticipated heap usage in CAR by FSP.
117 Refer to Platform FSP integration guide document to know
118 the exact FSP requirement for Heap setup.
119
Duncan Lauriea5bb31f2020-07-29 16:31:18 -0700120config CHIPSET_DEVICETREE
121 string
Jeremy Soller6b1b9ad2021-08-12 10:49:58 -0600122 default "soc/intel/tigerlake/chipset_pch_h.cb" if SOC_INTEL_TIGERLAKE_PCH_H
Duncan Lauriea5bb31f2020-07-29 16:31:18 -0700123 default "soc/intel/tigerlake/chipset.cb"
124
Furquan Shaikhba75c4c2020-11-22 15:45:54 -0800125config EXT_BIOS_WIN_BASE
126 default 0xf8000000
127
128config EXT_BIOS_WIN_SIZE
129 default 0x2000000
130
Subrata Banik91e89c52019-11-01 18:30:01 +0530131config IFD_CHIPSET
132 string
Aamir Bohra555c9b62020-03-23 10:13:10 +0530133 default "tgl"
Subrata Banik91e89c52019-11-01 18:30:01 +0530134
135config IED_REGION_SIZE
136 hex
137 default 0x400000
138
139config HEAP_SIZE
140 hex
Duncan Laurieaab226c2020-06-08 17:36:21 -0700141 default 0x10000
Subrata Banik91e89c52019-11-01 18:30:01 +0530142
143config MAX_ROOT_PORTS
144 int
Jeremy Soller6b1b9ad2021-08-12 10:49:58 -0600145 default 24 if SOC_INTEL_TIGERLAKE_PCH_H
Aamir Bohra555c9b62020-03-23 10:13:10 +0530146 default 12
Subrata Banik91e89c52019-11-01 18:30:01 +0530147
Rizwan Qureshia9794602021-04-08 20:31:47 +0530148config MAX_PCIE_CLOCK_SRC
Ravi Sarawadi2fd49722019-12-16 23:41:36 -0800149 int
Jeremy Soller6b1b9ad2021-08-12 10:49:58 -0600150 default 16 if SOC_INTEL_TIGERLAKE_PCH_H
Aamir Bohra555c9b62020-03-23 10:13:10 +0530151 default 7
Ravi Sarawadi2fd49722019-12-16 23:41:36 -0800152
Subrata Banik91e89c52019-11-01 18:30:01 +0530153config SMM_TSEG_SIZE
154 hex
155 default 0x800000
156
157config SMM_RESERVED_SIZE
158 hex
159 default 0x200000
160
161config PCR_BASE_ADDRESS
162 hex
163 default 0xfd000000
164 help
165 This option allows you to select MMIO Base Address of sideband bus.
166
Shelley Chen4e9bb332021-10-20 15:43:45 -0700167config ECAM_MMCONF_BASE_ADDRESS
Subrata Banik91e89c52019-11-01 18:30:01 +0530168 default 0xc0000000
169
170config CPU_BCLK_MHZ
171 int
172 default 100
173
174config SOC_INTEL_COMMON_BLOCK_GSPI_CLOCK_MHZ
175 int
176 default 120
177
Michael Niewöhnerdadcbfb2020-10-04 14:48:05 +0200178config CPU_XTAL_HZ
179 default 38400000
180
Subrata Banik91e89c52019-11-01 18:30:01 +0530181config DRIVERS_I2C_DESIGNWARE_CLOCK_MHZ
182 int
183 default 133
184
185config SOC_INTEL_COMMON_BLOCK_GSPI_MAX
186 int
Aamir Bohra555c9b62020-03-23 10:13:10 +0530187 default 4
Subrata Banik91e89c52019-11-01 18:30:01 +0530188
189config SOC_INTEL_I2C_DEV_MAX
190 int
191 default 6
192
Sean Rhodes56226662021-11-08 21:34:34 +0000193config SOC_INTEL_TIGERLAKE_S3
194 bool
195 default n
196 help
197 Select if using S3 instead of S0ix to disable D3Cold
198
Subrata Banik91e89c52019-11-01 18:30:01 +0530199config SOC_INTEL_UART_DEV_MAX
200 int
201 default 3
202
203config CONSOLE_UART_BASE_ADDRESS
204 hex
Bora Guvendikc3c3e452020-11-13 21:35:19 -0800205 default 0xfe03e000
Subrata Banik91e89c52019-11-01 18:30:01 +0530206 depends on INTEL_LPSS_UART_FOR_CONSOLE
207
208# Clock divider parameters for 115200 baud rate
Ravi Sarawadi38387012019-12-19 15:04:58 -0800209# Baudrate = (UART source clcok * M) /(N *16)
210# TGL UART source clock: 120MHz
Subrata Banik91e89c52019-11-01 18:30:01 +0530211config SOC_INTEL_COMMON_LPSS_UART_CLK_M_VAL
212 hex
Aamir Bohra555c9b62020-03-23 10:13:10 +0530213 default 0x25a
Subrata Banik91e89c52019-11-01 18:30:01 +0530214
215config SOC_INTEL_COMMON_LPSS_UART_CLK_N_VAL
216 hex
Aamir Bohra555c9b62020-03-23 10:13:10 +0530217 default 0x7fff
Subrata Banik91e89c52019-11-01 18:30:01 +0530218
Jes Klinkee046b712020-08-19 14:01:30 -0700219# Tiger Lake SoC requires at least 100us interrupt pulses in order to guarantee detection
220# in all low power states. Cr50 TPM, if used, needs to be told to generate longer pulses.
221config TPM_CR50
222 select CR50_USE_LONG_INTERRUPT_PULSES
223
Srinidhi N Kaushik74c16d02020-11-04 11:29:33 -0800224config VBT_DATA_SIZE_KB
225 int
226 default 9
227
Subrata Banik91e89c52019-11-01 18:30:01 +0530228config VBOOT
229 select VBOOT_SEPARATE_VERSTAGE
230 select VBOOT_MUST_REQUEST_DISPLAY
Subrata Banik91e89c52019-11-01 18:30:01 +0530231 select VBOOT_STARTS_IN_BOOTBLOCK
232 select VBOOT_VBNV_CMOS
233 select VBOOT_VBNV_CMOS_BACKUP_TO_FLASH
234
Subrata Banik91e89c52019-11-01 18:30:01 +0530235config CBFS_SIZE
Subrata Banik91e89c52019-11-01 18:30:01 +0530236 default 0x200000
237
Felix Singer3e3c4562020-12-17 18:34:45 +0000238config FSP_TYPE_IOT
239 bool
240 default n
241 help
242 This option allows to select FSP IOT type from 3rdparty/fsp repo
243
244config FSP_TYPE_CLIENT
245 bool
246 default !FSP_TYPE_IOT
247 help
248 This option allows to select FSP CLIENT type from 3rdparty/fsp repo
249
Subrata Banik91e89c52019-11-01 18:30:01 +0530250config FSP_HEADER_PATH
Felix Singer3e3c4562020-12-17 18:34:45 +0000251 default "3rdparty/fsp/TigerLakeFspBinPkg/TGL_IOT/Include/" if FSP_TYPE_IOT
252 default "3rdparty/fsp/TigerLakeFspBinPkg/Client/Include/" if FSP_TYPE_CLIENT
Subrata Banik91e89c52019-11-01 18:30:01 +0530253
254config FSP_FD_PATH
Felix Singer3e3c4562020-12-17 18:34:45 +0000255 default "3rdparty/fsp/TigerLakeFspBinPkg/TGL_IOT/Fsp.fd" if FSP_TYPE_IOT
256 default "3rdparty/fsp/TigerLakeFspBinPkg/Client/Fsp.fd" if FSP_TYPE_CLIENT
Subrata Banik91e89c52019-11-01 18:30:01 +0530257
Subrata Banik56626cf2020-02-27 19:39:22 +0530258config SOC_INTEL_TIGERLAKE_DEBUG_CONSENT
259 int "Debug Consent for TGL"
260 # USB DBC is more common for developers so make this default to 3 if
261 # SOC_INTEL_DEBUG_CONSENT=y
262 default 3 if SOC_INTEL_DEBUG_CONSENT
263 default 0
264 help
265 This is to control debug interface on SOC.
266 Setting non-zero value will allow to use DBC or DCI to debug SOC.
267 PlatformDebugConsent in FspmUpd.h has the details.
268
269 Desired platform debug type are
270 0:Disabled, 1:Enabled (DCI OOB+[DbC]), 2:Enabled (DCI OOB),
271 3:Enabled (USB3 DbC), 4:Enabled (XDP/MIPI60), 5:Enabled (USB2 DbC),
272 6:Enable (2-wire DCI OOB), 7:Manual
Subrata Banikebf1daa2020-05-19 12:32:41 +0530273
274config PRERAM_CBMEM_CONSOLE_SIZE
275 hex
Anil Kumar033038f2020-09-08 16:18:45 -0700276 default 0x2000
Brandon Breitenstein99b38a92019-12-19 23:12:58 -0800277
Furquan Shaikhf06d0462020-12-31 21:15:34 -0800278config DATA_BUS_WIDTH
279 int
280 default 128
281
282config DIMMS_PER_CHANNEL
283 int
284 default 2
285
286config MRC_CHANNEL_WIDTH
287 int
288 default 16
289
Furquan Shaikhbee831e2021-08-24 13:42:05 -0700290# Intel recommends reserving the following resources per USB4 root port,
291# from TGL BIOS Spec (doc #611569) Revision 0.7.6 Section 7.2.5.1.5
292# - 42 buses
293# - 194 MiB Non-prefetchable memory
294# - 448 MiB Prefetchable memory
295if SOC_INTEL_ENABLE_USB4_PCIE_RESOURCES
296
297config PCIEXP_HOTPLUG_BUSES
298 default 42
299
300config PCIEXP_HOTPLUG_MEM
301 default 0xc200000 # 194 MiB
302
303config PCIEXP_HOTPLUG_PREFETCH_MEM
304 default 0x1c000000 # 448 MiB
305
306endif # SOC_INTEL_ENABLE_USB4_PCIE_RESOURCES
307
Tim Crawford1724b572021-09-21 21:50:49 -0600308config INTEL_GMA_BCLV_OFFSET
309 default 0xc8258
310
311config INTEL_GMA_BCLV_WIDTH
312 default 32
313
314config INTEL_GMA_BCLM_OFFSET
315 default 0xc8254
316
317config INTEL_GMA_BCLM_WIDTH
318 default 32
319
Subrata Banik91e89c52019-11-01 18:30:01 +0530320endif