u-boot/arch/x86/cpu
Tom Rini 2800aecce0 Merge patch series "Implement ACPI on aarch64"
Patrick Rudolph <patrick.rudolph@9elements.com> says:

Based on the existing work done by Simon Glass this series adds
support for booting aarch64 devices using ACPI only.
As first target QEMU SBSA support is added, which relies on ACPI
only to boot an OS. As secondary target the Raspberry Pi4 was used,
which is broadly available and allows easy testing of the proposed
solution.

The series is split into ACPI cleanups and code movements, adding
Arm specific ACPI tables and finally SoC and mainboard related
changes to boot a Linux on the QEMU SBSA and RPi4. Currently only the
mandatory ACPI tables are supported, allowing to boot into Linux
without errors.

The QEMU SBSA support is feature complete and provides the same
functionality as the EDK2 implementation.

The changes were tested on real hardware as well on QEMU v9.0:

qemu-system-aarch64 -machine sbsa-ref -nographic -cpu cortex-a57 \
                    -pflash secure-world.rom \
                    -pflash unsecure-world.rom

qemu-system-aarch64 -machine raspi4b -kernel u-boot.bin -cpu cortex-a72 \
-smp 4 -m 2G -drive file=raspbian.img,format=raw,index=0 \
-dtb bcm2711-rpi-4-b.dtb -nographic

Tested against FWTS V24.03.00.

Known issues:
- The QEMU rpi4 support is currently limited as it doesn't emulate PCI,
  USB or ethernet devices!
- The SMP bringup doesn't work on RPi4, but works in QEMU (Possibly
  cache related).
- PCI on RPI4 isn't working on real hardware since the pcie_brcmstb
  Linux kernel module doesn't support ACPI yet.

Link: https://lore.kernel.org/r/20241023132116.970117-1-patrick.rudolph@9elements.com
2024-10-27 18:44:13 -06:00
..
apollolake Merge patch series "Implement ACPI on aarch64" 2024-10-27 18:44:13 -06:00
baytrail acpi: x86: Write FADT in common code 2024-10-27 17:12:44 -06:00
braswell Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
broadwell x86: cpu: Use default print_cpuinfo() for all 2024-10-18 14:10:22 -06:00
coreboot x86: cpu: Use default print_cpuinfo() for all 2024-10-18 14:10:22 -06:00
efi x86: Make default_print_cpuinfo be a weak alias for print_cpuinfo 2024-10-18 14:10:21 -06:00
i386 x86: cpu: Mark a few functions static 2024-10-18 14:10:22 -06:00
intel_common Merge patch series "Implement ACPI on aarch64" 2024-10-27 18:44:13 -06:00
ivybridge x86: cpu: Use default print_cpuinfo() for all 2024-10-18 14:10:22 -06:00
qemu x86: cpu: Use default print_cpuinfo() for all 2024-10-18 14:10:22 -06:00
quark Merge patch series "Implement ACPI on aarch64" 2024-10-27 18:44:13 -06:00
queensbay Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
slimbootloader x86: Make default_print_cpuinfo be a weak alias for print_cpuinfo 2024-10-18 14:10:21 -06:00
tangier Merge patch series "Implement ACPI on aarch64" 2024-10-27 18:44:13 -06:00
x86_64 x86: cpu: Use default print_cpuinfo() for all 2024-10-18 14:10:22 -06:00
acpi_gpe.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
call32.S common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
config.mk arch: Use CONFIG_XPL_BUILD instead of CONFIG_SPL_BUILD 2024-10-11 11:44:47 -06:00
cpu.c x86: cpu: Mark a few functions static 2024-10-18 14:10:22 -06:00
cpu_x86.c x86: cpu: Add missing header inclusion 2024-10-18 14:10:22 -06:00
ioapic.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
irq.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
lapic.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
Makefile global: Rename SPL_TPL_ to PHASE_ 2024-10-11 11:44:48 -06:00
mp_init.c x86: provide mb() macro 2024-09-03 09:12:00 -06:00
mtrr.c x86: cpu: Mark a few functions static 2024-10-18 14:10:22 -06:00
pci.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
qfw_cpu.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
resetvec.S x86: Reduce resetvec size 2019-10-11 17:37:38 +08:00
sipi_vector.S common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
start.S Rename CONFIG_SYS_TEXT_BASE to CONFIG_TEXT_BASE 2022-10-31 11:01:31 -04:00
start16.S common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
start64.S x86: Improve the trampoline in 64-bit mode 2023-07-17 17:12:07 +08:00
start_from_spl.S x86: coral: Allow init of debug UART in U-Boot proper 2021-03-27 15:04:30 +13:00
start_from_tpl.S x86: Add more comments to the start-up code 2019-10-08 13:57:36 +08:00
turbo.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
u-boot-64.lds arm: x86: Drop discarding of command linker-lists 2023-12-13 11:51:24 -05:00
u-boot-spl.lds arm: x86: Drop discarding of command linker-lists 2023-12-13 11:51:24 -05:00
u-boot.lds arm: x86: Drop discarding of command linker-lists 2023-12-13 11:51:24 -05:00
wakeup.S x86: Move acpi_s3.h to include/acpi/ 2020-04-16 14:36:28 +08:00