mirror of
https://github.com/u-boot/u-boot.git
synced 2025-04-17 10:24:49 +00:00
![]() 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 |
||
---|---|---|
.. | ||
android | ||
api | ||
arch | ||
board | ||
build | ||
chromium | ||
develop | ||
device-tree-bindings | ||
imx | ||
learn | ||
media | ||
mvebu | ||
sphinx | ||
sphinx-static | ||
SPI | ||
SPL | ||
usage | ||
.gitignore | ||
bounces | ||
conf.py | ||
dumpimage.1 | ||
feature-removal-schedule.txt | ||
genindex.rst | ||
git-mailrc | ||
I2C_Edge_Conditions | ||
index.rst | ||
kwboot.1 | ||
Makefile | ||
mkeficapsule.1 | ||
mkfwumdata.1 | ||
mkimage.1 | ||
README.arm-caches | ||
README.arm-relocation | ||
README.armada-secureboot | ||
README.asn1 | ||
README.atmel_mci | ||
README.atmel_pmecc | ||
README.autoboot | ||
README.bcmns3 | ||
README.bitbangMII | ||
README.boston | ||
README.cfi | ||
README.commands.itest | ||
README.commands.spl | ||
README.console | ||
README.davinci | ||
README.davinci.nand_spl | ||
README.dfutftp | ||
README.displaying-bmps | ||
README.dns | ||
README.enetaddr | ||
README.esbc_validate | ||
README.ext4 | ||
README.fec_mxc | ||
README.fsl-ddr | ||
README.fsl-esdhc | ||
README.fsl-hwconfig | ||
README.fsl-trustzone-components | ||
README.fsl_iim | ||
README.fuse | ||
README.generic_usb_ohci | ||
README.gpio | ||
README.gpt | ||
README.Heterogeneous-SoCs | ||
README.hwconfig | ||
README.i2c | ||
README.iomux | ||
README.JFFS2_NAND | ||
README.kconfig | ||
README.kwbimage | ||
README.LED | ||
README.link-local | ||
README.malta | ||
README.marvell | ||
README.mediatek | ||
README.memory-test | ||
README.mpc83xx.ddrecc | ||
README.mpc83xxads | ||
README.mpc85xx | ||
README.mpc85xx-sd-spi-boot | ||
README.mpc85xx-spin-table | ||
README.mpc85xxcds | ||
README.multi-dtb-fit | ||
README.mxc_ocotp | ||
README.nand | ||
README.odroid | ||
README.OFT | ||
README.omap-ulpi-viewport | ||
README.omap3 | ||
README.pblimage | ||
README.pcap | ||
README.POST | ||
README.power-framework | ||
README.pxe | ||
README.ramboot-ppc85xx | ||
README.rockchip | ||
README.rockusb | ||
README.s5p4418 | ||
README.s5pc1xx | ||
README.sata | ||
README.sched | ||
README.scrapyard | ||
README.serial_dt_baud | ||
README.serial_multi | ||
README.silent | ||
README.SNTP | ||
README.socfpga | ||
README.splashprepare | ||
README.srio-pcie-boot-corenet | ||
README.standalone | ||
README.t1040-l2switch | ||
README.tee | ||
README.TPL | ||
README.ubi | ||
README.ubispl | ||
README.ublimage | ||
README.udp | ||
README.unaligned-memory-access.txt | ||
README.uniphier | ||
README.update | ||
README.usb | ||
README.vf610 | ||
README.video | ||
README.VLAN | ||
README.VSC3316-3308 | ||
README.watchdog | ||
README.zfs |
This patch series adds support for ZFS listing and load to u-boot. To Enable zfs ls and load commands, modify the board specific config file with #define CONFIG_CMD_ZFS Steps to test: 1. After applying the patch, zfs specific commands can be seen in the boot loader prompt using UBOOT #help zfsload- load binary file from a ZFS file system zfsls - list files in a directory (default /) 2. To list the files in zfs pool, device or partition, execute zfsls <interface> <dev[:part]> [POOL/@/dir/file] For example: UBOOT #zfsls mmc 0:5 /rpool/@/usr/bin/ 3. To read and load a file from an ZFS formatted partition to RAM, execute zfsload <interface> <dev[:part]> [addr] [filename] [bytes] For example: UBOOT #zfsload mmc 2:2 0x30007fc0 /rpool/@/boot/uImage References : -- ZFS GRUB sources from Solaris GRUB-0.97 -- GRUB Bazaar repository Jorgen Lundman <lundman at lundman.net> 2012.