blob: d308a1b103a7e5784986b64885f715fc20037653 [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
38 select IOAPIC
Aamir Bohra30cca6c2021-02-04 20:57:51 +053039 select MP_SERVICES_PPI_V1
Subrata Banik91e89c52019-11-01 18:30:01 +053040 select MRC_SETTINGS_PROTECT
Subrata Banik91e89c52019-11-01 18:30:01 +053041 select PARALLEL_MP_AP_WORK
Subrata Banikb622d4b2020-05-26 18:33:22 +053042 select PLATFORM_USES_FSP2_2
Subrata Banik91e89c52019-11-01 18:30:01 +053043 select REG_SCRIPT
Subrata Banik91e89c52019-11-01 18:30:01 +053044 select PMC_GLOBAL_RESET_ENABLE_LOCK
Subrata Banik0359d9d2020-09-28 18:43:47 +053045 select PMC_LOW_POWER_MODE_PROGRAM
Subrata Banik91e89c52019-11-01 18:30:01 +053046 select SOC_INTEL_COMMON
47 select SOC_INTEL_COMMON_ACPI_WAKE_SOURCE
48 select SOC_INTEL_COMMON_BLOCK
49 select SOC_INTEL_COMMON_BLOCK_ACPI
Angel Pons98f672a2021-02-19 19:42:10 +010050 select SOC_INTEL_COMMON_BLOCK_ACPI_GPIO
Michael Niewöhner8a6c34e2021-01-01 21:26:42 +010051 select SOC_INTEL_COMMON_BLOCK_ACPI_LPIT
Tim Wawrzynczak72d94022021-07-01 08:25:11 -060052 select SOC_INTEL_COMMON_BLOCK_ACPI_PEP
53 select SOC_INTEL_COMMON_BLOCK_ACPI_PEP_LPM_REQ
Subrata Banik21974ab2020-10-31 21:40:43 +053054 select SOC_INTEL_COMMON_BLOCK_CAR
Subrata Banik91e89c52019-11-01 18:30:01 +053055 select SOC_INTEL_COMMON_BLOCK_CHIP_CONFIG
Furquan Shaikh23e88132020-10-08 23:44:20 -070056 select SOC_INTEL_COMMON_BLOCK_CNVI
Subrata Banik91e89c52019-11-01 18:30:01 +053057 select SOC_INTEL_COMMON_BLOCK_CPU
58 select SOC_INTEL_COMMON_BLOCK_CPU_MPINIT
Angel Ponsa4cd9112021-02-19 19:23:38 +010059 select SOC_INTEL_COMMON_BLOCK_CPU_SMMRELOCATE
Tim Wawrzynczakc5316ec2020-05-29 15:20:56 -060060 select SOC_INTEL_COMMON_BLOCK_DTT
Nick Vaccaroef8258a2019-12-09 22:11:33 -080061 select SOC_INTEL_COMMON_BLOCK_GPIO_DUAL_ROUTE_SUPPORT
Duncan Laurie7d971362020-11-05 10:09:58 -080062 select SOC_INTEL_COMMON_BLOCK_GPIO_IOSTANDBY
Subrata Banik91e89c52019-11-01 18:30:01 +053063 select SOC_INTEL_COMMON_BLOCK_GSPI_VERSION_2
64 select SOC_INTEL_COMMON_BLOCK_HDA
Tim Wawrzynczaked042a92021-02-04 17:07:14 -070065 select SOC_INTEL_COMMON_BLOCK_IRQ
Furquan Shaikhf06d0462020-12-31 21:15:34 -080066 select SOC_INTEL_COMMON_BLOCK_MEMINIT
Duncan Lauriee997d852020-10-10 00:18:08 +000067 select SOC_INTEL_COMMON_BLOCK_PCIE_RTD3
Lean Sheng Tan75020002021-06-30 01:47:48 -070068 select SOC_INTEL_COMMON_BLOCK_PMC_EPOC
Subrata Banik91e89c52019-11-01 18:30:01 +053069 select SOC_INTEL_COMMON_BLOCK_SA
70 select SOC_INTEL_COMMON_BLOCK_SMM
71 select SOC_INTEL_COMMON_BLOCK_SMM_IO_TRAP
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
167config 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
193config SOC_INTEL_UART_DEV_MAX
194 int
195 default 3
196
197config CONSOLE_UART_BASE_ADDRESS
198 hex
Bora Guvendikc3c3e452020-11-13 21:35:19 -0800199 default 0xfe03e000
Subrata Banik91e89c52019-11-01 18:30:01 +0530200 depends on INTEL_LPSS_UART_FOR_CONSOLE
201
202# Clock divider parameters for 115200 baud rate
Ravi Sarawadi38387012019-12-19 15:04:58 -0800203# Baudrate = (UART source clcok * M) /(N *16)
204# TGL UART source clock: 120MHz
Subrata Banik91e89c52019-11-01 18:30:01 +0530205config SOC_INTEL_COMMON_LPSS_UART_CLK_M_VAL
206 hex
Aamir Bohra555c9b62020-03-23 10:13:10 +0530207 default 0x25a
Subrata Banik91e89c52019-11-01 18:30:01 +0530208
209config SOC_INTEL_COMMON_LPSS_UART_CLK_N_VAL
210 hex
Aamir Bohra555c9b62020-03-23 10:13:10 +0530211 default 0x7fff
Subrata Banik91e89c52019-11-01 18:30:01 +0530212
Jes Klinkee046b712020-08-19 14:01:30 -0700213# Tiger Lake SoC requires at least 100us interrupt pulses in order to guarantee detection
214# in all low power states. Cr50 TPM, if used, needs to be told to generate longer pulses.
215config TPM_CR50
216 select CR50_USE_LONG_INTERRUPT_PULSES
217
Srinidhi N Kaushik74c16d02020-11-04 11:29:33 -0800218config VBT_DATA_SIZE_KB
219 int
220 default 9
221
Subrata Banik91e89c52019-11-01 18:30:01 +0530222config VBOOT
223 select VBOOT_SEPARATE_VERSTAGE
224 select VBOOT_MUST_REQUEST_DISPLAY
Subrata Banik91e89c52019-11-01 18:30:01 +0530225 select VBOOT_STARTS_IN_BOOTBLOCK
226 select VBOOT_VBNV_CMOS
227 select VBOOT_VBNV_CMOS_BACKUP_TO_FLASH
228
Subrata Banik91e89c52019-11-01 18:30:01 +0530229config CBFS_SIZE
Subrata Banik91e89c52019-11-01 18:30:01 +0530230 default 0x200000
231
Felix Singer3e3c4562020-12-17 18:34:45 +0000232config FSP_TYPE_IOT
233 bool
234 default n
235 help
236 This option allows to select FSP IOT type from 3rdparty/fsp repo
237
238config FSP_TYPE_CLIENT
239 bool
240 default !FSP_TYPE_IOT
241 help
242 This option allows to select FSP CLIENT type from 3rdparty/fsp repo
243
Subrata Banik91e89c52019-11-01 18:30:01 +0530244config FSP_HEADER_PATH
Felix Singer3e3c4562020-12-17 18:34:45 +0000245 default "3rdparty/fsp/TigerLakeFspBinPkg/TGL_IOT/Include/" if FSP_TYPE_IOT
246 default "3rdparty/fsp/TigerLakeFspBinPkg/Client/Include/" if FSP_TYPE_CLIENT
Subrata Banik91e89c52019-11-01 18:30:01 +0530247
248config FSP_FD_PATH
Felix Singer3e3c4562020-12-17 18:34:45 +0000249 default "3rdparty/fsp/TigerLakeFspBinPkg/TGL_IOT/Fsp.fd" if FSP_TYPE_IOT
250 default "3rdparty/fsp/TigerLakeFspBinPkg/Client/Fsp.fd" if FSP_TYPE_CLIENT
Subrata Banik91e89c52019-11-01 18:30:01 +0530251
Subrata Banik56626cf2020-02-27 19:39:22 +0530252config SOC_INTEL_TIGERLAKE_DEBUG_CONSENT
253 int "Debug Consent for TGL"
254 # USB DBC is more common for developers so make this default to 3 if
255 # SOC_INTEL_DEBUG_CONSENT=y
256 default 3 if SOC_INTEL_DEBUG_CONSENT
257 default 0
258 help
259 This is to control debug interface on SOC.
260 Setting non-zero value will allow to use DBC or DCI to debug SOC.
261 PlatformDebugConsent in FspmUpd.h has the details.
262
263 Desired platform debug type are
264 0:Disabled, 1:Enabled (DCI OOB+[DbC]), 2:Enabled (DCI OOB),
265 3:Enabled (USB3 DbC), 4:Enabled (XDP/MIPI60), 5:Enabled (USB2 DbC),
266 6:Enable (2-wire DCI OOB), 7:Manual
Subrata Banikebf1daa2020-05-19 12:32:41 +0530267
268config PRERAM_CBMEM_CONSOLE_SIZE
269 hex
Anil Kumar033038f2020-09-08 16:18:45 -0700270 default 0x2000
Brandon Breitenstein99b38a92019-12-19 23:12:58 -0800271
Furquan Shaikhf06d0462020-12-31 21:15:34 -0800272config DATA_BUS_WIDTH
273 int
274 default 128
275
276config DIMMS_PER_CHANNEL
277 int
278 default 2
279
280config MRC_CHANNEL_WIDTH
281 int
282 default 16
283
Francois Toguo15cbc3b2021-01-26 10:27:49 -0800284config SOC_INTEL_CRASHLOG
285 def_bool n
286 select SOC_INTEL_COMMON_BLOCK_CRASHLOG
287 select ACPI_BERT
288 help
289 Enables CrashLog.
290
Furquan Shaikhbee831e2021-08-24 13:42:05 -0700291# Intel recommends reserving the following resources per USB4 root port,
292# from TGL BIOS Spec (doc #611569) Revision 0.7.6 Section 7.2.5.1.5
293# - 42 buses
294# - 194 MiB Non-prefetchable memory
295# - 448 MiB Prefetchable memory
296if SOC_INTEL_ENABLE_USB4_PCIE_RESOURCES
297
298config PCIEXP_HOTPLUG_BUSES
299 default 42
300
301config PCIEXP_HOTPLUG_MEM
302 default 0xc200000 # 194 MiB
303
304config PCIEXP_HOTPLUG_PREFETCH_MEM
305 default 0x1c000000 # 448 MiB
306
307endif # SOC_INTEL_ENABLE_USB4_PCIE_RESOURCES
308
Subrata Banik91e89c52019-11-01 18:30:01 +0530309endif