blob: 468a0baa5764f55706df7846b3342a7fd570da66 [file] [log] [blame]
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -07001config SOC_INTEL_ELKHARTLAKE
2 bool
3 help
4 Intel Elkhartlake support
5
6if SOC_INTEL_ELKHARTLAKE
7
8config CPU_SPECIFIC_OPTIONS
9 def_bool y
10 select ACPI_INTEL_HARDWARE_SLEEP_VALUES
Angel Pons8e035e32021-06-22 12:58:20 +020011 select ARCH_X86
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -070012 select BOOT_DEVICE_SUPPORTS_WRITES
13 select CACHE_MRC_SETTINGS
14 select CPU_INTEL_COMMON
15 select CPU_INTEL_FIRMWARE_INTERFACE_TABLE
Michael Niewöhnerfe6070f2020-10-04 15:16:04 +020016 select CPU_SUPPORTS_PM_TIMER_EMULATION
Subrata Banik34f26b22022-02-10 12:38:02 +053017 select DISPLAY_FSP_VERSION_INFO
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -070018 select FSP_COMPRESS_FSP_S_LZ4
19 select FSP_M_XIP
Subrata Banik4ed9f9a2020-10-31 22:01:55 +053020 select FSP_STATUS_GLOBAL_RESET_REQUIRED_3
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -070021 select GENERIC_GPIO_LIB
22 select HAVE_FSP_GOP
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -070023 select HAVE_SMI_HANDLER
24 select IDT_IN_EVERY_STAGE
Subrata Banike9d06532022-01-28 23:06:58 +053025 select INTEL_CAR_NEM
Subrata Banik34f26b22022-02-10 12:38:02 +053026 select INTEL_DESCRIPTOR_MODE_CAPABLE
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -070027 select INTEL_GMA_ACPI
28 select INTEL_GMA_ADD_VBT if RUN_FSP_GOP
Aamir Bohra30cca6c2021-02-04 20:57:51 +053029 select MP_SERVICES_PPI_V1
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -070030 select MRC_SETTINGS_PROTECT
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -070031 select PARALLEL_MP_AP_WORK
Tan, Lean Shengece0fe32020-09-03 07:32:48 -070032 select PLATFORM_USES_FSP2_1
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -070033 select PMC_GLOBAL_RESET_ENABLE_LOCK
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -070034 select SOC_INTEL_COMMON
35 select SOC_INTEL_COMMON_ACPI_WAKE_SOURCE
36 select SOC_INTEL_COMMON_BLOCK
37 select SOC_INTEL_COMMON_BLOCK_ACPI
Michael Niewöhner02275be2020-11-12 23:50:37 +010038 select SOC_INTEL_COMMON_BLOCK_ACPI_CPPC
Angel Pons98f672a2021-02-19 19:42:10 +010039 select SOC_INTEL_COMMON_BLOCK_ACPI_GPIO
Michael Niewöhner8a6c34e2021-01-01 21:26:42 +010040 select SOC_INTEL_COMMON_BLOCK_ACPI_LPIT
Tim Wawrzynczak46c5f8f2021-07-01 08:45:47 -060041 select SOC_INTEL_COMMON_BLOCK_ACPI_PEP
Subrata Banik21974ab2020-10-31 21:40:43 +053042 select SOC_INTEL_COMMON_BLOCK_CAR
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -070043 select SOC_INTEL_COMMON_BLOCK_CHIP_CONFIG
44 select SOC_INTEL_COMMON_BLOCK_CPU
45 select SOC_INTEL_COMMON_BLOCK_CPU_MPINIT
Angel Ponsa4cd9112021-02-19 19:23:38 +010046 select SOC_INTEL_COMMON_BLOCK_CPU_SMMRELOCATE
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -070047 select SOC_INTEL_COMMON_BLOCK_GPIO_DUAL_ROUTE_SUPPORT
48 select SOC_INTEL_COMMON_BLOCK_GSPI_VERSION_2
49 select SOC_INTEL_COMMON_BLOCK_HDA
Subrata Banik34f26b22022-02-10 12:38:02 +053050 select HAVE_INTEL_FSP_REPO
Subrata Banike49a6152022-01-28 23:03:55 +053051 select HECI_DISABLE_USING_SMM if DISABLE_HECI1_AT_PRE_BOOT
Lean Sheng Tan75020002021-06-30 01:47:48 -070052 select SOC_INTEL_COMMON_BLOCK_PMC_EPOC
53 select SOC_INTEL_COMMON_BLOCK_POWER_LIMIT
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -070054 select SOC_INTEL_COMMON_BLOCK_SA
55 select SOC_INTEL_COMMON_BLOCK_SCS
56 select SOC_INTEL_COMMON_BLOCK_SMM
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -070057 select SOC_INTEL_COMMON_BLOCK_SMM_IO_TRAP
Subrata Banik4ed9f9a2020-10-31 22:01:55 +053058 select SOC_INTEL_COMMON_FSP_RESET
Angel Ponseb90c512022-07-18 14:41:24 +020059 select SOC_INTEL_COMMON_PCH_CLIENT
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -070060 select SOC_INTEL_COMMON_RESET
Subrata Banikaf27ac22022-02-18 00:44:15 +053061 select SOC_INTEL_MEM_MAPPED_PM_CONFIGURATION
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -070062 select SSE2
63 select SUPPORT_CPU_UCODE_IN_CBFS
64 select TSC_MONOTONIC_TIMER
65 select UDELAY_TSC
66 select UDK_202005_BINDING
Subrata Banik34f26b22022-02-10 12:38:02 +053067 select USE_FSP_NOTIFY_PHASE_POST_PCI_ENUM
Uwe Poeche954af522022-05-24 08:45:13 +020068 select SOC_INTEL_RAPL_DISABLE_VIA_MCHBAR
Tan, Lean Shengece0fe32020-09-03 07:32:48 -070069
70config MAX_CPUS
71 int
72 default 4
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -070073
74config DCACHE_RAM_BASE
75 default 0xfef00000
76
77config DCACHE_RAM_SIZE
Tan, Lean Shengece0fe32020-09-03 07:32:48 -070078 default 0xc0000
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -070079 help
80 The size of the cache-as-ram region required during bootblock
81 and/or romstage.
82
83config DCACHE_BSP_STACK_SIZE
84 hex
Tan, Lean Shengece0fe32020-09-03 07:32:48 -070085 default 0x30000
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -070086 help
87 The amount of anticipated stack usage in CAR by bootblock and
Tan, Lean Shengece0fe32020-09-03 07:32:48 -070088 other stages. In the case of FSP_USES_CB_STACK default value will be
89 sum of FSP-M stack requirement (192KiB) and CB romstage stack requirement (~1KiB).
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -070090
91config FSP_TEMP_RAM_SIZE
92 hex
Tan, Lean Shengece0fe32020-09-03 07:32:48 -070093 default 0x40000
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -070094 help
95 The amount of anticipated heap usage in CAR by FSP.
96 Refer to Platform FSP integration guide document to know
97 the exact FSP requirement for Heap setup.
98
99config IFD_CHIPSET
100 string
101 default "ehl"
102
103config IED_REGION_SIZE
104 hex
Tan, Lean Shengece0fe32020-09-03 07:32:48 -0700105 default 0x0
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -0700106
107config HEAP_SIZE
108 hex
109 default 0x8000
110
111config MAX_ROOT_PORTS
112 int
Tan, Lean Shengece0fe32020-09-03 07:32:48 -0700113 default 7
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -0700114
Lean Sheng Tanc6c54432021-05-30 09:08:35 -0700115config MAX_SATA_PORTS
116 int
117 default 2
118
Rizwan Qureshia9794602021-04-08 20:31:47 +0530119config MAX_PCIE_CLOCK_SRC
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -0700120 int
121 default 6
122
123config SMM_TSEG_SIZE
124 hex
Tan, Lean Shengece0fe32020-09-03 07:32:48 -0700125 default 0x1000000
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -0700126
127config SMM_RESERVED_SIZE
128 hex
129 default 0x200000
130
131config PCR_BASE_ADDRESS
132 hex
133 default 0xfd000000
134 help
135 This option allows you to select MMIO Base Address of sideband bus.
136
Shelley Chen4e9bb332021-10-20 15:43:45 -0700137config ECAM_MMCONF_BASE_ADDRESS
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -0700138 default 0xc0000000
139
140config CPU_BCLK_MHZ
141 int
142 default 100
143
144config SOC_INTEL_COMMON_BLOCK_GSPI_CLOCK_MHZ
145 int
146 default 120
147
Michael Niewöhnerdadcbfb2020-10-04 14:48:05 +0200148config CPU_XTAL_HZ
149 default 38400000
150
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -0700151config DRIVERS_I2C_DESIGNWARE_CLOCK_MHZ
152 int
153 default 133
154
155config SOC_INTEL_COMMON_BLOCK_GSPI_MAX
156 int
157 default 3
158
159config SOC_INTEL_I2C_DEV_MAX
160 int
Tan, Lean Shengece0fe32020-09-03 07:32:48 -0700161 default 8
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -0700162
163config SOC_INTEL_UART_DEV_MAX
164 int
165 default 3
166
167config CONSOLE_UART_BASE_ADDRESS
168 hex
Tan, Lean Shengece0fe32020-09-03 07:32:48 -0700169 default 0xfe042000
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -0700170 depends on INTEL_LPSS_UART_FOR_CONSOLE
171
172# Clock divider parameters for 115200 baud rate
Lean Sheng Tan471dca72021-07-19 01:57:16 -0700173# Baudrate = (UART source clock * M) /(N *16)
174# EHL UART source clock: 120MHz
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -0700175config SOC_INTEL_COMMON_LPSS_UART_CLK_M_VAL
176 hex
Lean Sheng Tan471dca72021-07-19 01:57:16 -0700177 default 0x25a
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -0700178
179config SOC_INTEL_COMMON_LPSS_UART_CLK_N_VAL
180 hex
Lean Sheng Tan471dca72021-07-19 01:57:16 -0700181 default 0x7fff
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -0700182
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -0700183config VBOOT
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -0700184 select VBOOT_MUST_REQUEST_DISPLAY
185 select VBOOT_STARTS_IN_BOOTBLOCK
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -0700186
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -0700187config CBFS_SIZE
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -0700188 default 0x200000
189
190config FSP_HEADER_PATH
Lean Sheng Tan79fcadb2021-06-04 08:54:29 -0700191 default "3rdparty/fsp/ElkhartLakeFspBinPkg/Include/"
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -0700192
193config FSP_FD_PATH
Lean Sheng Tan79fcadb2021-06-04 08:54:29 -0700194 string
195 depends on FSP_USE_REPO
196 default "3rdparty/fsp/ElkhartLakeFspBinPkg/FspBin/FSPRel.bin"
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -0700197
Lean Sheng Tan5cd75792021-06-09 13:58:12 -0700198config PSE_ENABLE
199 bool "Enable PSE ARM controller"
200 help
201 Enable PSE IP. The PSE describes the integrated programmable
202 service engine that is designed together with x86 Atom cores
203 as an Asymmetric Multi-Processing (AMP) system.
204
205config ADD_PSE_IMAGE_TO_CBFS
206 bool "Add PSE Firmware to CBFS"
207 depends on PSE_ENABLE
208 default n
209 help
210 PSE FW binary is required to use PSE dedicated peripherals from
211 x86 subsystem. Once PSE is enabled, the FW will be loaded from
212 CBFS by FSP and executed.
213
214config PSE_IMAGE_FILE
215 string "PSE binary path and filename"
216 depends on ADD_PSE_IMAGE_TO_CBFS
217 help
218 The path and filename of the PSE binary.
219
220config PSE_FW_FILE_SIZE_KIB
221 hex "Memory buffer (KiB) for PSE FW image"
222 depends on ADD_PSE_IMAGE_TO_CBFS
223 default 0x200
224 help
225 It is recommended to allocate at least 512 KiB for PSE FW.
226
227config PSE_CONFIG_BUFFER_SIZE_KIB
228 hex "Memory buffer (KiB) for PSE config data"
229 depends on ADD_PSE_IMAGE_TO_CBFS
230 default 0x100
231 help
232 It is recommended to allocate at least 256 KiB for PSE config
233 data (FSP will append PSE config data to memory region right
234 after PSE FW memory region).
235
Mario Scheithauereda66c32022-04-26 13:50:52 +0200236config EHL_TSN_DRIVER
237 bool
238 default n
239 help
240 Enable TSN GbE driver to provide board specific settings in the GBE MAC.
241 As an example of a possible change, the MAC address could be adjusted.
242
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -0700243config SOC_INTEL_ELKHARTLAKE_DEBUG_CONSENT
244 int "Debug Consent for EHL"
245 # USB DBC is more common for developers so make this default to 3 if
246 # SOC_INTEL_DEBUG_CONSENT=y
247 default 3 if SOC_INTEL_DEBUG_CONSENT
248 default 0
249 help
250 This is to control debug interface on SOC.
251 Setting non-zero value will allow to use DBC or DCI to debug SOC.
252 PlatformDebugConsent in FspmUpd.h has the details.
253
254 Desired platform debug type are
255 0:Disabled, 1:Enabled (DCI OOB+[DbC]), 2:Enabled (DCI OOB),
256 3:Enabled (USB3 DbC), 4:Enabled (XDP/MIPI60), 5:Enabled (USB2 DbC),
257 6:Enable (2-wire DCI OOB), 7:Manual
258
259config PRERAM_CBMEM_CONSOLE_SIZE
260 hex
261 default 0x1400
Werner Zeh00998322022-01-18 12:31:08 +0100262
263config SOC_INTEL_ELKHARTLAKE_TCO_NO_REBOOT_EN
264 bool "Disable reset on second TCO expiration"
265 depends on SOC_INTEL_COMMON_BLOCK_TCO
266 default n
267 help
268 Setting this option will prevent a host reset if the TCO timer expires
269 for the second time. Since this feature is not exposed to the OS in the
270 standard TCO interface, this setting can be enabled on firmware level.
271 This might be useful depending on the TCO policy.
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -0700272endif