aboutsummaryrefslogtreecommitdiff
path: root/target/linux/armvirt
Commit message (Collapse)AuthorAge
* armvirt: switch to kernel 6.1Mathew McBride2023-06-02
| | | | | | | The EFI implementation changes have only been applied to 6.1, so switch armvirt over to it. Signed-off-by: Mathew McBride <matt@traverse.com.au>
* armvirt: 64: disable CONFIG_SMC91XMathew McBride2023-06-02
| | | | | | | | | The SMC91X family is a ISA-age Ethernet controller. I'm not particularly sure what it's doing in armvirt/64, as it's unlikely there is a QEMU or real hardware configuration that exists with it. Signed-off-by: Mathew McBride <matt@traverse.com.au>
* armvirt: base-files: add tty0 to inittabMathew McBride2023-06-02
| | | | | | tty0 is the default console for devices with screens/framebuffers. Signed-off-by: Mathew McBride <matt@traverse.com.au>
* armvirt: config changes required for framebuffer consoleMathew McBride2023-06-02
| | | | | | | | | These Kconfig options are required to get a screen console working with the VMware Fusion ARM (Apple Silicon) preview. They are likely to be the same for other Arm standard "desktop" hardware that may emerge. Signed-off-by: Mathew McBride <matt@traverse.com.au>
* armvirt: package and select Rockchip DWMAC Ethernet driverMathew McBride2023-06-02
| | | | | | | | | | | | For devices that implement the "rockchip,*-gmac" compatible controller, including: - RK3328 - RK3399 - RK3568 - RK3588 - PX30 Signed-off-by: Mathew McBride <matt@traverse.com.au>
* armvirt: 64: add Allwinner A3/A83T/A64 (sun8i family) EthernetMathew McBride2023-06-02
| | | | | | | Add support for the dwmac (stmmac) variant used by Allwinner Arm64 boards. Signed-off-by: Mathew McBride <matt@traverse.com.au>
* armvirt: 64: add Marvell (formerly Cavium) ThunderX series network driverMathew McBride2023-06-02
| | | | | | Based on working configuration supplied by Anton Antonov. Signed-off-by: Mathew McBride <matt@traverse.com.au>
* armvirt: 64: Add storage support for qemu-sbsa platformAnton Antonov2023-06-02
| | | | | | | | | | Enable SATA support, which is used by the Server Base System Architecture reference board[1]. Signed-off-by: Anton Antonov <Anton.Antonov@arm.com> Signed-off-by: Mathew McBride <matt@traverse.com.au> [1] - https://qemu.readthedocs.io/en/latest/system/arm/sbsa.html
* armvirt: 64: Add NXP i.MX 8M Mini/Nano/Quad/Plus EVK supportAnton Antonov2023-06-02
| | | | | | | | Also includes Advantech RSB-3720 (iMX8 Plus) support. Signed-off-by: Anton Antonov <Anton.Antonov@arm.com> Signed-off-by: Mathew McBride <matt@traverse.com.au> [Re-sort into kernel config, move network into modules]
* armvirt: 64: add support for other SystemReady-compatible vendorsMathew McBride2023-06-02
| | | | | | | | | | | | | | | | | | | | | | | | | | These changes are to support other vendors that have SystemReady/EFI support, including: * Marvell Armada ** (This is speculative as I don't have a machine of my own to test) * Amazon Graviton (tested bare-metal and virtualized instances) * VMware (Fusion for ARM Mac preview) * NXP/Freescale (Layerscape series not already selected) * HiSilicon * Allwinner/sunxi * Rockchip (untested, options taken from arm64 defconfig) To give an idea of the hardware certified for SystemReady, see https://www.arm.com/architecture/system-architectures/systemready-certification-program/ir and https://www.arm.com/architecture/system-architectures/systemready-certification-program/es Other vendors that _should_ work include Marvell Octeon 10 and Ampere. I understand these systems should work "out of the box" in ACPI mode but may require other drivers (e.g PCIe NICs and storage controllers). Signed-off-by: Mathew McBride <matt@traverse.com.au>
* armvirt: add SFP support patches for NXP Layerscape DPAA2 platformsMathew McBride2023-06-02
| | | | | | | | | | | | | | | This series resolves a long term issue with Phylink and SFPs on DPAA2 hardware (LS1088,LS2088,LX2160) where a locking problem prevented the system from rebooting. Patches solving this issue existed prior to 6.2 but were not accepted upstream. See the original series on patchwork: https://patchwork.kernel.org/project/netdevbpf/cover/20221129141221.872653-1-vladimir.oltean@nxp.com/ And this thread on the Traverse forum: https://forum.traverse.com.au/t/reboot-command-regression-from-5-10-to-5-15-kernel/133/12 Signed-off-by: Mathew McBride <matt@traverse.com.au>
* armvirt: add options and driver modules for NXP Layerscape DPAA2 platformMathew McBride2023-06-02
| | | | | | Tested with a Traverse Technologies Ten64 (LS1088A) board. Signed-off-by: Mathew McBride <matt@traverse.com.au>
* armvirt: add ACPI supportMathew McBride2023-06-02
| | | | | | | | | | ACPI support is required for Arm 'SystemReady' server and workstation systems (and as an option on embedded platforms). These config changes allow OpenWrt to boot in a QEMU virtual machine with a UEFI/EDKII 'BIOS', but with no other hardware enabled yet. Signed-off-by: Mathew McBride <matt@traverse.com.au>
* build: enable vmdk/vmware images for arm64 targetMathew McBride2023-06-02
| | | | | | This is useful for VMware's ARM64 products, e.g Fusion for M1/ARM Macs. Signed-off-by: Mathew McBride <matt@traverse.com.au>
* armvirt: remove model name overrideMathew McBride2023-06-02
| | | | | | | Now that armvirt has been expanded to boot on more generic ARM machines, remove the board and model name override. Signed-off-by: Mathew McBride <matt@traverse.com.au>
* armvirt: set kernel partition as the EFI system partitionMathew McBride2023-06-02
| | | | | | | U-Boot with EFI boot manager functionality will store EFI boot order data on the ESP in the ubootefi.var file. Signed-off-by: Mathew McBride <matt@traverse.com.au>
* armvirt: update README with new image namesMathew McBride2023-06-02
| | | | | | | | The introduction of EFI support has changed how armvirt images are generated. The kernel and filesystem binaries can still be used as before with QEMU directly. Signed-off-by: Mathew McBride <matt@traverse.com.au>
* armvirt: disable LD dead code elimination on ARM32Mathew McBride2023-06-02
| | | | | | | | This interferes with the generation of the EFI stub section for ARM32. As this target is not size constrained, disable the dead code data elimination hack. Signed-off-by: Mathew McBride <matt@traverse.com.au>
* armvirt: add EFI supportMathew McBride2023-06-02
| | | | | | | | | | | | | EFI booting is used on newer machines compatible with the Arm SystemReady specifications. This commit restructures armvirt into a more 'generic' target similar to x86. See https://github.com/openwrt/openwrt/pull/4956 for a history of this port. Signed-off-by: Mathew McBride <matt@traverse.com.au>
* armvirt: 6.1: enable kernel for testingTony Ambardar2023-05-28
| | | | | | Build and run-tested on QEMU/armvirt32 and QEMU/armvirt64. Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
* armvirt: 6.1: update kernel configsTony Ambardar2023-05-28
| | | | | | | | | | | | | | | | | | | | The following new common symbols are defined: CONFIG_ARCH_FORCE_MAX_ORDER=11 # CONFIG_NET_9P_FD is not set Removed symbols for armvirt/32 include: CONFIG_ARM_CRYPTO=y New symbols for armvirt/64 include: CONFIG_ARM64_SME=y CONFIG_CRYPTO_POLYVAL_ARM64_CE=y # CONFIG_CRYPTO_SM4_ARM64_CE_BLK is not set # CONFIG_CRYPTO_SM4_ARM64_NEON_BLK is not set Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
* armvirt: 6.1: copy config from kernel 5.15Tony Ambardar2023-05-28
| | | | | | Copy config files for kernel 5.15 to kernel 6.1. Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
* kernel: enable (ARM|ARM64)_MODULE_PLTS in generic configTony Ambardar2023-05-23
| | | | | | | | | | | | | | | | | | | This allows loading modules with large memory requirements, recently needed while testing on armvirt/32. Past forum discussions [1] and bug reports [2] also raised this and the ipq806x target already set it in response [3]. Given this increases kernel image size by only ~1KB, is generally useful on multi-platform kernels, and enabled by default on upstream arm32 Linux, add it to the generic config. The setting has similar utility on arm64, is a requirement for KASLR, and already enabled on most OpenWrt aarch64 targets, so pull this into the top-level generic config. [1]: https://forum.openwrt.org/t/vmap-allocation-for-size-442368-failed-use-vmalloc-size-to-increase-size/34545/7 [2]: https://github.com/openwrt/openwrt/issues/8282 [3]: f81e148eb6 ("ipq806x: update 4.19 kernel config"). Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
* treewide: remove files for building 5.10 kernelNick Hainke2023-05-12
| | | | | | | | | | | All targets are bumped to 5.15. Remove the old 5.10 patches, configs and files using: find target/linux -iname '*-5.10' -exec rm -r {} \; Further, remove the 5.10 include. Signed-off-by: Nick Hainke <vincent@systemli.org>
* generic: enable CONFIG_ARM_CRYPTO for 32bit arm targetsLu jicong2023-05-10
| | | | | | | Fix following error when building 32bit arm targets with kmod-crypto-sha512 ERROR: module '/home/user/openwrt/build_dir/target-arm_xscale_musl_eabi/linux-kirkwood_generic/linux-5.15.109/arch/arm/crypto/sha512-arm.ko' is missing. Signed-off-by: Lu jicong <jiconglu58@gmail.com>
* generic: refresh 5.15 kernel configLu jicong2023-05-10
| | | | | | prepare for enabling CONFIG_ARM_CRYPTO on these targets Signed-off-by: Lu jicong <jiconglu58@gmail.com>
* kernel: disable CONFIG_CPU_LITTLE_ENDIAN in generic configAleksander Jan Bajkowski2022-10-21
| | | | | | | | | | | | | | | | | | | | | | | | | Endianness depends on CPU architecture. CONFIG_CPU_(BIG/LITTLE)_ENDIAN should be enabled on target or subtarget based on SoC architecture. Fixes warning: $ make kernel_oldconfig CONFIG_TARGET=subtarget ... .config:1008:warning: override: CPU_LITTLE_ENDIAN changes choice state .... Summary: - ARC - only the CONFIG_CPU_BIG_ENDIAN symbol is defined for this architeture. If it is disabled then the processor operates in LITTLE_ENDIAN mode (default), - ARM32 - CONFIG_CPU_LITTLE_ENDIAN symbol available since kernel 5.19. This option should be enabled after OpenWRT moves to kernel 6.x. After refreshing the kernel, the symbol disappears, - ARM64 - enabled CONFIG_CPU_LITTLE_ENDIAN, - MIPS - enabled relevant symbols, - POWERPC - enabled CONFIG_CPU_BIG_ENDIAN, - UML - Symbols are not defined for this architecture, - X86 - always little endian. Symbols are not defined for this architecture. Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
* armvirt: make 5.15 kernel defaultPetr Štetiar2022-09-14
| | | | | | In order to begin testing of upcoming kernel. Signed-off-by: Petr Štetiar <ynezz@true.cz>
* kernel: Activate CONFIG_GPIOLIB in generic configurationHauke Mehrtens2022-08-10
| | | | | | | | All targets expect the malta target already activate the CONFIG_GPIOLIB option. Move it to generic kernel configuration and also activate it for malta. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* generic: enable CRYPTO_LIB_BLAKE2S[_X86|_ARM]Tomasz Maciej Nowak2022-06-24
| | | | | | | | | | | | This is now built-in, enable so it won't propagate on target configs. Link: https://lkml.org/lkml/2022/1/3/168 Fixes: 79e7a2552e89 ("kernel: bump 5.15 to 5.15.44") Fixes: 0ca93670693b ("kernel: bump 5.10 to 5.10.119") Signed-off-by: Tomasz Maciej Nowak <tmn505@gmail.com> (Link to Kernel's commit taht made it built-in, CRYPTO_LIB_BLAKE2S[_ARM|_X86] as it's selectable, 5.10 backport) Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* armvirt: 64: enable driver for QEMU' supported watchdogChristian Lamparter2022-05-07
| | | | | | | | | | | | QEMU can emulate several watchdogs: aspeed SoC, i6300esb, ib700wdt, imx2, cmsdk-apb and sbsa_gwdt. Out of these, the ARM SBSA Generic Watchdog (sbsa_gwdt) makes the most sense for the armvirt' 64 target. Both imx2 and aspeed are guarded by special vendor specific CONFIG_ in the upstream kernel. Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* armvirt: add 5.15 as testing kernelAleksander Jan Bajkowski2022-04-09
| | | | | | Add 5.15 as testing kernel. Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
* armvirt: move common symbols from subtarget to target configAleksander Jan Bajkowski2022-04-09
| | | | | | | These new symbols are common for all subtargets and can be moved into target config. Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
* armvirt: refresh 5.15 configAleksander Jan Bajkowski2022-04-09
| | | | | | | | This was done by executing these commands: $ make kernel_oldconfig CONFIG_TARGET=subtarget $ make kernel_oldconfig CONFIG_TARGET=subtarget_platform Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
* armvirt: copy config files from 5.10Aleksander Jan Bajkowski2022-04-09
| | | | | | Copy config files from 5.10. Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
* armvirt: refresh 5.10 configAleksander Jan Bajkowski2022-04-09
| | | | | | | | This was done by executing these commands: $ make kernel_oldconfig CONFIG_TARGET=subtarget $ make kernel_oldconfig CONFIG_TARGET=subtarget_platform Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
* kernel: 5.10: consolidate mac80211 crypto optionsSergey Ryazanov2021-12-17
| | | | | | | | | | | | | | | | | | | | | | Each of - CRYPTO_AEAD2 - CRYPTO_AEAD - CRYPTO_GF128MUL - CRYPTO_GHASH - CRYPTO_HASH2 - CRYPTO_HASH - CRYPTO_MANAGER2 - CRYPTO_MANAGER - CRYPTO_NULL2 either directly required for mac80211 crypto support, or directly selected by such options. Support for the mac80211 crypto was enabled in the generic config since c7182123b9 ("kernel: make cryptoapi support needed by mac80211 built-in"). So move the above options from the target configs to the generic config to make it clear why do we need them. CC: Felix Fietkau <nbd@nbd.name> Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
* kernel: filter out both Clang and LLD versionsSergey Ryazanov2021-12-17
| | | | | | | | Both CLANG_VERSION and LLD_VERISON are autogenerated runtime configuration options, so add them to the kernel configuration filter and remove from generic and per-target configs to keep configs clean. Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
* armvirt: enable MMIO_CMDLINE_DEVICES for firecracker supportPaul Spooren2021-10-12
| | | | | | | | | | | | | This Kernel option allows to run OpenWrt witin a `firecracker` micro VM. Firecracker is a KVM-based tool for superfast booting VMs on x86_64 and aarch64. It makes rootfs available to the guest as a virtio-mmio device and passes its address via the kernel cmdline. A kernel without CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES will not recognize the rootfs virtio-mmio device. Suggested-by: Packet Please <pktpls@systemli.org> Signed-off-by: Paul Spooren <mail@aparcar.org>
* armvirt: remove obsolete Kernel 5.4Paul Spooren2021-10-02
| | | | | | | With the upgrade to Kernel 5.10 per default the old version is no longer required to be in tree. Signed-off-by: Paul Spooren <mail@aparcar.org>
* armvirt: switch to Kernel 5.10Paul Spooren2021-10-01
| | | | | | | | | | | | Armvirt is a development and testing platform and should therefore use the latest OpenWrt Kernel by default. Tested via qemu. Acked-by: Rosen Penev <rosenp@gmail.com> Acked-by: Yousong Zhou <yszhou4tech@gmail.com> Signed-off-by: Paul Spooren <mail@aparcar.org>
* kernel: move two symbols to the generic kconfigsRui Salvaterra2021-08-29
| | | | | | | CONFIG_RCU_{NEED_SEGCBLIST,STALL_COMMON} are set basically everywhere. Move them to the generic kconfigs. And resort the generic kconfigs while at it. Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
* treewide: switch the timer frequency to 100 HzRui Salvaterra2021-04-21
| | | | | | | | Some targets select HZ=100, others HZ=250. There's no reason to select a higher timer frequency (and 100 Hz are available in every architecture), so change all targets to 100 Hz. Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
* armvirt: add 5.10 testing kernelAleksander Jan Bajkowski2021-04-03
| | | | | | | Add 5.10 as testing kernel. Builds successfully with CONFIG_ALL_KMODS=y enabled. Signed-off-by: Aleksander Jan Bajkowski <A.Bajkowski@stud.elka.pw.edu.pl>
* armvirt: refresh 5.10 configAleksander Jan Bajkowski2021-04-03
| | | | | | | | | | This was done by executing these commands: $ make kernel_oldconfig CONFIG_TARGET=subtarget $ make kernel_oldconfig CONFIG_TARGET=subtarget_platform Some common symbols have been moved to target config. Signed-off-by: Aleksander Jan Bajkowski <A.Bajkowski@stud.elka.pw.edu.pl>
* armvirt: copy config files for 5.10Aleksander Jan Bajkowski2021-04-03
| | | | | | Copy config and patches for 5.10. Signed-off-by: Aleksander Jan Bajkowski <A.Bajkowski@stud.elka.pw.edu.pl>
* armvirt: refresh 5.4 configAleksander Jan Bajkowski2021-04-03
| | | | | | | | This was done by executing these commands: $ make kernel_oldconfig CONFIG_TARGET=subtarget $ make kernel_oldconfig CONFIG_TARGET=subtarget_platform Signed-off-by: Aleksander Jan Bajkowski <A.Bajkowski@stud.elka.pw.edu.pl>
* kernel: move some disabled symbols to genericAleksander Jan Bajkowski2021-03-19
| | | | | | Move some disabled symbols found in armvirt target to generic. Signed-off-by: Aleksander Jan Bajkowski <A.Bajkowski@stud.elka.pw.edu.pl>
* treewide: remove execute bit and shebang from board.d filesAdrian Schmutzler2021-03-06
| | | | | | | | | | | | | | | | So far, board.d files were having execute bit set and contained a shebang. However, they are just sourced in board_detect, with an apparantly unnecessary check for execute permission beforehand. Replace this check by one for existance and make the board.d files "normal" files, as would be expected in /etc anyway. Note: This removes an apparantly unused '#!/bin/sh /etc/rc.common' in target/linux/bcm47xx/base-files/etc/board.d/01_network Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* target: use SPDX license identifiers on MakefilesAdrian Schmutzler2021-02-10
| | | | | | Use SPDX license tags to allow machines to check licenses. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>