aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/armvirt/64
Commit message (Collapse)AuthorAgeFilesLines
* armsr: rename from armvirtMathew McBride2023-06-132-507/+0
| | | | | | | | | | | | | | | | | | | 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 <matt@traverse.com.au> (23.05 version of commit 40b02a230167626def69389452f19b7109aaeac1)
* armvirt: 64: disable CONFIG_SMC91XMathew McBride2023-06-131-1/+1
| | | | | | | | | | 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> (23.05/5.15 version of commit 214e94cddf1bfd4e6141f79a70f532267fe1bea0)
* armvirt: 64: Add storage support for qemu-sbsa platformAnton Antonov2023-06-131-0/+4
| | | | | | | | | | | 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 (23.05/5.15 version of 26905c96124af10a795167509116252e9357baea)
* armvirt: 64: Add NXP i.MX 8M Mini/Nano/Quad/Plus EVK supportAnton Antonov2023-06-131-2/+80
| | | | | | | | | 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] (23.05/5.15 version of commit 3efb3b801bb1393897ff58b9af3753157f28f441)
* armvirt: 64: add support for other SystemReady-compatible vendorsMathew McBride2023-06-131-2/+218
| | | | | | | | | | | | | | | | | | | | | | | | | | | 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> (23.05/5.15 version of c3151b6f04579a937b7cb166bbeff0d0ee539946)
* armvirt: add options and driver modules for NXP Layerscape DPAA2 platformMathew McBride2023-06-131-2/+48
| | | | | | | Tested with a Traverse Technologies Ten64 (LS1088A) board. Signed-off-by: Mathew McBride <matt@traverse.com.au> (23.05/5.15 version of commit 54bb95f879aaa62c4253d30390e77bc8180f4ed7)
* armvirt: add ACPI supportMathew McBride2023-06-131-1/+3
| | | | | | | | | | | 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> (23.05/5.15 version of cb3bbbf00cfb465de3333e4b84e8da9138985595)
* armvirt: add EFI supportMathew McBride2023-06-131-3/+1
| | | | | | | | | | | | | | 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> (23.05 version of e0f06ddc23b2503a1791ae7e97b02e2647e8a70d)
* kernel: enable (ARM|ARM64)_MODULE_PLTS in generic configTony Ambardar2023-05-241-1/+0
| | | | | | | | | | | | | | | | | | | | | 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> (cherry picked from commit c2d194a34eb1a62a610f0437287db6c3eca64d5a) Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* treewide: remove files for building 5.10 kernelNick Hainke2023-05-121-154/+0
| | | | | | | | | | | 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>
* kernel: disable CONFIG_CPU_LITTLE_ENDIAN in generic configAleksander Jan Bajkowski2022-10-211-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | 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>
* generic: enable CRYPTO_LIB_BLAKE2S[_X86|_ARM]Tomasz Maciej Nowak2022-06-242-0/+4
| | | | | | | | | | | | 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-072-0/+4
| | | | | | | | | | | | 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: move common symbols from subtarget to target configAleksander Jan Bajkowski2022-04-091-6/+0
| | | | | | | 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-091-8/+14
| | | | | | | | 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-091-0/+150
| | | | | | Copy config files from 5.10. Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
* armvirt: refresh 5.10 configAleksander Jan Bajkowski2022-04-091-1/+1
| | | | | | | | 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-171-1/+0
| | | | | | | | | | | | | | | | | | | | | | 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>
* armvirt: remove obsolete Kernel 5.4Paul Spooren2021-10-021-155/+0
| | | | | | | 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>
* treewide: switch the timer frequency to 100 HzRui Salvaterra2021-04-212-4/+0
| | | | | | | | 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: refresh 5.10 configAleksander Jan Bajkowski2021-04-031-13/+9
| | | | | | | | | | 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-031-0/+157
| | | | | | 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-031-100/+7
| | | | | | | | 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-191-10/+0
| | | | | | Move some disabled symbols found in armvirt target to generic. Signed-off-by: Aleksander Jan Bajkowski <A.Bajkowski@stud.elka.pw.edu.pl>
* armvirt/64: change it to cortex-a53 instead of genericJosef Schlehofer2020-12-141-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Package architecture aarch64_generic [1] can be used just with three devices. One is NanoPI R2S and then there are two development boards from NXP. Let's change armvirt/64 to Cortex A53 (aarch64_cortex-a53) [2]. It has wider support by multiple devices like NanoPI Neo Plus2/Core2, ESPRESSObin, Pine64, and Raspberry Pi 2&3. While looking at ARMvirt/32 it has set CPU_TYPE and CPU_SUBTYPE to be arm_cortex-a15_neon-vfpv4 [3]. It has support to devices like Linksys EA8500 v1, Linksys EA7500 v1, Netgear D7800, Netgear R7500 and so on. Tested with: qemu-system-aarch64 -m 1024 -smp 2 -cpu cortex-a57 -M virt -nographic \ -kernel openwrt-armvirt-64-Image-initramfs Successfully compiled and booted. Here goes the output: root@OpenWrt:/# uname -a Linux OpenWrt 5.4.82 #0 SMP Sun Dec 13 12:52:10 2020 aarch64 GNU/Linux root@OpenWrt:/# cat /etc/openwrt_release DISTRIB_ID='OpenWrt' DISTRIB_RELEASE='SNAPSHOT' DISTRIB_REVISION='r15207-96fca0f807' DISTRIB_TARGET='armvirt/64' DISTRIB_ARCH='aarch64_cortex-a53' DISTRIB_DESCRIPTION='OpenWrt SNAPSHOT r15207-96fca0f807' DISTRIB_TAINTS='no-all' Also, change BOARDNAME to be the same as it is in armvirt/32. [1] https://openwrt.org/docs/techref/instructionset/aarch64_generic [2] https://openwrt.org/docs/techref/instructionset/aarch64_cortex-a53 [3] https://openwrt.org/docs/techref/instructionset/arm_cortex-a15_neon-vfpv4 Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
* kernel: remove support for kernel 4.19Adrian Schmutzler2020-10-301-230/+0
| | | | | | | We use 5.4 on all targets by default, and 4.19 has never been released in a stable version. There is no reason to keep it. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* kernel: Move CONFIG_IONIC to generic kernel configHauke Mehrtens2020-08-101-1/+0
| | | | | | | It is deactivated everywhere, just set this in the generic config. Acked-by: Yousong Zhou <yszhou4tech@gmail.com> Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* kernel: move TEO governor to generic configTomasz Maciej Nowak2020-03-171-1/+0
| | | | | | | | This new symbol popped up in few places. Disable it in generic config. Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl> [fixed merge conflict in generic/config-5.4] Signed-off-by: Petr Štetiar <ynezz@true.cz>
* armvirt: Remove kernel 4.14 supportHauke Mehrtens2020-03-121-179/+0
| | | | | | | | | | This target was switched to kernel 4.19 more than 6 months ago in commit f342ffd300da ("treewide: kernel: bump some targets to 4.19") and now with kernel 5.4 support being added it gets harder to support kernel 4.14 in addition to kernel 4.19 and 5.4. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> Acked-by: Yousong Zhou <yszhou4tech@gmail.com>
* armvirt: 5.4: kconfig syncYousong Zhou2020-03-101-12/+44
| | | | | | | "make kernel_menuconfig CONFIG_TARGET=subtarget_platform" first, then move common ones to platform level config Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
* armvirt: add config-5.4Yousong Zhou2020-03-101-0/+230
| | | | | | Copied from config-4.19 Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
* armvirt: refresh 4.19 kernel configPetr Štetiar2019-06-181-44/+95
| | | | | | | Refresh kernel configs with 4.19 bits, while at it, add common symbols into the target config. Signed-off-by: Petr Štetiar <ynezz@true.cz>
* armvirt: add kernel configs for 4.19Petr Štetiar2019-06-182-0/+179
| | | | | | | It's just copy of 4.14 and will be refreshed in the upcoming commit, renamed config-default to config-4.14 as well. Signed-off-by: Petr Štetiar <ynezz@true.cz>
* kernel: Remove CONFIG_COMPATHauke Mehrtens2019-05-111-10/+0
| | | | | | | | | | | | | This removes support for executing old 32 bit applications on 64 bit ARM and MIPS kernels. On OpenWrt we normally compile all the user space applications on our own and do not support third party binary only modules especial not 32 bit applications on 64 bit CPUs. This reduces the attack surface on such systems and should also save some memory. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* kernel: Activate CONFIG_ARM64_SW_TTBR0_PANHauke Mehrtens2019-05-111-1/+0
| | | | | | | | | | This activates "Emulate Privileged Access Never using TTBR0_EL1 switching" on ARM64. This should prevent the kernel from reading code from user space in kernel context. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* armvirt64: enable qemu drm driversLucian Cristian2019-04-181-0/+4
| | | | | | | adds the qemu video drivers and also fixes the build failure introduced with drm-kms-helper Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
* kernel: add missing ARM64_SSBD symbolStijn Tintel2018-07-311-0/+1
| | | | | | | | | In 4.14.57, a new symbol for Spectre v4 mitigation was introduced for ARM64. Add this symbol to all ARM64 targets using kernel 4.14. This mitigates CVE-2018-3639 on ARM64. Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
* arm64: enable harden branch predictorMathias Kresin2018-04-271-0/+2
| | | | | | Enable the harden branch predictor for arm64 as it is recommend. Signed-off-by: Mathias Kresin <dev@kresin.me>
* armvirt: 64: add missing kernel config symbolsJo-Philipp Wich2018-01-101-0/+13
| | | | | Fixes: aa100b66f2 ("armvirt: bump to v4.14") Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* kernel: move CONFIG_KASAN to generic configStijn Tintel2018-01-021-1/+0
| | | | | | | | | | While bumping 4.14, the kernel build failed due to missing CONFIG_KASAN symbol. Move it to generic config instead of defining it for all arm64 and x86/64 targets. It was only added in 4.0, so not needed in config-3.18. Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
* armvirt: Enable CONFIG_ARM_PMUFlorian Fainelli2017-09-161-0/+1
| | | | | | | We will be prompted with this config symbol when performance monitoring is enabled in the kernel. Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
* armvirt: merge arm64 as subtarget 64Yousong Zhou2017-04-232-0/+178
Original armvirt target is now subtarget 32. Other than that the built result should remain the same as before Besides old features already available with arm64, the new armvirt/64 subtarget will also have those features originally enabled for armvirt/32 with commit 44ecfc2 ("armvirt: new target") - pl011, uart - pl031, rtc - pl061, gpio - pci-host-generic - virtio_{mmio,pci,net,blk,scsi,9p,console,balloon} - smp with NR_CPUS=4 - cpu-hotplug - ext4 - DEBUG_BUGVERBOSE for debug purposes Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>