blob: fbee4657433b9f2fdb09f0aa24e2291f8155a0ac [file] [log] [blame]
Arthur Heymansc8db6332019-06-17 13:32:13 +02001config SOC_INTEL_CANNONLAKE_BASE
Lijian Zhao81096042017-05-02 18:54:44 -07002 bool
Lijian Zhaob3dfcb82017-08-16 22:18:52 -07003 select ACPI_INTEL_HARDWARE_SLEEP_VALUES
Lijian Zhao0e956f22017-10-22 18:30:39 -07004 select ACPI_NHLT
Angel Pons8e035e32021-06-22 12:58:20 +02005 select ARCH_X86
Lijian Zhao32111172017-08-16 11:40:03 -07006 select BOOT_DEVICE_SUPPORTS_WRITES
Lijian Zhaoa06f55b2017-10-04 23:08:55 -07007 select CACHE_MRC_SETTINGS
Ronak Kanabara432f382019-03-16 21:26:43 +05308 select CPU_INTEL_COMMON
Lijian Zhaoacfc1492017-07-06 15:27:27 -07009 select CPU_INTEL_FIRMWARE_INTERFACE_TABLE
Michael Niewöhnerfe6070f2020-10-04 15:16:04 +020010 select CPU_SUPPORTS_PM_TIMER_EMULATION
Felix Singer30fd5bf2020-12-07 10:37:10 +010011 select DISPLAY_FSP_VERSION_INFO
Sean Rhodes7bbc9a52022-07-18 11:31:00 +010012 select EDK2_CPU_TIMER_LIB if PAYLOAD_EDK2
Karthikeyan Ramasubramanian203af602020-06-17 00:12:31 -060013 select FSP_COMPRESS_FSP_S_LZMA
Furquan Shaikhcef98792019-04-10 16:31:55 -070014 select FSP_M_XIP
Subrata Banik4ed9f9a2020-10-31 22:01:55 +053015 select FSP_STATUS_GLOBAL_RESET_REQUIRED_3
Felix Singer2aeb6e402023-08-25 11:32:26 +020016 select FSP_USES_CB_STACK
Nick Vaccaro69b5cdb2017-08-29 19:25:23 -070017 select GENERIC_GPIO_LIB
Subrata Banik4225a792022-12-19 18:24:13 +053018 select HAVE_DPTF_EISA_HID
Abhay kumarfcf88202017-09-20 15:17:42 -070019 select HAVE_FSP_GOP
Wim Vervoornd1371502019-12-17 14:10:16 +010020 select HAVE_FSP_LOGO_SUPPORT
Felix Singer8ba94102021-12-31 00:15:18 +010021 select HAVE_HYPERTHREADING
Felix Singer2aeb6e402023-08-25 11:32:26 +020022 select HAVE_INTEL_FSP_REPO
Lijian Zhaof0eb9992017-09-14 14:51:12 -070023 select HAVE_SMI_HANDLER
Aamir Bohrae4625852018-05-29 10:52:33 +053024 select IDT_IN_EVERY_STAGE
Felix Singer30fd5bf2020-12-07 10:37:10 +010025 select INTEL_DESCRIPTOR_MODE_CAPABLE
Abhay Kumarb0c4cbb2017-10-12 11:33:01 -070026 select INTEL_GMA_ACPI
Nico Huber29cc3312018-06-06 17:40:02 +020027 select INTEL_GMA_ADD_VBT if RUN_FSP_GOP
Lijian Zhaoa06f55b2017-10-04 23:08:55 -070028 select MRC_SETTINGS_PROTECT
Pratik Prajapati01eda282017-08-17 21:09:45 -070029 select PARALLEL_MP_AP_WORK
Lijian Zhao81096042017-05-02 18:54:44 -070030 select PLATFORM_USES_FSP2_0
Julien Viard de Galbert2912e8e2018-08-14 16:15:26 +020031 select PMC_GLOBAL_RESET_ENABLE_LOCK
Lijian Zhao81096042017-05-02 18:54:44 -070032 select SOC_INTEL_COMMON
Lijian Zhao2b074d92017-08-17 14:25:24 -070033 select SOC_INTEL_COMMON_ACPI_WAKE_SOURCE
Lijian Zhao81096042017-05-02 18:54:44 -070034 select SOC_INTEL_COMMON_BLOCK
Lijian Zhao2b074d92017-08-17 14:25:24 -070035 select SOC_INTEL_COMMON_BLOCK_ACPI
Michael Niewöhnerc66e1c22020-11-12 23:50:37 +010036 select SOC_INTEL_COMMON_BLOCK_ACPI_CPPC
Angel Pons98f672a2021-02-19 19:42:10 +010037 select SOC_INTEL_COMMON_BLOCK_ACPI_GPIO
Michael Niewöhner320a3ab2021-01-01 21:14:16 +010038 select SOC_INTEL_COMMON_BLOCK_ACPI_LPIT
Tim Wawrzynczak6d444372021-07-01 08:42:01 -060039 select SOC_INTEL_COMMON_BLOCK_ACPI_PEP
Arthur Heymans5e8c9062021-06-15 11:19:52 +020040 select SOC_INTEL_COMMON_BLOCK_CAR
Subrata Banikc4986eb2018-05-09 14:55:09 +053041 select SOC_INTEL_COMMON_BLOCK_CHIP_CONFIG
Furquan Shaikh23e88132020-10-08 23:44:20 -070042 select SOC_INTEL_COMMON_BLOCK_CNVI
Andrey Petrov3e2e0502017-06-05 13:22:24 -070043 select SOC_INTEL_COMMON_BLOCK_CPU
Pratik Prajapati01eda282017-08-17 21:09:45 -070044 select SOC_INTEL_COMMON_BLOCK_CPU_MPINIT
Angel Ponsa4cd9112021-02-19 19:23:38 +010045 select SOC_INTEL_COMMON_BLOCK_CPU_SMMRELOCATE
Tim Wawrzynczak939440c2019-04-26 15:03:33 -060046 select SOC_INTEL_COMMON_BLOCK_GPIO_DUAL_ROUTE_SUPPORT
Furquan Shaikha5bb7162017-12-20 11:09:04 -080047 select SOC_INTEL_COMMON_BLOCK_GSPI_VERSION_2
praveen hodagatta praneshdc4fceb2018-10-16 18:06:18 +080048 select SOC_INTEL_COMMON_BLOCK_HDA
Tim Wawrzynczakf9bb1b42021-06-25 13:02:16 -060049 select SOC_INTEL_COMMON_BLOCK_IRQ
Dinesh Gehlot9a5b7432023-02-20 13:57:16 +000050 select SOC_INTEL_COMMON_BLOCK_ME_SPEC_12
Felix Singer30fd5bf2020-12-07 10:37:10 +010051 select SOC_INTEL_COMMON_BLOCK_POWER_LIMIT
Lijian Zhaodcf99b02017-07-30 15:40:10 -070052 select SOC_INTEL_COMMON_BLOCK_SA
Duncan Laurie1e066112020-04-08 11:35:52 -070053 select SOC_INTEL_COMMON_BLOCK_SCS
Brandon Breitensteinae154862017-08-01 11:32:06 -070054 select SOC_INTEL_COMMON_BLOCK_SMM
55 select SOC_INTEL_COMMON_BLOCK_SMM_IO_TRAP
Subrata Banik281e2c12021-11-21 01:38:13 +053056 select SOC_INTEL_COMMON_BLOCK_THERMAL_PCI_DEV
Felix Singer30fd5bf2020-12-07 10:37:10 +010057 select SOC_INTEL_COMMON_BLOCK_XHCI
58 select SOC_INTEL_COMMON_BLOCK_XHCI_ELOG
Subrata Banik4ed9f9a2020-10-31 22:01:55 +053059 select SOC_INTEL_COMMON_FSP_RESET
Felix Singer30fd5bf2020-12-07 10:37:10 +010060 select SOC_INTEL_COMMON_NHLT
Angel Ponseb90c512022-07-18 14:41:24 +020061 select SOC_INTEL_COMMON_PCH_CLIENT
Felix Singer30fd5bf2020-12-07 10:37:10 +010062 select SOC_INTEL_COMMON_RESET
Felix Singer2aeb6e402023-08-25 11:32:26 +020063 select SOC_INTEL_CONFIGURE_DDI_A_4_LANES
Subrata Banikaf27ac22022-02-18 00:44:15 +053064 select SOC_INTEL_MEM_MAPPED_PM_CONFIGURATION
Lijian Zhaof0eb9992017-09-14 14:51:12 -070065 select SSE2
Lijian Zhaoacfc1492017-07-06 15:27:27 -070066 select SUPPORT_CPU_UCODE_IN_CBFS
Lijian Zhaodcf99b02017-07-30 15:40:10 -070067 select TSC_MONOTONIC_TIMER
68 select UDELAY_TSC
Subrata Banik74558812018-01-25 11:41:04 +053069 select UDK_2017_BINDING
Subrata Banik34f26b22022-02-10 12:38:02 +053070 select USE_FSP_NOTIFY_PHASE_POST_PCI_ENUM
71 select USE_FSP_NOTIFY_PHASE_READY_TO_BOOT
72 select USE_FSP_NOTIFY_PHASE_END_OF_FIRMWARE
Lean Sheng Tan4c5b3f12023-03-13 14:55:19 +010073 select X86_CLFLUSH_CAR
Lijian Zhao81096042017-05-02 18:54:44 -070074
Elyes Haouas75750912023-08-21 20:39:25 +020075config SOC_INTEL_COFFEELAKE
76 bool
77 select SOC_INTEL_CANNONLAKE_BASE
Elyes Haouas75750912023-08-21 20:39:25 +020078 select HAVE_EXP_X86_64_SUPPORT
Elyes Haouas75750912023-08-21 20:39:25 +020079 select HECI_DISABLE_USING_SMM
80 select INTEL_CAR_NEM
Elyes Haouas75750912023-08-21 20:39:25 +020081
82config SOC_INTEL_WHISKEYLAKE
83 bool
84 select SOC_INTEL_CANNONLAKE_BASE
Elyes Haouas75750912023-08-21 20:39:25 +020085 select HECI_DISABLE_USING_SMM
86 select INTEL_CAR_NEM_ENHANCED
Elyes Haouas75750912023-08-21 20:39:25 +020087
88config SOC_INTEL_COMETLAKE
89 bool
90 select SOC_INTEL_CANNONLAKE_BASE
Elyes Haouas75750912023-08-21 20:39:25 +020091 select INTEL_CAR_NEM_ENHANCED
92 select PMC_IPC_ACPI_INTERFACE if DISABLE_HECI1_AT_PRE_BOOT
Elyes Haouas75750912023-08-21 20:39:25 +020093 select SOC_INTEL_COMMON_BLOCK_HECI1_DISABLE_USING_PMC_IPC
94 select SOC_INTEL_COMMON_BASECODE
95 select SOC_INTEL_COMMON_BASECODE_RAMTOP
96
97config SOC_INTEL_COMETLAKE_1
98 bool
99 select SOC_INTEL_COMETLAKE
100
101config SOC_INTEL_COMETLAKE_2
102 bool
103 select SOC_INTEL_COMETLAKE
104
Jonathon Hall4dfa9062023-09-27 13:04:11 -0400105config SOC_INTEL_COMETLAKE_1_2
106 bool
107 select SOC_INTEL_COMETLAKE
108 select PLATFORM_USES_SECOND_FSP
109 help
110 Support both CML v1 and v2, for boards that may have either stepping.
111 Embeds both FSPs and selects the correct one at runtime. The second
112 FSP consumes about 800 KiB of flash space.
113
114 The first FSP is for CML v1, the second is for CML v2.
115
Elyes Haouas75750912023-08-21 20:39:25 +0200116config SOC_INTEL_COMETLAKE_S
117 bool
118 select SOC_INTEL_COMETLAKE
119
120config SOC_INTEL_COMETLAKE_V
121 bool
122 select SOC_INTEL_COMETLAKE
123
124config SOC_INTEL_CANNONLAKE_PCH_H
125 bool
126
127if SOC_INTEL_CANNONLAKE_BASE
128
Edward O'Callaghanb4a68a52019-12-15 13:30:38 +1100129config MAX_CPUS
130 int
Felix Singerff93c932022-07-22 09:45:45 -0600131 default 20 if SOC_INTEL_CANNONLAKE_PCH_H && SOC_INTEL_COMETLAKE
132 default 16 if SOC_INTEL_CANNONLAKE_PCH_H && SOC_INTEL_COFFEELAKE
133 default 12 if !SOC_INTEL_CANNONLAKE_PCH_H && SOC_INTEL_COMETLAKE
134 default 8
Edward O'Callaghanb4a68a52019-12-15 13:30:38 +1100135
Felix Singerefa5a462021-04-19 16:51:22 +0200136config DIMM_SPD_SIZE
137 default 512
138
Lijian Zhao81096042017-05-02 18:54:44 -0700139config DCACHE_RAM_BASE
140 default 0xfef00000
141
142config DCACHE_RAM_SIZE
143 default 0x40000
144 help
145 The size of the cache-as-ram region required during bootblock
146 and/or romstage.
147
148config DCACHE_BSP_STACK_SIZE
149 hex
V Sowmya1dcc1702019-10-14 14:42:34 +0530150 default 0x20400 if FSP_USES_CB_STACK
Lijian Zhao81096042017-05-02 18:54:44 -0700151 default 0x4000
152 help
153 The amount of anticipated stack usage in CAR by bootblock and
V Sowmya1dcc1702019-10-14 14:42:34 +0530154 other stages. In the case of FSP_USES_CB_STACK default value will be
155 sum of FSP-M stack requirement (128KiB) and CB romstage stack requirement (~1KiB).
Lijian Zhao81096042017-05-02 18:54:44 -0700156
Subrata Banik1d260e62019-09-09 13:55:42 +0530157config FSP_TEMP_RAM_SIZE
158 hex
159 depends on FSP_USES_CB_STACK
160 default 0x10000
161 help
162 The amount of anticipated heap usage in CAR by FSP.
163 Refer to Platform FSP integration guide document to know
164 the exact FSP requirement for Heap setup.
165
Furquan Shaikhc0257dd2018-05-02 23:29:04 -0700166config IFD_CHIPSET
167 string
168 default "cnl"
169
Pratik Prajapati9027e1b2017-08-23 17:37:43 -0700170config IED_REGION_SIZE
171 hex
172 default 0x400000
173
Lijian Zhao0e956f22017-10-22 18:30:39 -0700174config NHLT_DMIC_1CH_16B
175 bool
176 depends on ACPI_NHLT
177 default n
178 help
179 Include DSP firmware settings for 1 channel 16B DMIC array.
180
181config NHLT_DMIC_2CH_16B
182 bool
183 depends on ACPI_NHLT
184 default n
185 help
186 Include DSP firmware settings for 2 channel 16B DMIC array.
187
188config NHLT_DMIC_4CH_16B
189 bool
190 depends on ACPI_NHLT
191 default n
192 help
193 Include DSP firmware settings for 4 channel 16B DMIC array.
194
195config NHLT_MAX98357
196 bool
197 depends on ACPI_NHLT
198 default n
199 help
200 Include DSP firmware settings for headset codec.
201
N, Harshapriya4a1ee4b2017-11-28 14:29:26 -0800202config NHLT_MAX98373
203 bool
204 depends on ACPI_NHLT
205 default n
206 help
207 Include DSP firmware settings for headset codec.
208
Lijian Zhao0e956f22017-10-22 18:30:39 -0700209config NHLT_DA7219
210 bool
211 depends on ACPI_NHLT
212 default n
213 help
214 Include DSP firmware settings for headset codec.
215
Pratik Prajapatic8c741d2017-08-29 11:38:42 -0700216config MAX_ROOT_PORTS
217 int
praveen hodagatta pranesh521e48c2018-09-27 00:00:13 +0800218 default 24 if SOC_INTEL_CANNONLAKE_PCH_H
Lijian Zhaoc85890d2017-10-20 09:19:07 -0700219 default 16
Pratik Prajapatic8c741d2017-08-29 11:38:42 -0700220
Rizwan Qureshia9794602021-04-08 20:31:47 +0530221config MAX_PCIE_CLOCK_SRC
Lijian Zhaod5d89c82019-05-07 14:05:33 -0700222 int
223 default 16 if SOC_INTEL_CANNONLAKE_PCH_H
224 default 6
225
Pratik Prajapati9027e1b2017-08-23 17:37:43 -0700226config SMM_TSEG_SIZE
227 hex
228 default 0x800000
229
Subrata Banike66600e2018-05-10 17:23:56 +0530230config SMM_RESERVED_SIZE
231 hex
232 default 0x200000
233
Lijian Zhao81096042017-05-02 18:54:44 -0700234config PCR_BASE_ADDRESS
235 hex
236 default 0xfd000000
237 help
238 This option allows you to select MMIO Base Address of sideband bus.
239
Andrey Petrov3e2e0502017-06-05 13:22:24 -0700240config CPU_BCLK_MHZ
241 int
242 default 100
243
Aaron Durbin551e4be2018-04-10 09:24:54 -0600244config SOC_INTEL_COMMON_BLOCK_GSPI_CLOCK_MHZ
Lijian Zhaof3885612017-11-09 15:01:33 -0800245 int
246 default 120
247
Michael Niewöhnerdadcbfb2020-10-04 14:48:05 +0200248config CPU_XTAL_HZ
249 default 24000000
250
Chris Chingb8dc63b2017-12-06 14:26:15 -0700251config DRIVERS_I2C_DESIGNWARE_CLOCK_MHZ
252 int
Duncan Laurie695f2fe2018-12-05 12:51:23 -0800253 default 216
Chris Chingb8dc63b2017-12-06 14:26:15 -0700254
Lijian Zhao32111172017-08-16 11:40:03 -0700255config SOC_INTEL_COMMON_BLOCK_GSPI_MAX
256 int
257 default 3
258
Subrata Banikc4986eb2018-05-09 14:55:09 +0530259config SOC_INTEL_I2C_DEV_MAX
260 int
praveen hodagatta pranesh521e48c2018-09-27 00:00:13 +0800261 default 4 if SOC_INTEL_CANNONLAKE_PCH_H
Subrata Banikc4986eb2018-05-09 14:55:09 +0530262 default 6
263
Nico Huber99954182019-05-29 23:33:06 +0200264config CONSOLE_UART_BASE_ADDRESS
265 hex
266 default 0xfe032000
267 depends on INTEL_LPSS_UART_FOR_CONSOLE
268
Lijian Zhao8465a812017-07-11 12:33:22 -0700269# Clock divider parameters for 115200 baud rate
270config SOC_INTEL_COMMON_LPSS_UART_CLK_M_VAL
271 hex
272 default 0x30
273
274config SOC_INTEL_COMMON_LPSS_UART_CLK_N_VAL
275 hex
276 default 0xc35
277
Lijian Zhao6d7063c2017-08-29 17:26:48 -0700278config VBOOT
Joel Kitching6672bd82019-04-10 16:06:21 +0800279 select VBOOT_MUST_REQUEST_DISPLAY
Lijian Zhao6d7063c2017-08-29 17:26:48 -0700280 select VBOOT_STARTS_IN_BOOTBLOCK
281 select VBOOT_VBNV_CMOS
282 select VBOOT_VBNV_CMOS_BACKUP_TO_FLASH
283
Patrick Georgi6539e102018-09-13 11:48:43 -0400284config CBFS_SIZE
Patrick Georgi6539e102018-09-13 11:48:43 -0400285 default 0x200000
286
Rizwan Qureshi8aadab72019-02-17 11:31:21 +0530287config MB_HAS_ACTIVE_HIGH_SD_PWR_ENABLE
288 bool
289 default n
290 help
291 Select this if the board has a SD_PWR_ENABLE pin connected to a
292 active high sensing load switch to turn on power to the card reader.
293 This will enable a workaround in ASL _PS3 and _PS0 methods to force
294 SD_PWR_ENABLE to stay low in D3.
295
Patrick Georgi6539e102018-09-13 11:48:43 -0400296config FSP_HEADER_PATH
Subrata Banik6527b1a2019-01-29 11:04:25 +0530297 default "3rdparty/fsp/CoffeeLakeFspBinPkg/Include/" if SOC_INTEL_COFFEELAKE || SOC_INTEL_WHISKEYLAKE
Felix Singere1af5b82020-08-31 19:51:52 +0000298 default "3rdparty/fsp/CometLakeFspBinPkg/CometLake1/Include/" if SOC_INTEL_COMETLAKE_1
Jonathon Hall4dfa9062023-09-27 13:04:11 -0400299 # CML v1/v2 headers are equivalent (differ only in comments) so build
300 # against v2 arbitrarily.
301 default "3rdparty/fsp/CometLakeFspBinPkg/CometLake2/Include/" if SOC_INTEL_COMETLAKE_2 || SOC_INTEL_COMETLAKE_1_2
Felix Singer923b1752020-08-31 19:56:53 +0000302 default "3rdparty/fsp/CometLakeFspBinPkg/CometLakeS/Include/" if SOC_INTEL_COMETLAKE_S
303 default "3rdparty/fsp/CometLakeFspBinPkg/CometLakeV/Include/" if SOC_INTEL_COMETLAKE_V
Patrick Georgi6539e102018-09-13 11:48:43 -0400304
305config FSP_FD_PATH
Johanna Schander0b82b3d2019-12-06 18:32:58 +0100306 default "3rdparty/fsp/CoffeeLakeFspBinPkg/Fsp.fd" if SOC_INTEL_COFFEELAKE || SOC_INTEL_WHISKEYLAKE
Jonathon Hall4dfa9062023-09-27 13:04:11 -0400307 default "3rdparty/fsp/CometLakeFspBinPkg/CometLake1/Fsp.fd" if SOC_INTEL_COMETLAKE_1 || SOC_INTEL_COMETLAKE_1_2
Felix Singer923b1752020-08-31 19:56:53 +0000308 default "3rdparty/fsp/CometLakeFspBinPkg/CometLake2/Fsp.fd" if SOC_INTEL_COMETLAKE_2
309 default "3rdparty/fsp/CometLakeFspBinPkg/CometLakeS/Fsp.fd" if SOC_INTEL_COMETLAKE_S
310 default "3rdparty/fsp/CometLakeFspBinPkg/CometLakeV/Fsp.fd" if SOC_INTEL_COMETLAKE_V
Patrick Georgi6539e102018-09-13 11:48:43 -0400311
Jonathon Hall4dfa9062023-09-27 13:04:11 -0400312config FSP_FD_PATH_2
313 default "3rdparty/fsp/CometLakeFspBinPkg/CometLake2/Fsp.fd" if SOC_INTEL_COMETLAKE_1_2
314
Kane Chen37172562019-04-11 21:55:20 +0800315config SOC_INTEL_CANNONLAKE_DEBUG_CONSENT
316 int "Debug Consent for CNL"
317 # USB DBC is more common for developers so make this default to 3 if
318 # SOC_INTEL_DEBUG_CONSENT=y
319 default 3 if SOC_INTEL_DEBUG_CONSENT
320 default 0
321 help
322 This is to control debug interface on SOC.
323 Setting non-zero value will allow to use DBC or DCI to debug SOC.
324 PlatformDebugConsent in FspmUpd.h has the details.
325
Subrata Banik5ee4c122019-07-05 06:43:46 +0530326config PRERAM_CBMEM_CONSOLE_SIZE
327 hex
328 default 0xe00
329
Patrick Rudolph5fffb5e2019-07-25 11:55:30 +0200330config INTEL_TXT_BIOSACM_ALIGNMENT
331 hex
332 default 0x40000 # 256KB
333
Michael Niewöhnerfca152c2020-12-20 18:01:26 +0100334config INTEL_GMA_BCLV_OFFSET
335 default 0xc8258
336
337config INTEL_GMA_BCLV_WIDTH
338 default 32
339
340config INTEL_GMA_BCLM_OFFSET
341 default 0xc8254
342
343config INTEL_GMA_BCLM_WIDTH
344 default 32
345
Lijian Zhao81096042017-05-02 18:54:44 -0700346endif