diff --git a/src/cpu/intel/haswell/Kconfig b/src/cpu/intel/haswell/Kconfig index 0d3d132006..8d08bd9bfb 100644 --- a/src/cpu/intel/haswell/Kconfig +++ b/src/cpu/intel/haswell/Kconfig @@ -16,7 +16,6 @@ config CPU_SPECIFIC_OPTIONS #select AP_IN_SIPI_WAIT select TSC_SYNC_MFENCE select CPU_INTEL_FIRMWARE_INTERFACE_TABLE - select PARALLEL_MP select CPU_INTEL_COMMON select CPU_INTEL_COMMON_TIMEBASE select HAVE_ASAN_IN_ROMSTAGE diff --git a/src/cpu/intel/model_2065x/Kconfig b/src/cpu/intel/model_2065x/Kconfig index 04b9e6785b..31105ec2d1 100644 --- a/src/cpu/intel/model_2065x/Kconfig +++ b/src/cpu/intel/model_2065x/Kconfig @@ -16,7 +16,6 @@ config CPU_SPECIFIC_OPTIONS select TSC_SYNC_MFENCE select CPU_INTEL_COMMON select CPU_INTEL_COMMON_TIMEBASE - select PARALLEL_MP config SMM_TSEG_SIZE hex diff --git a/src/cpu/intel/model_206ax/Kconfig b/src/cpu/intel/model_206ax/Kconfig index 5098ac76d5..cf6a907981 100644 --- a/src/cpu/intel/model_206ax/Kconfig +++ b/src/cpu/intel/model_206ax/Kconfig @@ -16,7 +16,6 @@ config CPU_SPECIFIC_OPTIONS select TSC_SYNC_MFENCE select CPU_INTEL_COMMON select CPU_INTEL_COMMON_TIMEBASE - select PARALLEL_MP config SMM_TSEG_SIZE hex diff --git a/src/cpu/qemu-x86/Kconfig b/src/cpu/qemu-x86/Kconfig index 85f99e9cb6..f6ccb88478 100644 --- a/src/cpu/qemu-x86/Kconfig +++ b/src/cpu/qemu-x86/Kconfig @@ -15,10 +15,10 @@ choice config CPU_QEMU_X86_LAPIC_INIT bool "Legacy serial LAPIC init" + select LEGACY_SMP_INIT config CPU_QEMU_X86_PARALLEL_MP bool "Parallel MP init" - select PARALLEL_MP endchoice @@ -33,13 +33,13 @@ config CPU_QEMU_X86_NO_SMM config CPU_QEMU_X86_ASEG_SMM bool "SMM in ASEG" - depends on !PARALLEL_MP + depends on CPU_QEMU_X86_LAPIC_INIT select SMM_ASEG config CPU_QEMU_X86_TSEG_SMM bool "SMM in TSEG" select SMM_TSEG - depends on PARALLEL_MP + depends on CPU_QEMU_X86_PARALLEL_MP endchoice diff --git a/src/cpu/x86/Kconfig b/src/cpu/x86/Kconfig index bcaf0bfad7..1a4318cbcd 100644 --- a/src/cpu/x86/Kconfig +++ b/src/cpu/x86/Kconfig @@ -4,7 +4,9 @@ config PARALLEL_CPU_INIT default n config PARALLEL_MP - def_bool n + def_bool y + depends on !LEGACY_SMP_INIT + depends on SMP help This option uses common MP infrastructure for bringing up APs in parallel. It additionally provides a more flexible mechanism @@ -17,6 +19,9 @@ config PARALLEL_MP_AP_WORK Allow APs to do other work after initialization instead of going to sleep. +config LEGACY_SMP_INIT + bool + config UDELAY_LAPIC bool default n diff --git a/src/northbridge/amd/agesa/family14/Kconfig b/src/northbridge/amd/agesa/family14/Kconfig index 9c7eb9236c..27c9c21934 100644 --- a/src/northbridge/amd/agesa/family14/Kconfig +++ b/src/northbridge/amd/agesa/family14/Kconfig @@ -2,6 +2,7 @@ config NORTHBRIDGE_AMD_AGESA_FAMILY14 bool + select LEGACY_SMP_INIT select RESOURCE_ALLOCATOR_V3 if NORTHBRIDGE_AMD_AGESA_FAMILY14 diff --git a/src/northbridge/amd/agesa/family15tn/Kconfig b/src/northbridge/amd/agesa/family15tn/Kconfig index 60007a32ce..3b66f56fa5 100644 --- a/src/northbridge/amd/agesa/family15tn/Kconfig +++ b/src/northbridge/amd/agesa/family15tn/Kconfig @@ -2,6 +2,7 @@ config NORTHBRIDGE_AMD_AGESA_FAMILY15_TN bool + select LEGACY_SMP_INIT select RESOURCE_ALLOCATOR_V3 if NORTHBRIDGE_AMD_AGESA_FAMILY15_TN diff --git a/src/northbridge/amd/agesa/family16kb/Kconfig b/src/northbridge/amd/agesa/family16kb/Kconfig index d1ccbb51ac..ee02865eed 100644 --- a/src/northbridge/amd/agesa/family16kb/Kconfig +++ b/src/northbridge/amd/agesa/family16kb/Kconfig @@ -2,6 +2,7 @@ config NORTHBRIDGE_AMD_AGESA_FAMILY16_KB bool + select LEGACY_SMP_INIT select RESOURCE_ALLOCATOR_V3 if NORTHBRIDGE_AMD_AGESA_FAMILY16_KB diff --git a/src/northbridge/amd/pi/00730F01/Kconfig b/src/northbridge/amd/pi/00730F01/Kconfig index 6d321e9b76..c1fc9a882e 100644 --- a/src/northbridge/amd/pi/00730F01/Kconfig +++ b/src/northbridge/amd/pi/00730F01/Kconfig @@ -2,6 +2,7 @@ config NORTHBRIDGE_AMD_PI_00730F01 bool + select LEGACY_SMP_INIT if NORTHBRIDGE_AMD_PI_00730F01 diff --git a/src/northbridge/intel/e7505/Kconfig b/src/northbridge/intel/e7505/Kconfig index d222e2e3b0..d9cf8aff8e 100644 --- a/src/northbridge/intel/e7505/Kconfig +++ b/src/northbridge/intel/e7505/Kconfig @@ -10,5 +10,6 @@ config NORTHBRIDGE_SPECIFIC_OPTIONS select NO_MMCONF_SUPPORT select HAVE_DEBUG_RAM_SETUP select NO_CBFS_MCACHE + select LEGACY_SMP_INIT endif diff --git a/src/northbridge/intel/gm45/Kconfig b/src/northbridge/intel/gm45/Kconfig index cd3e27c54e..daf96aadd5 100644 --- a/src/northbridge/intel/gm45/Kconfig +++ b/src/northbridge/intel/gm45/Kconfig @@ -12,7 +12,6 @@ config NORTHBRIDGE_SPECIFIC_OPTIONS select INTEL_EDID select INTEL_GMA_ACPI select INTEL_GMA_SSC_ALTERNATE_REF - select PARALLEL_MP config VBOOT select VBOOT_STARTS_IN_BOOTBLOCK diff --git a/src/northbridge/intel/i440bx/Kconfig b/src/northbridge/intel/i440bx/Kconfig index ff8e2ae729..0fcadce971 100644 --- a/src/northbridge/intel/i440bx/Kconfig +++ b/src/northbridge/intel/i440bx/Kconfig @@ -5,6 +5,7 @@ config NORTHBRIDGE_INTEL_I440BX select NO_MMCONF_SUPPORT select HAVE_DEBUG_RAM_SETUP select NO_CBFS_MCACHE + select LEGACY_SMP_INIT config SDRAMPWR_4DIMM bool diff --git a/src/northbridge/intel/i945/Kconfig b/src/northbridge/intel/i945/Kconfig index 2af44245e6..51ee320342 100644 --- a/src/northbridge/intel/i945/Kconfig +++ b/src/northbridge/intel/i945/Kconfig @@ -13,7 +13,6 @@ config NORTHBRIDGE_SPECIFIC_OPTIONS select INTEL_GMA_SSC_ALTERNATE_REF select INTEL_EDID select HAVE_VGA_TEXT_FRAMEBUFFER if MAINBOARD_DO_NATIVE_VGA_INIT - select PARALLEL_MP config VBOOT select VBOOT_STARTS_IN_BOOTBLOCK diff --git a/src/northbridge/intel/pineview/Kconfig b/src/northbridge/intel/pineview/Kconfig index 0ff437aece..f85cd2e9dd 100644 --- a/src/northbridge/intel/pineview/Kconfig +++ b/src/northbridge/intel/pineview/Kconfig @@ -13,7 +13,6 @@ config NORTHBRIDGE_SPECIFIC_OPTIONS select HAVE_VGA_TEXT_FRAMEBUFFER if MAINBOARD_DO_NATIVE_VGA_INIT select INTEL_EDID if MAINBOARD_DO_NATIVE_VGA_INIT select INTEL_GMA_ACPI - select PARALLEL_MP select NO_CBFS_MCACHE config VGA_BIOS_ID diff --git a/src/northbridge/intel/x4x/Kconfig b/src/northbridge/intel/x4x/Kconfig index 99f6d794fd..3ebb4fa23b 100644 --- a/src/northbridge/intel/x4x/Kconfig +++ b/src/northbridge/intel/x4x/Kconfig @@ -11,7 +11,6 @@ config NORTHBRIDGE_SPECIFIC_OPTIONS select VGA select INTEL_GMA_ACPI select CACHE_MRC_SETTINGS - select PARALLEL_MP select BOOT_DEVICE_SPI_FLASH_NO_EARLY_WRITES config CBFS_SIZE diff --git a/src/soc/amd/cezanne/Kconfig b/src/soc/amd/cezanne/Kconfig index 075404b662..568d8ba6e0 100644 --- a/src/soc/amd/cezanne/Kconfig +++ b/src/soc/amd/cezanne/Kconfig @@ -28,7 +28,6 @@ config SOC_SPECIFIC_OPTIONS select HAVE_SMI_HANDLER select IDT_IN_EVERY_STAGE select IOAPIC - select PARALLEL_MP select PARALLEL_MP_AP_WORK select PLATFORM_USES_FSP2_0 select PROVIDES_ROM_SHARING diff --git a/src/soc/amd/picasso/Kconfig b/src/soc/amd/picasso/Kconfig index e9ed8458e4..594ed7526f 100644 --- a/src/soc/amd/picasso/Kconfig +++ b/src/soc/amd/picasso/Kconfig @@ -57,7 +57,6 @@ config CPU_SPECIFIC_OPTIONS select SOC_AMD_COMMON_BLOCK_UCODE select PROVIDES_ROM_SHARING select BOOT_DEVICE_SUPPORTS_WRITES if BOOT_DEVICE_SPI_FLASH - select PARALLEL_MP select PARALLEL_MP_AP_WORK select HAVE_SMI_HANDLER select SSE2 diff --git a/src/soc/amd/stoneyridge/Kconfig b/src/soc/amd/stoneyridge/Kconfig index ccffe7680a..7594bd8e03 100644 --- a/src/soc/amd/stoneyridge/Kconfig +++ b/src/soc/amd/stoneyridge/Kconfig @@ -20,7 +20,6 @@ config CPU_SPECIFIC_OPTIONS select HAVE_SMI_HANDLER select HAVE_USBDEBUG_OPTIONS select IOAPIC - select PARALLEL_MP select PARALLEL_MP_AP_WORK select RTC select SOC_AMD_PI diff --git a/src/soc/intel/alderlake/Kconfig b/src/soc/intel/alderlake/Kconfig index 79e775d276..a146a7792b 100644 --- a/src/soc/intel/alderlake/Kconfig +++ b/src/soc/intel/alderlake/Kconfig @@ -36,7 +36,6 @@ config CPU_SPECIFIC_OPTIONS select INTEL_TME select MP_SERVICES_PPI_V2 select MRC_SETTINGS_PROTECT - select PARALLEL_MP select PARALLEL_MP_AP_WORK select MICROCODE_BLOB_UNDISCLOSED select PLATFORM_USES_FSP2_2 diff --git a/src/soc/intel/apollolake/Kconfig b/src/soc/intel/apollolake/Kconfig index 9fe2c29ea5..45414a4c88 100644 --- a/src/soc/intel/apollolake/Kconfig +++ b/src/soc/intel/apollolake/Kconfig @@ -46,7 +46,6 @@ config CPU_SPECIFIC_OPTIONS select MRC_SETTINGS_PROTECT select MRC_SETTINGS_VARIABLE_DATA select NO_XIP_EARLY_STAGES - select PARALLEL_MP select PARALLEL_MP_AP_WORK select PCIEXP_ASPM select PCIEXP_COMMON_CLOCK diff --git a/src/soc/intel/baytrail/Kconfig b/src/soc/intel/baytrail/Kconfig index 8811b38cf9..a9ba092279 100644 --- a/src/soc/intel/baytrail/Kconfig +++ b/src/soc/intel/baytrail/Kconfig @@ -19,7 +19,6 @@ config CPU_SPECIFIC_OPTIONS select SOUTHBRIDGE_INTEL_COMMON_RESET select SOUTHBRIDGE_INTEL_COMMON_SMBUS select SOUTHBRIDGE_INTEL_COMMON_SPI_SILVERMONT - select PARALLEL_MP select PCIEXP_ASPM select PCIEXP_COMMON_CLOCK select REG_SCRIPT diff --git a/src/soc/intel/braswell/Kconfig b/src/soc/intel/braswell/Kconfig index 0e1b6db34f..f91e7de18c 100644 --- a/src/soc/intel/braswell/Kconfig +++ b/src/soc/intel/braswell/Kconfig @@ -16,7 +16,6 @@ config CPU_SPECIFIC_OPTIONS select SUPPORT_CPU_UCODE_IN_CBFS select CPU_INTEL_TURBO_NOT_PACKAGE_SCOPED select HAVE_SMI_HANDLER - select PARALLEL_MP select PCIEXP_ASPM select PCIEXP_CLK_PM select PCIEXP_COMMON_CLOCK diff --git a/src/soc/intel/cannonlake/Kconfig b/src/soc/intel/cannonlake/Kconfig index 8c6cd53ec6..aa5e5e9cca 100644 --- a/src/soc/intel/cannonlake/Kconfig +++ b/src/soc/intel/cannonlake/Kconfig @@ -68,7 +68,6 @@ config CPU_SPECIFIC_OPTIONS select INTEL_GMA_ADD_VBT if RUN_FSP_GOP select IOAPIC select MRC_SETTINGS_PROTECT - select PARALLEL_MP select PARALLEL_MP_AP_WORK select PLATFORM_USES_FSP2_0 select PM_ACPI_TIMER_OPTIONAL diff --git a/src/soc/intel/denverton_ns/Kconfig b/src/soc/intel/denverton_ns/Kconfig index aa5c3456d6..f6bafae861 100644 --- a/src/soc/intel/denverton_ns/Kconfig +++ b/src/soc/intel/denverton_ns/Kconfig @@ -23,7 +23,6 @@ config CPU_SPECIFIC_OPTIONS select HAVE_INTEL_FSP_REPO select HAVE_SMI_HANDLER select CACHE_MRC_SETTINGS - select PARALLEL_MP select PCR_COMMON_IOSF_1_0 select SUPPORT_CPU_UCODE_IN_CBFS select INTEL_DESCRIPTOR_MODE_CAPABLE diff --git a/src/soc/intel/elkhartlake/Kconfig b/src/soc/intel/elkhartlake/Kconfig index a522db5068..bb1766a49f 100644 --- a/src/soc/intel/elkhartlake/Kconfig +++ b/src/soc/intel/elkhartlake/Kconfig @@ -28,7 +28,6 @@ config CPU_SPECIFIC_OPTIONS select IOAPIC select MP_SERVICES_PPI_V1 select MRC_SETTINGS_PROTECT - select PARALLEL_MP select PARALLEL_MP_AP_WORK select MICROCODE_BLOB_UNDISCLOSED select PLATFORM_USES_FSP2_1 diff --git a/src/soc/intel/icelake/Kconfig b/src/soc/intel/icelake/Kconfig index cb4ef496cf..71e2beefd8 100644 --- a/src/soc/intel/icelake/Kconfig +++ b/src/soc/intel/icelake/Kconfig @@ -28,7 +28,6 @@ config CPU_SPECIFIC_OPTIONS select IOAPIC select MP_SERVICES_PPI_V1 select MRC_SETTINGS_PROTECT - select PARALLEL_MP select PARALLEL_MP_AP_WORK select MICROCODE_BLOB_UNDISCLOSED select PLATFORM_USES_FSP2_1 diff --git a/src/soc/intel/jasperlake/Kconfig b/src/soc/intel/jasperlake/Kconfig index 80fc164284..f01902628d 100644 --- a/src/soc/intel/jasperlake/Kconfig +++ b/src/soc/intel/jasperlake/Kconfig @@ -29,7 +29,6 @@ config CPU_SPECIFIC_OPTIONS select IOAPIC select MP_SERVICES_PPI_V1 select MRC_SETTINGS_PROTECT - select PARALLEL_MP select PARALLEL_MP_AP_WORK select MICROCODE_BLOB_UNDISCLOSED select PLATFORM_USES_FSP2_2 diff --git a/src/soc/intel/skylake/Kconfig b/src/soc/intel/skylake/Kconfig index 3f02974253..0117b0bbe0 100644 --- a/src/soc/intel/skylake/Kconfig +++ b/src/soc/intel/skylake/Kconfig @@ -43,7 +43,6 @@ config CPU_SPECIFIC_OPTIONS select INTEL_GMA_ADD_VBT if RUN_FSP_GOP select IOAPIC select MRC_SETTINGS_PROTECT - select PARALLEL_MP select PARALLEL_MP_AP_WORK select PLATFORM_USES_FSP2_0 select PM_ACPI_TIMER_OPTIONAL diff --git a/src/soc/intel/tigerlake/Kconfig b/src/soc/intel/tigerlake/Kconfig index 0c472d9299..eb0fea9072 100644 --- a/src/soc/intel/tigerlake/Kconfig +++ b/src/soc/intel/tigerlake/Kconfig @@ -32,7 +32,6 @@ config CPU_SPECIFIC_OPTIONS select IOAPIC select MP_SERVICES_PPI_V1 select MRC_SETTINGS_PROTECT - select PARALLEL_MP select PARALLEL_MP_AP_WORK select MICROCODE_BLOB_UNDISCLOSED select PLATFORM_USES_FSP2_2 diff --git a/src/soc/intel/xeon_sp/Kconfig b/src/soc/intel/xeon_sp/Kconfig index a2876b5ae3..5e0f756c27 100644 --- a/src/soc/intel/xeon_sp/Kconfig +++ b/src/soc/intel/xeon_sp/Kconfig @@ -36,7 +36,6 @@ config CPU_SPECIFIC_OPTIONS select FSP_M_XIP select POSTCAR_STAGE select IOAPIC - select PARALLEL_MP select PARALLEL_MP_AP_WORK select PMC_GLOBAL_RESET_ENABLE_LOCK select INTEL_DESCRIPTOR_MODE_CAPABLE