From 7198185e3af80ca2807ecea610bee6e4bc7f90ba Mon Sep 17 00:00:00 2001 From: Mathew McBride Date: Fri, 9 Jun 2023 00:43:33 +0000 Subject: [PATCH] armsr: rename from armvirt Now that the armvirt target supports real hardware, not just VMs, thanks to the addition of EFI, rename it to something more appropriate. 'armsr' (Arm SystemReady) was chosen after the name of the Arm standards program. The 32 and 64 bit targets have also been renamed armv7 and armv8 respectively, to allow future profiles where required (such as armv9). See https://developer.arm.com/documentation/102858/0100/Introduction for more information. Signed-off-by: Mathew McBride (23.05 version of commit 40b02a230167626def69389452f19b7109aaeac1) --- target/linux/{armvirt => armsr}/Makefile | 4 +-- target/linux/{armvirt => armsr}/README | 30 +++++++++++-------- .../{armvirt/32 => armsr/armv7}/config-5.15 | 0 .../{armvirt/32 => armsr/armv7}/target.mk | 4 +-- .../{armvirt/64 => armsr/armv8}/config-5.15 | 0 .../{armvirt/64 => armsr/armv8}/target.mk | 4 +-- .../base-files/etc/board.d/01_led | 0 .../base-files/etc/board.d/02_network | 0 .../base-files/etc/board.d/03_gpio_switches | 0 .../{armvirt => armsr}/base-files/etc/inittab | 0 .../base-files/lib/preinit/01_sysinfo_acpi | 0 .../base-files/lib/upgrade/platform.sh | 0 target/linux/{armvirt => armsr}/config-5.15 | 0 .../linux/{armvirt => armsr}/image/Makefile | 0 .../{armvirt => armsr}/image/grub-efi.cfg | 0 target/linux/{armvirt => armsr}/modules.mk | 30 +++++++++---------- ...221-armsr-armv7-disable-gc_sections.patch} | 0 .../701-dpaa2-eth-do-not-hold-rtnl_lock.patch | 0 ...2-mac-add-support-for-more-10G-modes.patch | 0 19 files changed, 38 insertions(+), 34 deletions(-) rename target/linux/{armvirt => armsr}/Makefile (88%) rename target/linux/{armvirt => armsr}/README (63%) rename target/linux/{armvirt/32 => armsr/armv7}/config-5.15 (100%) rename target/linux/{armvirt/32 => armsr/armv7}/target.mk (70%) rename target/linux/{armvirt/64 => armsr/armv8}/config-5.15 (100%) rename target/linux/{armvirt/64 => armsr/armv8}/target.mk (69%) rename target/linux/{armvirt => armsr}/base-files/etc/board.d/01_led (100%) rename target/linux/{armvirt => armsr}/base-files/etc/board.d/02_network (100%) rename target/linux/{armvirt => armsr}/base-files/etc/board.d/03_gpio_switches (100%) rename target/linux/{armvirt => armsr}/base-files/etc/inittab (100%) rename target/linux/{armvirt => armsr}/base-files/lib/preinit/01_sysinfo_acpi (100%) rename target/linux/{armvirt => armsr}/base-files/lib/upgrade/platform.sh (100%) rename target/linux/{armvirt => armsr}/config-5.15 (100%) rename target/linux/{armvirt => armsr}/image/Makefile (100%) rename target/linux/{armvirt => armsr}/image/grub-efi.cfg (100%) rename target/linux/{armvirt => armsr}/modules.mk (89%) rename target/linux/{armvirt/patches-5.15/221-armvirt-disable-gc_sections.patch => armsr/patches-5.15/221-armsr-armv7-disable-gc_sections.patch} (100%) rename target/linux/{armvirt => armsr}/patches-5.15/701-dpaa2-eth-do-not-hold-rtnl_lock.patch (100%) rename target/linux/{armvirt => armsr}/patches-5.15/702-net-dpaa2-mac-add-support-for-more-10G-modes.patch (100%) diff --git a/target/linux/armvirt/Makefile b/target/linux/armsr/Makefile similarity index 88% rename from target/linux/armvirt/Makefile rename to target/linux/armsr/Makefile index 04ff914b96..755c77f446 100644 --- a/target/linux/armvirt/Makefile +++ b/target/linux/armsr/Makefile @@ -4,8 +4,8 @@ include $(TOPDIR)/rules.mk -BOARD:=armvirt -BOARDNAME:=QEMU ARM Virtual Machine +BOARD:=armsr +BOARDNAME:=Arm SystemReady (EFI) compliant FEATURES:=fpu pci pcie rtc usb boot-part rootfs-part FEATURES+=cpiogz ext4 ramdisk squashfs targz vmdk diff --git a/target/linux/armvirt/README b/target/linux/armsr/README similarity index 63% rename from target/linux/armvirt/README rename to target/linux/armsr/README index b4409f8f11..bce839ddfc 100644 --- a/target/linux/armvirt/README +++ b/target/linux/armsr/README @@ -1,37 +1,41 @@ 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-armvirt-32-generic-initramfs-kernel.bin + 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-armvirt-32-generic-initramfs-kernel.bin + openwrt-armsr-armv7-generic-initramfs-kernel.bin # boot with a separate rootfs - qemu-system-arm -nographic -M virt -m 64 -kernel openwrt-armvirt-32-generic-kernel.bin \ - -drive file=openwrt-armvirt-32-generic-ext4-rootfs.img,format=raw,if=virtio -append 'root=/dev/vda rootwait' + 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-armvirt-32-generic-kernel.bin \ - -fsdev local,id=rootdev,path=root-armvirt/,security_model=none \ + 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-armvirt-32-zImage -i openwrt-armvirt-32-rootfs.cpio --name armvirt0 + lkvm run -k openwrt-armsr-armv7-zImage -i openwrt-armsr-armv7-rootfs.cpio --name armsr0 # start with virtio-9p rootfs - lkvm run -k openwrt-armvirt-32-zImage -d root-armvirt/ + lkvm run -k openwrt-armsr-armv7-zImage -d root-armsr/ - # stop "armvirt0" - lkvm stop --name armvirt0 + # stop "armsr0" + lkvm stop --name armsr0 # stop all lkvm stop --all @@ -39,13 +43,13 @@ Run with kvmtool The multi-platform ARMv8 target can be used with QEMU: qemu-system-aarch64 -machine virt -cpu cortex-a57 -nographic \ - -kernel openwrt-armvirt-64-generic-initramfs-kernel.bin \ + -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/armvirt/32/openwrt-armvirt-32-generic-ext4-combined.img.gz > openwrt-arm-32.img +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 QEMU_EFI_32.fd \ @@ -56,7 +60,7 @@ qemu-system-arm -nographic \ -netdev user,id=testwan -net nic,netdev=testwan 64-bit: -gunzip -c bin/targets/armvirt/64/openwrt-armvirt-64-generic-ext4-combined.img.gz > openwrt-arm-64.img +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 QEMU_EFI_64.fd \ diff --git a/target/linux/armvirt/32/config-5.15 b/target/linux/armsr/armv7/config-5.15 similarity index 100% rename from target/linux/armvirt/32/config-5.15 rename to target/linux/armsr/armv7/config-5.15 diff --git a/target/linux/armvirt/32/target.mk b/target/linux/armsr/armv7/target.mk similarity index 70% rename from target/linux/armvirt/32/target.mk rename to target/linux/armsr/armv7/target.mk index df22040241..fbad3abb26 100644 --- a/target/linux/armvirt/32/target.mk +++ b/target/linux/armsr/armv7/target.mk @@ -1,6 +1,6 @@ ARCH:=arm -SUBTARGET:=32 -BOARDNAME:=32-bit ARM QEMU Virtual Machine +SUBTARGET:=armv7 +BOARDNAME:=32-bit (armv7) machines CPU_TYPE:=cortex-a15 CPU_SUBTYPE:=neon-vfpv4 KERNELNAME:=zImage diff --git a/target/linux/armvirt/64/config-5.15 b/target/linux/armsr/armv8/config-5.15 similarity index 100% rename from target/linux/armvirt/64/config-5.15 rename to target/linux/armsr/armv8/config-5.15 diff --git a/target/linux/armvirt/64/target.mk b/target/linux/armsr/armv8/target.mk similarity index 69% rename from target/linux/armvirt/64/target.mk rename to target/linux/armsr/armv8/target.mk index ac5a60d848..654e5976ca 100644 --- a/target/linux/armvirt/64/target.mk +++ b/target/linux/armsr/armv8/target.mk @@ -1,6 +1,6 @@ ARCH:=aarch64 -SUBTARGET:=64 -BOARDNAME:=64-bit ARM machines +SUBTARGET:=armv8 +BOARDNAME:=64-bit (armv8) machines define Target/Description Build multi-platform images for the ARMv8 instruction set architecture diff --git a/target/linux/armvirt/base-files/etc/board.d/01_led b/target/linux/armsr/base-files/etc/board.d/01_led similarity index 100% rename from target/linux/armvirt/base-files/etc/board.d/01_led rename to target/linux/armsr/base-files/etc/board.d/01_led diff --git a/target/linux/armvirt/base-files/etc/board.d/02_network b/target/linux/armsr/base-files/etc/board.d/02_network similarity index 100% rename from target/linux/armvirt/base-files/etc/board.d/02_network rename to target/linux/armsr/base-files/etc/board.d/02_network diff --git a/target/linux/armvirt/base-files/etc/board.d/03_gpio_switches b/target/linux/armsr/base-files/etc/board.d/03_gpio_switches similarity index 100% rename from target/linux/armvirt/base-files/etc/board.d/03_gpio_switches rename to target/linux/armsr/base-files/etc/board.d/03_gpio_switches diff --git a/target/linux/armvirt/base-files/etc/inittab b/target/linux/armsr/base-files/etc/inittab similarity index 100% rename from target/linux/armvirt/base-files/etc/inittab rename to target/linux/armsr/base-files/etc/inittab diff --git a/target/linux/armvirt/base-files/lib/preinit/01_sysinfo_acpi b/target/linux/armsr/base-files/lib/preinit/01_sysinfo_acpi similarity index 100% rename from target/linux/armvirt/base-files/lib/preinit/01_sysinfo_acpi rename to target/linux/armsr/base-files/lib/preinit/01_sysinfo_acpi diff --git a/target/linux/armvirt/base-files/lib/upgrade/platform.sh b/target/linux/armsr/base-files/lib/upgrade/platform.sh similarity index 100% rename from target/linux/armvirt/base-files/lib/upgrade/platform.sh rename to target/linux/armsr/base-files/lib/upgrade/platform.sh diff --git a/target/linux/armvirt/config-5.15 b/target/linux/armsr/config-5.15 similarity index 100% rename from target/linux/armvirt/config-5.15 rename to target/linux/armsr/config-5.15 diff --git a/target/linux/armvirt/image/Makefile b/target/linux/armsr/image/Makefile similarity index 100% rename from target/linux/armvirt/image/Makefile rename to target/linux/armsr/image/Makefile diff --git a/target/linux/armvirt/image/grub-efi.cfg b/target/linux/armsr/image/grub-efi.cfg similarity index 100% rename from target/linux/armvirt/image/grub-efi.cfg rename to target/linux/armsr/image/grub-efi.cfg diff --git a/target/linux/armvirt/modules.mk b/target/linux/armsr/modules.mk similarity index 89% rename from target/linux/armvirt/modules.mk rename to target/linux/armsr/modules.mk index 5826c545b7..86acc8c4c7 100644 --- a/target/linux/armvirt/modules.mk +++ b/target/linux/armsr/modules.mk @@ -1,7 +1,7 @@ define KernelPackage/acpi-mdio SUBMENU:=$(NETWORK_DEVICES_MENU) TITLE:=ACPI MDIO support - DEPENDS:=@(TARGET_armvirt_64) +kmod-libphy +kmod-mdio-devres + DEPENDS:=@(TARGET_armsr_armv8) +kmod-libphy +kmod-mdio-devres KCONFIG:=CONFIG_ACPI_MDIO FILES:=$(LINUX_DIR)/drivers/net/mdio/acpi_mdio.ko AUTOLOAD:=$(call AutoLoad,11,acpi_mdio) @@ -15,7 +15,7 @@ $(eval $(call KernelPackage,acpi-mdio)) define KernelPackage/fsl-pcs-lynx SUBMENU=$(NETWORK_DEVICES_MENU) - DEPENDS:=@(TARGET_armvirt_64) +kmod-libphy +kmod-of-mdio +kmod-phylink + DEPENDS:=@(TARGET_armsr_armv8) +kmod-libphy +kmod-of-mdio +kmod-phylink TITLE:=NXP (Freescale) Lynx PCS HIDDEN:=1 KCONFIG:=CONFIG_PCS_LYNX @@ -28,7 +28,7 @@ $(eval $(call KernelPackage,fsl-pcs-lynx)) define KernelPackage/pcs-xpcs SUBMENU:=$(NETWORK_DEVICES_MENU) TITLE:=Synopsis DesignWare PCS driver - DEPENDS:=@(TARGET_armvirt_64) + DEPENDS:=@(TARGET_armsr_armv8) KCONFIG:=CONFIG_PCS_XPCS FILES:=$(LINUX_DIR)/drivers/net/pcs/pcs_xpcs.ko AUTOLOAD:=$(call AutoLoad,20,pcs_xpcs) @@ -38,7 +38,7 @@ $(eval $(call KernelPackage,pcs-xpcs)) define KernelPackage/fsl-fec SUBMENU:=$(NETWORK_DEVICES_MENU) - DEPENDS:=@(TARGET_armvirt_64) +kmod-libphy +kmod-of-mdio \ + DEPENDS:=@(TARGET_armsr_armv8) +kmod-libphy +kmod-of-mdio \ +kmod-ptp +kmod-net-selftests TITLE:=NXP (Freescale) FEC Ethernet controller (i.MX) KCONFIG:=CONFIG_FEC @@ -50,7 +50,7 @@ $(eval $(call KernelPackage,fsl-fec)) define KernelPackage/fsl-xgmac-mdio SUBMENU=$(NETWORK_DEVICES_MENU) - DEPENDS:=@(TARGET_armvirt_64) +kmod-libphy +kmod-of-mdio +kmod-acpi-mdio + DEPENDS:=@(TARGET_armsr_armv8) +kmod-libphy +kmod-of-mdio +kmod-acpi-mdio TITLE:=NXP (Freescale) MDIO bus KCONFIG:=CONFIG_FSL_XGMAC_MDIO FILES=$(LINUX_DIR)/drivers/net/ethernet/freescale/xgmac_mdio.ko @@ -74,7 +74,7 @@ $(eval $(call KernelPackage,fsl-mc-dpio)) define KernelPackage/fsl-enetc-net SUBMENU:=$(NETWORK_DEVICES_MENU) TITLE:=:NXP ENETC (LS1028A) Ethernet - DEPENDS:=@(TARGET_armvirt_64) +kmod-phylink +kmod-fsl-pcs-lynx + DEPENDS:=@(TARGET_armsr_armv8) +kmod-phylink +kmod-fsl-pcs-lynx KCONFIG:= \ CONFIG_FSL_ENETC \ CONFIG_FSL_ENETC_VF \ @@ -92,7 +92,7 @@ $(eval $(call KernelPackage,fsl-enetc-net)) define KernelPackage/fsl-dpaa1-net SUBMENU:=$(NETWORK_DEVICES_MENU) TITLE:=NXP DPAA1 (LS1043/LS1046) Ethernet - DEPENDS:=@(TARGET_armvirt_64) +kmod-fsl-xgmac-mdio +kmod-libphy +kmod-crypto-crc32 + DEPENDS:=@(TARGET_armsr_armv8) +kmod-fsl-xgmac-mdio +kmod-libphy +kmod-crypto-crc32 KCONFIG:= \ CONFIG_FSL_DPAA=y \ CONFIG_FSL_DPAA_ETH \ @@ -112,7 +112,7 @@ $(eval $(call KernelPackage,fsl-dpaa1-net)) define KernelPackage/fsl-dpaa2-net SUBMENU:=$(NETWORK_DEVICES_MENU) TITLE:=NXP DPAA2 Ethernet - DEPENDS:=@(TARGET_armvirt_64) +kmod-fsl-xgmac-mdio +kmod-phylink \ + DEPENDS:=@(TARGET_armsr_armv8) +kmod-fsl-xgmac-mdio +kmod-phylink \ +kmod-fsl-pcs-lynx +kmod-fsl-mc-dpio KCONFIG:= \ CONFIG_FSL_MC_UAPI_SUPPORT=y \ @@ -127,7 +127,7 @@ $(eval $(call KernelPackage,fsl-dpaa2-net)) define KernelPackage/fsl-dpaa2-console SUBMENU:=$(OTHER_MENU) TITLE:=NXP DPAA2 Debug console - DEPENDS:=@(TARGET_armvirt_64) + DEPENDS:=@(TARGET_armsr_armv8) KCONFIG:=CONFIG_DPAA2_CONSOLE FILES=$(LINUX_DIR)/drivers/soc/fsl/dpaa2-console.ko AUTOLOAD=$(call AutoLoad,40,dpaa2-console) @@ -143,7 +143,7 @@ $(eval $(call KernelPackage,fsl-dpaa2-console)) define KernelPackage/marvell-mdio SUBMENU:=$(NETWORK_DEVICES_MENU) TITLE:=Marvell Armada platform MDIO driver - DEPENDS:=@(TARGET_armvirt_64) +kmod-libphy +kmod-of-mdio +kmod-acpi-mdio + DEPENDS:=@(TARGET_armsr_armv8) +kmod-libphy +kmod-of-mdio +kmod-acpi-mdio KCONFIG:=CONFIG_MVMDIO FILES=$(LINUX_DIR)/drivers/net/ethernet/marvell/mvmdio.ko AUTOLOAD=$(call AutoLoad,30,marvell-mdio) @@ -154,7 +154,7 @@ $(eval $(call KernelPackage,marvell-mdio)) define KernelPackage/phy-marvell-10g SUBMENU:=$(NETWORK_DEVICES_MENU) TITLE:=Marvell Alaska 10G PHY driver - DEPENDS:=@(TARGET_armvirt_64) +kmod-libphy + DEPENDS:=@(TARGET_armsr_armv8) +kmod-libphy KCONFIG:=CONFIG_MARVELL_10G_PHY FILES=$(LINUX_DIR)/drivers/net/phy/marvell10g.ko AUTOLOAD=$(call AutoLoad,35,marvell10g) @@ -165,7 +165,7 @@ $(eval $(call KernelPackage,phy-marvell-10g)) define KernelPackage/mvneta SUBMENU:=$(NETWORK_DEVICES_MENU) TITLE:=Marvell Armada 370/38x/XP/37xx network driver - DEPENDS:=@(TARGET_armvirt_64) +kmod-marvell-mdio +kmod-phylink + DEPENDS:=@(TARGET_armsr_armv8) +kmod-marvell-mdio +kmod-phylink KCONFIG:=CONFIG_MVNETA FILES:=$(LINUX_DIR)/drivers/net/ethernet/marvell/mvneta.ko AUTOLOAD=$(call AutoLoad,40,mvneta) @@ -176,7 +176,7 @@ $(eval $(call KernelPackage,mvneta)) define KernelPackage/mvpp2 SUBMENU:=$(NETWORK_DEVICES_MENU) TITLE:=Marvell Armada 375/7K/8K network driver - DEPENDS:=@(TARGET_armvirt_64) +kmod-marvell-mdio +kmod-phylink + DEPENDS:=@(TARGET_armsr_armv8) +kmod-marvell-mdio +kmod-phylink KCONFIG:=CONFIG_MVPP2 \ CONFIG_MVPP2_PTP=n FILES=$(LINUX_DIR)/drivers/net/ethernet/marvell/mvpp2/mvpp2.ko @@ -208,7 +208,7 @@ $(eval $(call KernelPackage,imx7-ulp-wdt)) define KernelPackage/stmmac-core SUBMENU=$(NETWORK_DEVICES_MENU) TITLE:=Synopsis Ethernet Controller core (NXP,STMMicro,others) - DEPENDS:=@(TARGET_armvirt_64) +kmod-phylink +kmod-pcs-xpcs +kmod-ptp + DEPENDS:=@(TARGET_armsr_armv8) +kmod-phylink +kmod-pcs-xpcs +kmod-ptp KCONFIG:=CONFIG_STMMAC_ETH \ CONFIG_STMMAC_SELFTESTS=n \ CONFIG_STMMAC_PLATFORM \ @@ -258,7 +258,7 @@ $(eval $(call KernelPackage,dwmac-rockchip)) define KernelPackage/thunderx-net SUBMENU:=$(NETWORK_DEVICES_MENU) TITLE:=Marvell (Cavium) ThunderX/2 network drivers - DEPENDS:=@(TARGET_armvirt_64) +kmod-phylink + DEPENDS:=@(TARGET_armsr_armv8) +kmod-phylink KCONFIG:=CONFIG_NET_VENDOR_CAVIUM \ CONFIG_THUNDER_NIC_PF \ CONFIG_THUNDER_NIC_VF \ diff --git a/target/linux/armvirt/patches-5.15/221-armvirt-disable-gc_sections.patch b/target/linux/armsr/patches-5.15/221-armsr-armv7-disable-gc_sections.patch similarity index 100% rename from target/linux/armvirt/patches-5.15/221-armvirt-disable-gc_sections.patch rename to target/linux/armsr/patches-5.15/221-armsr-armv7-disable-gc_sections.patch diff --git a/target/linux/armvirt/patches-5.15/701-dpaa2-eth-do-not-hold-rtnl_lock.patch b/target/linux/armsr/patches-5.15/701-dpaa2-eth-do-not-hold-rtnl_lock.patch similarity index 100% rename from target/linux/armvirt/patches-5.15/701-dpaa2-eth-do-not-hold-rtnl_lock.patch rename to target/linux/armsr/patches-5.15/701-dpaa2-eth-do-not-hold-rtnl_lock.patch diff --git a/target/linux/armvirt/patches-5.15/702-net-dpaa2-mac-add-support-for-more-10G-modes.patch b/target/linux/armsr/patches-5.15/702-net-dpaa2-mac-add-support-for-more-10G-modes.patch similarity index 100% rename from target/linux/armvirt/patches-5.15/702-net-dpaa2-mac-add-support-for-more-10G-modes.patch rename to target/linux/armsr/patches-5.15/702-net-dpaa2-mac-add-support-for-more-10G-modes.patch -- 2.30.2