Ravi Sarawadi | b8224f4 | 2022-04-10 23:31:24 -0700 | [diff] [blame] | 1 | config SOC_INTEL_METEORLAKE |
| 2 | bool |
Ravi Sarawadi | 91ffac8 | 2022-05-07 16:37:09 -0700 | [diff] [blame] | 3 | help |
| 4 | Intel Meteorlake support |
Ravi Sarawadi | b8224f4 | 2022-04-10 23:31:24 -0700 | [diff] [blame] | 5 | |
| 6 | if SOC_INTEL_METEORLAKE |
| 7 | |
| 8 | config CPU_SPECIFIC_OPTIONS |
| 9 | def_bool y |
Ravi Sarawadi | 91ffac8 | 2022-05-07 16:37:09 -0700 | [diff] [blame] | 10 | select ACPI_INTEL_HARDWARE_SLEEP_VALUES |
Ravi Sarawadi | b8224f4 | 2022-04-10 23:31:24 -0700 | [diff] [blame] | 11 | select ARCH_X86 |
| 12 | select BOOT_DEVICE_SUPPORTS_WRITES |
Ravi Sarawadi | 8069b5d | 2022-04-10 23:36:52 -0700 | [diff] [blame] | 13 | select CACHE_MRC_SETTINGS |
| 14 | select CPU_INTEL_COMMON |
Ravi Sarawadi | 91ffac8 | 2022-05-07 16:37:09 -0700 | [diff] [blame] | 15 | select CPU_INTEL_FIRMWARE_INTERFACE_TABLE |
| 16 | select CPU_SUPPORTS_INTEL_TME |
| 17 | select CPU_SUPPORTS_PM_TIMER_EMULATION |
Subrata Banik | e96993d | 2022-07-09 22:06:45 +0000 | [diff] [blame] | 18 | select DEFAULT_X2APIC_LATE_WORKAROUND |
Subrata Banik | e88bee7 | 2022-06-27 16:51:44 +0530 | [diff] [blame] | 19 | select DISPLAY_FSP_VERSION_INFO |
Ravi Sarawadi | 91ffac8 | 2022-05-07 16:37:09 -0700 | [diff] [blame] | 20 | select DRIVERS_INTEL_USB4_RETIMER |
Ravi Sarawadi | e02fd83 | 2022-05-08 00:27:31 -0700 | [diff] [blame] | 21 | select DRIVERS_USB_ACPI |
Ravi Sarawadi | 91ffac8 | 2022-05-07 16:37:09 -0700 | [diff] [blame] | 22 | select FSP_COMPRESS_FSP_S_LZ4 |
| 23 | select FAST_SPI_SUPPORTS_EXT_BIOS_WINDOW |
Ravi Sarawadi | 8069b5d | 2022-04-10 23:36:52 -0700 | [diff] [blame] | 24 | select FSP_M_XIP |
Ravi Sarawadi | 91ffac8 | 2022-05-07 16:37:09 -0700 | [diff] [blame] | 25 | select FSP_STATUS_GLOBAL_RESET_REQUIRED_3 |
Subrata Banik | e88bee7 | 2022-06-27 16:51:44 +0530 | [diff] [blame] | 26 | select FSP_USES_CB_DEBUG_EVENT_HANDLER |
| 27 | select FSPS_HAS_ARCH_UPD |
Ravi Sarawadi | 91ffac8 | 2022-05-07 16:37:09 -0700 | [diff] [blame] | 28 | select GENERIC_GPIO_LIB |
Subrata Banik | e88bee7 | 2022-06-27 16:51:44 +0530 | [diff] [blame] | 29 | select HAVE_DEBUG_RAM_SETUP |
Ravi Sarawadi | 91ffac8 | 2022-05-07 16:37:09 -0700 | [diff] [blame] | 30 | select HAVE_FSP_GOP |
Ravi Sarawadi | 91ffac8 | 2022-05-07 16:37:09 -0700 | [diff] [blame] | 31 | select HAVE_SMI_HANDLER |
Ravi Sarawadi | b8224f4 | 2022-04-10 23:31:24 -0700 | [diff] [blame] | 32 | select IDT_IN_EVERY_STAGE |
| 33 | select INTEL_CAR_NEM |
Subrata Banik | 0d6d228 | 2022-07-09 22:17:02 +0000 | [diff] [blame] | 34 | select INTEL_DESCRIPTOR_MODE_CAPABLE |
Ravi Sarawadi | 91ffac8 | 2022-05-07 16:37:09 -0700 | [diff] [blame] | 35 | select INTEL_GMA_ACPI |
Ravi Sarawadi | 8069b5d | 2022-04-10 23:36:52 -0700 | [diff] [blame] | 36 | select INTEL_GMA_ADD_VBT if RUN_FSP_GOP |
Ravi Sarawadi | 91ffac8 | 2022-05-07 16:37:09 -0700 | [diff] [blame] | 37 | select INTEL_TME |
Subrata Banik | 0d6d228 | 2022-07-09 22:17:02 +0000 | [diff] [blame] | 38 | select IOAPIC |
Ravi Sarawadi | 91ffac8 | 2022-05-07 16:37:09 -0700 | [diff] [blame] | 39 | select MICROCODE_BLOB_UNDISCLOSED |
Subrata Banik | 0d6d228 | 2022-07-09 22:17:02 +0000 | [diff] [blame] | 40 | select MRC_SETTINGS_PROTECT |
Subrata Banik | 0d6d228 | 2022-07-09 22:17:02 +0000 | [diff] [blame] | 41 | select PARALLEL_MP_AP_WORK |
Ravi Sarawadi | 91ffac8 | 2022-05-07 16:37:09 -0700 | [diff] [blame] | 42 | select PLATFORM_USES_FSP2_3 |
| 43 | select PMC_GLOBAL_RESET_ENABLE_LOCK |
Ravi Sarawadi | b8224f4 | 2022-04-10 23:31:24 -0700 | [diff] [blame] | 44 | select SOC_INTEL_COMMON |
Ravi Sarawadi | e02fd83 | 2022-05-08 00:27:31 -0700 | [diff] [blame] | 45 | select SOC_INTEL_COMMON_ACPI_WAKE_SOURCE |
Ravi Sarawadi | 8069b5d | 2022-04-10 23:36:52 -0700 | [diff] [blame] | 46 | select SOC_INTEL_COMMON_BLOCK |
Ravi Sarawadi | e02fd83 | 2022-05-08 00:27:31 -0700 | [diff] [blame] | 47 | select SOC_INTEL_COMMON_BLOCK_ACPI |
| 48 | select SOC_INTEL_COMMON_BLOCK_ACPI_CPPC |
| 49 | select SOC_INTEL_COMMON_BLOCK_ACPI_GPIO |
| 50 | select SOC_INTEL_COMMON_BLOCK_ACPI_PEP |
| 51 | select SOC_INTEL_COMMON_BLOCK_ACPI_PEP_LPM_REQ |
Ravi Sarawadi | b8224f4 | 2022-04-10 23:31:24 -0700 | [diff] [blame] | 52 | select SOC_INTEL_COMMON_BLOCK_CAR |
Ravi Sarawadi | 8069b5d | 2022-04-10 23:36:52 -0700 | [diff] [blame] | 53 | select SOC_INTEL_COMMON_BLOCK_CHIP_CONFIG |
Ravi Sarawadi | b8224f4 | 2022-04-10 23:31:24 -0700 | [diff] [blame] | 54 | select SOC_INTEL_COMMON_BLOCK_CPU |
Ravi Sarawadi | 91ffac8 | 2022-05-07 16:37:09 -0700 | [diff] [blame] | 55 | select SOC_INTEL_COMMON_BLOCK_CPU_MPINIT |
| 56 | select SOC_INTEL_COMMON_BLOCK_CPU_SMMRELOCATE |
| 57 | select SOC_INTEL_COMMON_BLOCK_DTT |
| 58 | select SOC_INTEL_COMMON_BLOCK_GPIO_DUAL_ROUTE_SUPPORT |
Ravi Sarawadi | b8224f4 | 2022-04-10 23:31:24 -0700 | [diff] [blame] | 59 | select SOC_INTEL_COMMON_BLOCK_GSPI_VERSION_2 |
Ravi Sarawadi | 91ffac8 | 2022-05-07 16:37:09 -0700 | [diff] [blame] | 60 | select SOC_INTEL_COMMON_BLOCK_HDA |
| 61 | select SOC_INTEL_COMMON_BLOCK_HECI1_DISABLE_USING_PMC_IPC if DISABLE_HECI1_AT_PRE_BOOT |
| 62 | select SOC_INTEL_COMMON_BLOCK_IPU |
| 63 | select SOC_INTEL_COMMON_BLOCK_IOE_P2SB |
Ravi Sarawadi | 8069b5d | 2022-04-10 23:36:52 -0700 | [diff] [blame] | 64 | select SOC_INTEL_COMMON_BLOCK_MEMINIT |
Ravi Sarawadi | 91ffac8 | 2022-05-07 16:37:09 -0700 | [diff] [blame] | 65 | select SOC_INTEL_COMMON_BLOCK_PCIE_RTD3 |
| 66 | select SOC_INTEL_COMMON_BLOCK_PMC_EPOC |
| 67 | select SOC_INTEL_COMMON_BLOCK_POWER_LIMIT |
Ravi Sarawadi | b8224f4 | 2022-04-10 23:31:24 -0700 | [diff] [blame] | 68 | select SOC_INTEL_COMMON_BLOCK_SA |
Ravi Sarawadi | 91ffac8 | 2022-05-07 16:37:09 -0700 | [diff] [blame] | 69 | select SOC_INTEL_COMMON_BLOCK_SMM |
| 70 | select SOC_INTEL_COMMON_BLOCK_SMM_IO_TRAP |
| 71 | select SOC_INTEL_COMMON_BLOCK_TCSS |
| 72 | select SOC_INTEL_COMMON_BLOCK_THERMAL_BEHIND_PMC |
| 73 | select SOC_INTEL_COMMON_BLOCK_USB4 |
| 74 | select SOC_INTEL_COMMON_BLOCK_USB4_PCIE |
| 75 | select SOC_INTEL_COMMON_BLOCK_USB4_XHCI |
| 76 | select SOC_INTEL_COMMON_BLOCK_XHCI |
| 77 | select SOC_INTEL_COMMON_BLOCK_XHCI_ELOG |
| 78 | select SOC_INTEL_COMMON_BASECODE |
| 79 | select SOC_INTEL_COMMON_FSP_RESET |
Ravi Sarawadi | b8224f4 | 2022-04-10 23:31:24 -0700 | [diff] [blame] | 80 | select SOC_INTEL_COMMON_PCH_BASE |
| 81 | select SOC_INTEL_COMMON_RESET |
Ravi Sarawadi | 91ffac8 | 2022-05-07 16:37:09 -0700 | [diff] [blame] | 82 | select SOC_INTEL_COMMON_BLOCK_IOC |
| 83 | select SOC_INTEL_CSE_SET_EOP |
| 84 | select SOC_INTEL_MEM_MAPPED_PM_CONFIGURATION |
Ravi Sarawadi | b8224f4 | 2022-04-10 23:31:24 -0700 | [diff] [blame] | 85 | select SSE2 |
| 86 | select SUPPORT_CPU_UCODE_IN_CBFS |
| 87 | select TSC_MONOTONIC_TIMER |
| 88 | select UDELAY_TSC |
Ravi Sarawadi | 91ffac8 | 2022-05-07 16:37:09 -0700 | [diff] [blame] | 89 | select UDK_202111_BINDING |
Ravi Sarawadi | 91ffac8 | 2022-05-07 16:37:09 -0700 | [diff] [blame] | 90 | |
| 91 | config MAX_CPUS |
| 92 | int |
| 93 | default 22 |
Ravi Sarawadi | b8224f4 | 2022-04-10 23:31:24 -0700 | [diff] [blame] | 94 | |
| 95 | config DCACHE_RAM_BASE |
| 96 | default 0xfef00000 |
| 97 | |
| 98 | config DCACHE_RAM_SIZE |
| 99 | default 0xc0000 |
| 100 | help |
| 101 | The size of the cache-as-ram region required during bootblock |
| 102 | and/or romstage. |
| 103 | |
| 104 | config DCACHE_BSP_STACK_SIZE |
| 105 | hex |
| 106 | default 0x80400 |
| 107 | help |
| 108 | The amount of anticipated stack usage in CAR by bootblock and |
| 109 | other stages. In the case of FSP_USES_CB_STACK default value will be |
| 110 | sum of FSP-M stack requirement(512KiB) and CB romstage stack requirement |
| 111 | (~1KiB). |
| 112 | |
| 113 | config FSP_TEMP_RAM_SIZE |
| 114 | hex |
| 115 | default 0x20000 |
| 116 | help |
| 117 | The amount of anticipated heap usage in CAR by FSP. |
| 118 | Refer to Platform FSP integration guide document to know |
| 119 | the exact FSP requirement for Heap setup. |
| 120 | |
Ravi Sarawadi | 91ffac8 | 2022-05-07 16:37:09 -0700 | [diff] [blame] | 121 | config CHIPSET_DEVICETREE |
| 122 | string |
| 123 | default "soc/intel/meteorlake/chipset.cb" |
| 124 | |
| 125 | config EXT_BIOS_WIN_BASE |
| 126 | default 0xf8000000 |
| 127 | |
| 128 | config EXT_BIOS_WIN_SIZE |
| 129 | default 0x2000000 |
| 130 | |
Ravi Sarawadi | b8224f4 | 2022-04-10 23:31:24 -0700 | [diff] [blame] | 131 | config IFD_CHIPSET |
| 132 | string |
Subrata Banik | d624e74 | 2022-07-06 06:45:57 +0000 | [diff] [blame] | 133 | default "mtl" |
Ravi Sarawadi | b8224f4 | 2022-04-10 23:31:24 -0700 | [diff] [blame] | 134 | |
| 135 | config IED_REGION_SIZE |
| 136 | hex |
| 137 | default 0x400000 |
| 138 | |
| 139 | config HEAP_SIZE |
| 140 | hex |
| 141 | default 0x10000 |
| 142 | |
Subrata Banik | a33bcb9 | 2022-07-06 07:07:26 +0000 | [diff] [blame] | 143 | # Intel recommends reserving the PCIe TBT root port resources as below: |
Ravi Sarawadi | 91ffac8 | 2022-05-07 16:37:09 -0700 | [diff] [blame] | 144 | # - 42 buses |
| 145 | # - 194 MiB Non-prefetchable memory |
| 146 | # - 448 MiB Prefetchable memory |
| 147 | if SOC_INTEL_ENABLE_USB4_PCIE_RESOURCES |
| 148 | |
| 149 | config PCIEXP_HOTPLUG_BUSES |
| 150 | int |
| 151 | default 42 |
| 152 | |
| 153 | config PCIEXP_HOTPLUG_MEM |
| 154 | hex |
| 155 | default 0xc200000 |
| 156 | |
| 157 | config PCIEXP_HOTPLUG_PREFETCH_MEM |
| 158 | hex |
| 159 | default 0x1c000000 |
| 160 | |
| 161 | endif # SOC_INTEL_ENABLE_USB4_PCIE_RESOURCES |
| 162 | |
| 163 | config MAX_TBT_ROOT_PORTS |
| 164 | int |
| 165 | default 4 |
| 166 | |
| 167 | config MAX_ROOT_PORTS |
| 168 | int |
| 169 | default 12 |
| 170 | |
| 171 | config MAX_PCIE_CLOCK_SRC |
| 172 | int |
| 173 | default 9 |
| 174 | |
| 175 | config SMM_TSEG_SIZE |
| 176 | hex |
| 177 | default 0x800000 |
| 178 | |
| 179 | config SMM_RESERVED_SIZE |
| 180 | hex |
| 181 | default 0x200000 |
| 182 | |
Ravi Sarawadi | b8224f4 | 2022-04-10 23:31:24 -0700 | [diff] [blame] | 183 | config PCR_BASE_ADDRESS |
| 184 | hex |
| 185 | default 0xe0000000 |
| 186 | help |
| 187 | This option allows you to select MMIO Base Address of sideband bus. |
| 188 | |
| 189 | config ECAM_MMCONF_BASE_ADDRESS |
| 190 | default 0xc0000000 |
| 191 | |
| 192 | config CPU_BCLK_MHZ |
| 193 | int |
| 194 | default 100 |
| 195 | |
| 196 | config SOC_INTEL_COMMON_BLOCK_GSPI_CLOCK_MHZ |
| 197 | int |
| 198 | default 120 |
| 199 | |
| 200 | config CPU_XTAL_HZ |
| 201 | default 38400000 |
| 202 | |
| 203 | config DRIVERS_I2C_DESIGNWARE_CLOCK_MHZ |
| 204 | int |
| 205 | default 133 |
| 206 | |
| 207 | config SOC_INTEL_COMMON_BLOCK_GSPI_MAX |
| 208 | int |
Subrata Banik | e54a8fd | 2022-07-06 12:54:48 +0000 | [diff] [blame] | 209 | default 3 |
Ravi Sarawadi | b8224f4 | 2022-04-10 23:31:24 -0700 | [diff] [blame] | 210 | |
| 211 | config SOC_INTEL_I2C_DEV_MAX |
| 212 | int |
| 213 | default 6 |
| 214 | |
| 215 | config SOC_INTEL_UART_DEV_MAX |
| 216 | int |
| 217 | default 3 |
| 218 | |
Ravi Sarawadi | 91ffac8 | 2022-05-07 16:37:09 -0700 | [diff] [blame] | 219 | config SOC_INTEL_USB2_DEV_MAX |
| 220 | int |
| 221 | default 10 |
| 222 | |
| 223 | config SOC_INTEL_USB3_DEV_MAX |
| 224 | int |
| 225 | default 2 |
| 226 | |
Ravi Sarawadi | b8224f4 | 2022-04-10 23:31:24 -0700 | [diff] [blame] | 227 | config CONSOLE_UART_BASE_ADDRESS |
| 228 | hex |
Ravi Sarawadi | 91ffac8 | 2022-05-07 16:37:09 -0700 | [diff] [blame] | 229 | default 0xfe02c000 |
Ravi Sarawadi | b8224f4 | 2022-04-10 23:31:24 -0700 | [diff] [blame] | 230 | depends on INTEL_LPSS_UART_FOR_CONSOLE |
| 231 | |
Ravi Sarawadi | 91ffac8 | 2022-05-07 16:37:09 -0700 | [diff] [blame] | 232 | config VBT_DATA_SIZE_KB |
| 233 | int |
| 234 | default 9 |
| 235 | |
Ravi Sarawadi | b8224f4 | 2022-04-10 23:31:24 -0700 | [diff] [blame] | 236 | # Clock divider parameters for 115200 baud rate |
Angel Pons | 054ff5e | 2022-06-26 10:19:53 +0200 | [diff] [blame] | 237 | # Baudrate = (UART source clock * M) /(N *16) |
Ravi Sarawadi | b8224f4 | 2022-04-10 23:31:24 -0700 | [diff] [blame] | 238 | # MTL UART source clock: 120MHz |
| 239 | config SOC_INTEL_COMMON_LPSS_UART_CLK_M_VAL |
| 240 | hex |
| 241 | default 0x25a |
| 242 | |
| 243 | config SOC_INTEL_COMMON_LPSS_UART_CLK_N_VAL |
| 244 | hex |
| 245 | default 0x7fff |
| 246 | |
Ravi Sarawadi | 8069b5d | 2022-04-10 23:36:52 -0700 | [diff] [blame] | 247 | config VBOOT |
Ravi Sarawadi | 91ffac8 | 2022-05-07 16:37:09 -0700 | [diff] [blame] | 248 | select VBOOT_SEPARATE_VERSTAGE |
Ravi Sarawadi | 8069b5d | 2022-04-10 23:36:52 -0700 | [diff] [blame] | 249 | select VBOOT_MUST_REQUEST_DISPLAY |
| 250 | select VBOOT_STARTS_IN_BOOTBLOCK |
| 251 | select VBOOT_VBNV_CMOS |
| 252 | select VBOOT_VBNV_CMOS_BACKUP_TO_FLASH |
| 253 | select VBOOT_X86_SHA256_ACCELERATION |
| 254 | |
Subrata Banik | febd3d7 | 2022-05-30 13:59:25 +0530 | [diff] [blame] | 255 | # Default hash block size is 1KiB. Increasing it to 4KiB to improve |
| 256 | # hashing time as well as read time. |
| 257 | config VBOOT_HASH_BLOCK_SIZE |
| 258 | hex |
| 259 | default 0x1000 |
| 260 | |
Ravi Sarawadi | b8224f4 | 2022-04-10 23:31:24 -0700 | [diff] [blame] | 261 | config CBFS_SIZE |
| 262 | hex |
| 263 | default 0x200000 |
| 264 | |
| 265 | config PRERAM_CBMEM_CONSOLE_SIZE |
| 266 | hex |
Ravi Sarawadi | 91ffac8 | 2022-05-07 16:37:09 -0700 | [diff] [blame] | 267 | default 0x1400 |
Ravi Sarawadi | b8224f4 | 2022-04-10 23:31:24 -0700 | [diff] [blame] | 268 | |
Ravi Sarawadi | 8069b5d | 2022-04-10 23:36:52 -0700 | [diff] [blame] | 269 | config FSP_HEADER_PATH |
| 270 | string "Location of FSP headers" |
| 271 | default "src/vendorcode/intel/fsp/fsp2_0/meteorlake/" |
| 272 | |
| 273 | config FSP_FD_PATH |
| 274 | string |
| 275 | depends on FSP_USE_REPO |
| 276 | default "3rdparty/fsp/MeteorLakeFspBinPkg/Fsp.fd" |
| 277 | |
| 278 | config SOC_INTEL_METEORLAKE_DEBUG_CONSENT |
| 279 | int "Debug Consent for MTL" |
| 280 | # USB DBC is more common for developers so make this default to 3 if |
| 281 | # SOC_INTEL_DEBUG_CONSENT=y |
Ravi Sarawadi | 91ffac8 | 2022-05-07 16:37:09 -0700 | [diff] [blame] | 282 | default 5 if SOC_INTEL_DEBUG_CONSENT |
Ravi Sarawadi | 8069b5d | 2022-04-10 23:36:52 -0700 | [diff] [blame] | 283 | default 0 |
| 284 | help |
| 285 | This is to control debug interface on SOC. |
| 286 | Setting non-zero value will allow to use DBC or DCI to debug SOC. |
| 287 | PlatformDebugConsent in FspmUpd.h has the details. |
| 288 | |
| 289 | Desired platform debug type are |
| 290 | 0:Disabled, 1:Enabled (DCI OOB+[DbC]), 2:Enabled (DCI OOB), |
| 291 | 3:Enabled (USB3 DbC), 4:Enabled (XDP/MIPI60), 5:Enabled (USB2 DbC), |
| 292 | 6:Enable (2-wire DCI OOB), 7:Manual |
| 293 | |
| 294 | config DATA_BUS_WIDTH |
| 295 | int |
| 296 | default 128 |
| 297 | |
| 298 | config DIMMS_PER_CHANNEL |
| 299 | int |
| 300 | default 2 |
| 301 | |
| 302 | config MRC_CHANNEL_WIDTH |
| 303 | int |
| 304 | default 16 |
| 305 | |
Ravi Sarawadi | 91ffac8 | 2022-05-07 16:37:09 -0700 | [diff] [blame] | 306 | config SOC_INTEL_GFX_FRAMEBUFFER_OFFSET |
| 307 | hex |
| 308 | default 0x800000 |
| 309 | |
Subrata Banik | 7c4789d | 2022-07-09 22:41:48 +0000 | [diff] [blame^] | 310 | choice |
| 311 | prompt "Multiprocessor (MP) Initialization configuration to use" |
| 312 | default MTL_USE_FSP_MP_INIT |
| 313 | |
| 314 | config MTL_USE_FSP_MP_INIT |
| 315 | bool "Use FSP MP init" |
| 316 | select MP_SERVICES_PPI_V2 |
| 317 | help |
| 318 | Upon selection, coreboot brings APs from reset and the FSP runs feature programming. |
| 319 | |
| 320 | config MTL_USE_COREBOOT_MP_INIT |
| 321 | bool "Use coreboot MP init" |
| 322 | select RELOAD_MICROCODE_PATCH |
| 323 | help |
| 324 | Upon selection, coreboot performs MP Init. |
| 325 | |
| 326 | endchoice |
| 327 | |
Ravi Sarawadi | b8224f4 | 2022-04-10 23:31:24 -0700 | [diff] [blame] | 328 | endif |