mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-20 22:23:27 +00:00
bad01d4806
Removed because they are upstream: generic/pending-5.15/110-v6.3-0001-spidev-Add-Silicon-Labs-EM3581-device-compatible.patch https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-5.15.y&id=bff165a3993683daddf3f00563960e7675966f91 ipq807x/patches-5.15/0004-v5.16-arm64-dts-qcom-msm8996-Move-clock-cells-to-QMP-PHY-c.patch https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-5.15.y&id=32f0e52f16d45d743b473659329f93d4a27c68bf Manually adapted: bcm27xx/patches-5.15/950-0040-spi-spidev-Completely-disable-the-spidev-warning.patch bcm27xx/patches-5.15/950-0578-spi-spidev-Restore-loading-from-Device-Tree.patch generic/pending-5.15/110-v6.3-0002-spidev-Add-Silicon-Labs-SI3210-device-compatible.patch Adapt kernel configuration for newly added option CONFIG_ARM64_ERRATUM_3194386. The leddev_list_lock attribute changed from rwlock_t to spinlock_t in: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-5.15.y&id=590304b798a3b89e716b6b564f8ad14bc9373d93 Link: https://github.com/openwrt/openwrt/pull/16366 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> |
||
---|---|---|
.. | ||
armv7 | ||
armv8 | ||
base-files | ||
image | ||
patches-5.15 | ||
config-5.15 | ||
Makefile | ||
modules.mk | ||
README |
This target generates images that can be used on ARM machines with EFI support (e.g EDKII/TianoCore or U-Boot with bootefi). There are two subtargets: - armv7 for 32-bit machines - armv8 for 64-bit machines The kernel and filesystem images can also be used directly by QEMU: Run with qemu-system-arm # boot with initramfs embedded in qemu-system-arm -nographic -M virt -m 64 -kernel openwrt-armsr-armv7-generic-initramfs-kernel.bin # boot with accel=kvm qemu-system-arm -nographic -M virt,accel=kvm -cpu host -m 64 -kernel openwrt-armsr-armv7-generic-initramfs-kernel.bin # boot with a separate rootfs qemu-system-arm -nographic -M virt -m 64 -kernel openwrt-armsr-armv7-generic-kernel.bin \ -drive file=openwrt-armsr-armv7-generic-ext4-rootfs.img,format=raw,if=virtio -append 'root=/dev/vda rootwait' # boot with local dir as rootfs qemu-system-arm -nographic -M virt -m 64 -kernel openwrt-armsr-armv7-generic-kernel.bin \ -fsdev local,id=rootdev,path=root-armsr/,security_model=none \ -device virtio-9p-pci,fsdev=rootdev,mount_tag=/dev/root \ -append 'rootflags=trans=virtio,version=9p2000.L,cache=loose rootfstype=9p' Run with kvmtool # start a named machine lkvm run -k openwrt-armsr-armv7-zImage -i openwrt-armsr-armv7-rootfs.cpio --name armsr0 # start with virtio-9p rootfs lkvm run -k openwrt-armsr-armv7-zImage -d root-armsr/ # stop "armsr0" lkvm stop --name armsr0 # stop all lkvm stop --all The multi-platform ARMv8 target can be used with QEMU: qemu-system-aarch64 -machine virt -cpu cortex-a57 -nographic \ -kernel openwrt-armsr-armv8-generic-initramfs-kernel.bin \ With a EDKII or U-Boot binary for the QEMU ARM virtual machines, you can use these images in EFI mode: 32-bit: gunzip -c bin/targets/armsr/armv7/openwrt-armsr-armv7-generic-ext4-combined.img.gz > openwrt-arm-32.img qemu-system-arm -nographic \ -cpu cortex-a15 -machine virt \ -bios bin/targets/armsr/armv7/u-boot-qemu_armv7/u-boot.bin \ -smp 1 -m 1024 \ -device virtio-rng-pci \ -drive file=openwrt-arm-32.img,format=raw,index=0,media=disk \ -netdev user,id=testlan -net nic,netdev=testlan \ -netdev user,id=testwan -net nic,netdev=testwan 64-bit: gunzip -c bin/targets/armsr/armv8/openwrt-armsr-armv8-generic-ext4-combined.img.gz > openwrt-arm-64.img qemu-system-aarch64 -nographic \ -cpu cortex-a53 -machine virt \ -bios bin/targets/armsr/armv8/u-boot-qemu_armv8/u-boot.bin \ -smp 1 -m 1024 \ -device virtio-rng-pci \ -drive file=openwrt-arm-64.img,format=raw,index=0,media=disk \ -netdev user,id=testlan -net nic,netdev=testlan \ -netdev user,id=testwan -net nic,netdev=testwan One can obtain other EFI/BIOS binaries from: - Distribution packages (such as qemu-efi-arm and qemu-efi-aarch64 in Debian) - Community builds, like retrage/edk2-nightly: https://retrage.github.io/edk2-nightly/