coreboot/src/include
Felix Held 49be1a9346 Revert "cpu/x86/lapic: Unconditionally use CPUID leaf 0xb if available"
This reverts commit ceaf959678.

The AMD Picasso SoC doesn't support x2APIC and neither advertises the
presence of its support via bit 21 in EAX of CPUID leaf 1 nor has the
bit 10 in the APIC base address MSR 0x1b set, but it does have 0xd CPUID
leaves, so just checking for the presence of that CPUID leaf isn't
sufficient to be sure that EDX of the CPUID leaf 0xb will contain a
valid APIC ID.

In the case of Picasso EDX of the CPUID leaf 0xb returns 0 for all cores
which causes coreboot to get stuck somewhere at the end of MP init.

I'm not 100% sure if we should additionally check bit 21 in EAX of CPUID
function 1 is set instead of adding back the is_x2apic_mode check.

TEST=Mandolin with a Picasso SoC boots again.

Signed-off-by: Felix Held <felix-coreboot@felixheld.de>
Change-Id: If1e3c55ce2d048b14c08e06bb79810179a87993d
Reviewed-on: https://review.coreboot.org/c/coreboot/+/61776
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Raul Rangel <rrangel@chromium.org>
Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
Reviewed-by: Christian Walter <christian.walter@9elements.com>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-by: Kyösti Mälkki <kyosti.malkki@gmail.com>
2022-02-10 10:23:22 +00:00
..
acpi src/include/acpi: Move CPPC_PACKAGE_NAME macro definition 2022-01-18 16:13:28 +00:00
boot coreboot_table: Move VBOOT_VBNV support 2021-02-04 08:43:39 +00:00
console console: Add compile-time fast path when only CBMEM console is used 2022-02-07 23:28:46 +00:00
cpu Revert "cpu/x86/lapic: Unconditionally use CPUID leaf 0xb if available" 2022-02-10 10:23:22 +00:00
device soc/intel/alderlake: Add Alder Lake P IGD device IDs 2022-01-31 04:39:13 +00:00
efi efi_datatype: Add typedef for EFI_PHYSICAL_ADDRESS 2022-01-20 04:54:32 +00:00
mipi mipi: Make panel init callback work directly on DSI transaction types 2021-09-11 01:42:47 +00:00
pc80
smp Add ENV_STAGE_SUPPORTS_SMP to clean up spinlock stubs 2021-11-13 22:26:53 +00:00
superio
sys
adainit.h
asan.h
assert.h arch/x86: Use ENV_X86_64 instead of _x86_64_ 2021-07-06 06:09:13 +00:00
b64_decode.h
base3.h
boardid.h
boot_device.h
bootblock_common.h decompressor: Add CBFS_VERIFICATION support 2021-04-06 07:49:15 +00:00
bootmem.h cbfs: Remove prog_locate() for payloads (SELF and FIT) 2021-03-17 00:13:53 +00:00
bootmode.h Reland "vboot_logic: Set VB2_CONTEXT_EC_TRUSTED in verstage_main" 2021-11-15 12:00:12 +00:00
bootsplash.h drivers/intel/fsp1_1,fsp2_0: Refactor logo display 2021-02-09 07:52:31 +00:00
bootstate.h lib/hardwaremain: Drop boot_state_current_{block,unblock}() 2021-07-18 15:16:26 +00:00
cbfs.h cbfs: Remove deprecated APIs 2021-12-06 12:36:45 +00:00
cbfs_glue.h include/cbfsglue.h: Use BIOS_INFO for LOG macro 2021-04-06 06:53:17 +00:00
cbmem.h commonlib: Move commonlib/cbmem_id.h to commonlib/bsd/ 2021-11-30 17:23:37 +00:00
cper.h include/bcd: move bcd code to commonlib/bsd/include 2021-08-23 14:08:47 +00:00
crc_byte.h
ctype.h
delay.h
device_tree.h
dimm_info_util.h arch/x86: Refactor the SMBIOS type 17 write function 2021-11-11 09:10:10 +00:00
dp_aux.h google/trogdor: Add backlight support for Parade ps8640 2021-11-02 08:17:21 +00:00
edid.h include/edid.h: Remove repeated word 2021-01-18 07:37:04 +00:00
elog.h elog: move MAX_EVENT_SIZE to commonlib/bsd/include 2021-09-10 22:53:19 +00:00
endian.h
espi.h lib/espi_debug: Add espi_show_slave_peripheral_channel_configuration 2021-04-23 21:20:26 +00:00
fallback.h
fit.h
fmap.h
framebuffer_info.h src: Remove unused <stdbool> 2022-01-19 15:15:50 +00:00
fw_config.h fw_config: Add helper function fw_config_probe_dev 2021-05-24 16:55:27 +00:00
gpio.h
halt.h
imd.h
imd_private.h src: Add missing <cbmem.h> 2021-02-09 15:26:51 +00:00
input-event-codes.h
inttypes.h
ip_checksum.h
kconfig.h
lib.h lib: Add __fls() (Find Last Set) 2021-12-13 02:57:07 +00:00
limits.h include/limits.h: Add file (read: borrow from Linux) 2021-06-10 06:57:54 +00:00
list.h lib/list: Add list_append 2021-11-03 08:29:16 +00:00
main_decl.h
memlayout.h memlayout: Store region sizes as separate symbols 2021-02-19 08:39:26 +00:00
memory_info.h src: Remove unused <stdbool> 2022-01-19 15:15:50 +00:00
memrange.h include/memrange.h: Remove repeated word 2021-01-18 07:36:18 +00:00
metadata_hash.h src: Drop "This file is part of the coreboot project" lines 2021-05-10 15:07:33 +00:00
mrc_cache.h
nhlt.h
option.h option: Turn CMOS option backend into choice 2021-05-28 11:37:16 +00:00
post.h
program_loading.h src/lib/prog_loaders: Add preload_ramstage 2021-11-16 21:45:36 +00:00
ramdetect.h
random.h
reg_script.h
region_file.h
reset.h
rmodule.h
romstage_handoff.h
rtc.h lib/rtc: Add sanity check for time and date 2021-05-30 20:24:13 +00:00
rules.h rules.h, thread.h, lib/cbfs: Add ENV_STAGE_SUPPORTS_COOP 2021-12-15 23:25:32 +00:00
sar.h wifi: Update deny list entry size to uint16_t 2021-09-09 15:01:35 +00:00
sdram_mode.h
smbios.h soc/intel/common: Add DDR5 and LPDDR5 into the SMBIOS table 2021-10-30 18:45:09 +00:00
smmstore.h
spd.h arch/x86: Refactor the SMBIOS type 17 write function 2021-11-11 09:10:10 +00:00
spd_bin.h spd_bin: Replace get_spd_cbfs_rdev() with spd_cbfs_map() 2021-03-17 08:10:35 +00:00
spd_cache.h src/lib: Add Kconfig option for SPD cache in FMAP 2020-12-14 08:23:41 +00:00
spi-generic.h drivers/spi/spi-generic: document SPI_CNTRLR_DEDUCT_CMD_LEN better 2021-12-15 22:39:21 +00:00
spi_bitbang.h
spi_flash.h drivers: spi_flash: Add Fast Read Dual I/O support 2021-07-15 14:05:34 +00:00
spi_sdcard.h
stage_cache.h stage_cache: Add resume_from_stage_cache() 2021-01-29 10:53:33 +00:00
stdarg.h
stdbool.h
stddef.h stddef.h: Use compiler macros for built-in integer types 2021-06-10 05:36:30 +00:00
stdint.h
stdio.h
stdlib.h lib: Add obvious definition for calloc 2021-04-06 06:50:38 +00:00
string.h
swab.h
symbols.h lib/prog_loaders, soc/amd/: Make payload_preload use cbfs_preload 2021-11-16 18:20:31 +00:00
thread.h src: Drop duplicated includes 2022-01-01 14:55:51 +00:00
timer.h
timestamp.h timestamp: Allow timestamp_add to accept a negative number 2022-01-21 22:42:19 +00:00
types.h include/types.h: #include <limits.h> 2021-12-26 09:59:12 +00:00
uuid.h
vbe.h
version.h
watchdog.h
wrdd.h