u-boot/doc/develop
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
..
bootstd bootstd: Add command to enable setting of bootmeth specific properties 2024-10-15 10:24:27 -06:00
devicetree tools: Add script to update git subtree projects 2024-07-31 11:20:36 -06:00
driver-model board: emulation: Add QEMU sbsa support 2024-10-27 17:24:13 -06:00
historical doc: Move generic-board documentation into rst 2024-08-26 14:06:08 -06:00
package doc: typo 'it it' in doc/develop/package/index.rst 2022-10-06 22:54:57 +02:00
pics trace: Update documentation 2023-02-11 12:22:35 -05:00
statistics Prepare v2024.10 2024-10-07 08:54:35 -06:00
uefi efi_loader: Rename and move CMD_BOOTEFI_HELLO_COMPILE 2024-10-09 22:04:56 -06:00
binman_tests.rst binman: Add a tutorial on resolving test-coverage bugs 2024-10-18 14:10:22 -06:00
bloblist.rst bloblist: Update documentation and header comment 2023-12-31 07:21:02 -07:00
board_best_practices.rst doc: Move bootstd into its own directory 2024-07-19 13:53:05 +02:00
cedit.rst expo: Use standard numbering for save and discard 2024-10-18 14:10:22 -06:00
checkpatch.rst scripts/checkpatch.pl: Resync with v5.16 2022-02-03 12:16:00 -05:00
ci_testing.rst doc: describe skipping triggering a pipeline in Gitlab 2023-04-01 10:11:50 +02:00
coccinelle.rst doc: Coccinelle: move to HTML doc 2020-07-17 08:45:29 -04:00
codingstyle.rst Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
commands.rst doc: Add a few notes about how to use console checking 2024-08-26 18:51:49 -06:00
config_binding.rst doc: Add mention of the /config binding 2021-09-25 12:30:54 +02:00
crash_dumps.rst doc: crash_dumps.rst missing documentation link 2022-08-13 11:09:49 +02:00
cyclic.rst doc: cyclic: remove reference to WATCHDOG_RESET 2024-10-23 06:52:38 +02:00
designprinciples.rst designprinciples.rst: Perform minor cleanups 2022-07-14 14:13:50 -04:00
directories.rst doc: move directory hierarchy to HTML 2023-01-27 18:32:00 +01:00
distro.rst global: Use CONFIG_XPL_BUILD instead of CONFIG_SPL_BUILD 2024-10-11 11:44:48 -06:00
docstyle.rst doc: harmonize Linux kernel documentation links 2023-07-09 04:00:06 +02:00
environment.rst global: Finish CONFIG -> CFG migration 2023-01-20 12:27:24 -05:00
event.rst event: Update documentation for simple spy 2023-08-31 13:16:54 -04:00
expo.rst expo: Allow menu items to have values 2024-10-18 14:10:22 -06:00
falcon.rst doc: falcon: riscv: Falcon Mode boot on RISC-V 2024-01-31 16:51:03 +08:00
gdb.rst doc: develop: Add a general section on gdb usage 2024-06-30 13:58:31 +02:00
global_data.rst doc: Add some guidelines about global data 2024-08-26 14:06:08 -06:00
ide_integration.rst doc: add ide_integration.rst to doc/develop 2023-10-11 13:24:55 -04:00
index.rst binman: Add a tutorial on resolving test-coverage bugs 2024-10-18 14:10:22 -06:00
init.rst doc: Update init docs for the xPL changes 2024-10-11 11:44:47 -06:00
logging.rst log: global: Rename warn_non_spl() 2024-10-11 11:44:47 -06:00
makefiles.rst doc: Bring in Makefile documentation 2021-07-24 10:49:51 +02:00
memory.rst doc: Move the generic memory-documentation to doc/ 2024-10-09 22:04:56 -06:00
menus.rst doc: move README.menu to HTML documentation 2021-01-23 09:53:46 -05:00
patman.rst patman: Add documentation to doc/ 2022-08-13 11:09:49 +02:00
printf.rst doc: printf() codes: Fix format specifier for unsigned int 2023-08-19 04:12:52 +02:00
process.rst doc: Update rST to not reference the old wiki 2024-09-12 18:14:49 +02:00
py_testing.rst doc: describe usage of virt-make-fs for testing 2022-10-10 16:34:25 +02:00
python_cq.rst patman: Correct pylint errors 2022-03-02 10:28:12 -05:00
qconfig.rst global: Use CONFIG_XPL_BUILD instead of CONFIG_SPL_BUILD 2024-10-11 11:44:48 -06:00
release_cycle.rst Prepare v2024.10 2024-10-07 08:54:35 -06:00
security.rst docs: Add a basic security document 2022-11-06 10:50:04 +01:00
sending_patches.rst doc/develop/sending_patches.rst: Reword where our git tree is slightly 2024-09-16 14:33:41 -06:00
smbios.rst doc: describe generation of SMBIOS table 2022-02-26 07:37:00 +01:00
spl.rst doc: Update SPL docs for the xPL changes 2024-10-11 11:44:47 -06:00
system_configuration.rst doc: fix typos 2022-12-17 13:37:33 +00:00
testing.rst doc: develop: testing: Fix reference to test writing section 2024-06-22 17:03:01 +02:00
tests_sandbox.rst global: Use CONFIG_XPL_BUILD instead of CONFIG_SPL_BUILD 2024-10-11 11:44:48 -06:00
tests_writing.rst global: Rename SPL_ to XPL_ 2024-10-11 11:44:48 -06:00
trace.rst docs: fix wrong usage of proftool 2023-08-19 04:12:52 +02:00
vbe.rst vbe: Add a test for VBE device tree fixups 2022-10-17 21:17:13 -06:00
version.rst doc: Update rST to not reference the old wiki 2024-09-12 18:14:49 +02:00