Commit Graph

26 Commits

Author SHA1 Message Date
Philip Prindeville
b10768476f x86,armsr: interpolate GRUB_SERIAL into /etc/inittab
Some platforms have their console on other ports than ttyS0, so
allow the developer to tailor this on bespoke platform images.

Fixes issue #13401.

Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
2023-11-19 17:33:37 +01:00
Christian Buschau
67ce60c5f9
armsr: preserve configuration during sysupgrade
Copy configuration to boot partition (partition 1) instead of root
partition (partition 2) because the root partition is not writable if
it's a suqashfs image.
Move configuration back to root during preinit.

Fixes: https://github.com/openwrt/openwrt/issues/13695
Signed-off-by: Christian Buschau <cbuschau@d00t.de>
2023-10-20 00:36:32 +02:00
Javier Tia
2e3ea6d206 armsr: armv8: Enable KASLR in kernel 6.1
In userspace, ASLR is enabled, but it's missing to enable KASLR on the
kernel side to improve security as part of SystemReady recommendations.

Signed-off-by: Javier Tia <javier.tia@linaro.org>
2023-10-05 21:57:17 +02:00
Mathew McBride
f86415085b armsr: ensure kmod-fs-vfat is selected for mounting ESP
vfat support is needed to mount the EFI System Partition (ESP)
during sysupgrade. If it is not available, the sysupgrade process
will not complete

Signed-off-by: Mathew McBride <matt@traverse.com.au>
2023-09-24 12:51:14 +02:00
Mathew McBride
7770d08e2b armsr: armv8: fix invalid symbol value for FSL_ENETC_QOS
The kernel FSL_ENETC_QOS option is only a compile time
option, it does not result in a separate module being built.

Set it to 'y' to resolve a warning from the kernel compile:

.config:2654:warning: symbol value 'm' invalid for FSL_ENETC_QOS

Signed-off-by: Mathew McBride <matt@traverse.com.au>
Fixes: c3151b6f04 ("armvirt: 64: add support for other SystemReady-compatible vendors")
2023-08-15 15:55:00 +02:00
Mathew McBride
9cb173e9f1 armsr: armv8: enable AHCI/SATA controllers for mvebu,qoriq,juno
When comparing the generated OpenWrt .config to the Linux arm64
defconfig, I noticed these SATA controllers were not included.
As they may be used as a boot drive, they should be built into
the kernel.

CONFIG_SATA_MVEBU is for Marvell platforms.
CONFIG_SATA_QORIQ is for NXP Layerscape.
CONFIG_SATA_SIL24 is for Arm's Juno development board, see Linux
kernel commit d7c38ff1cd86 ("arm64: defconfig: Add Juno SATA
controller").

Signed-off-by: Mathew McBride <matt@traverse.com.au>
2023-08-15 15:55:00 +02:00
Mathew McBride
0018b33531 armsr: armv8: package and select MDIO driver for Thunder SoC's
This MDIO driver was already being built, but not installed due
to being selected by the ThunderX Ethernet driver.

Signed-off-by: Mathew McBride <matt@traverse.com.au>
2023-08-15 15:55:00 +02:00
Mathew McBride
7c5bdff9c4 armsr: add Marvell (Cavium) ThunderX2 network driver
The initial armv8 module incorrectly labelled the Thunder(v1) as
supporting the ThunderX2, when they have different drivers.

Add kmod-octeon-tx2 to support the newer devices.

Signed-off-by: Mathew McBride <matt@traverse.com.au>
2023-08-15 15:55:00 +02:00
Mathew McBride
15d3536c9d armsr: armv8: synchronize PCIE related options with arm64 defconfig
This turns on various PCI related options which are enabled
in the Linux kernel arch/arm64/configs/defconfig but not
yet in the OpenWrt config.

Signed-off-by: Mathew McBride <matt@traverse.com.au>
2023-08-15 15:55:00 +02:00
Mathew McBride
911ee97774 armsr: armv8: add bcmgenet (Raspberry Pi 4 GENET) to profile
kmod-bcmgenet is needed for Ethernet support on the
Raspberry Pi 4.

Signed-off-by: Mathew McBride <matt@traverse.com.au>
2023-08-15 15:55:00 +02:00
Mathew McBride
27ca83c627 armsr: armv8: add Broadcom GENET and MDIO modules
These are used by common Broadcom SoC's like
the BCM2711 (RPi4) and iProc network processor.

Tested on the RPi4B using the Raspberry Pi
UEFI+ACPI firmware[1].

Signed-off-by: Mathew McBride <matt@traverse.com.au>

[1] - https://github.com/pftf/RPi4
2023-08-15 15:55:00 +02:00
Mathew McBride
df23eed179 armsr: armv8: enable Broadcom arch'es
This is part of an effort to reduce differences between
the OpenWrt armsr/armv8 config and Linux arm64 defconfig.

This enables CONFIG_ARCH_BCM and downstream
CONFIG_ARCH_BCM2835 (= BCM2711 like Raspberry Pi 4)
and CONFIG_ARCH_BCM_IPROC (Broadcom iProc packet processors).

The broadband specific SoC's (ARCH_BCMBCA) are left out
as it is assumed these will not be doing EFI boot.

Signed-off-by: Mathew McBride <matt@traverse.com.au>
2023-08-15 15:55:00 +02:00
Mathew McBride
1ff4f4df23 armsr: armv8: enable CONFIG_ARCH_RENESAS
Renesas markets several embedded Arm64 SoCs in the
RZ series (RZ/G, RZ/V), so should be enabled in
a general purpose target.

Automotive (R-Car) SoC's are not enabled by this change.

Signed-off-by: Mathew McBride <matt@traverse.com.au>
2023-08-15 15:55:00 +02:00
Mathew McBride
45b445498b armsr: armv8: fix NXP/Freescale i.MX family configuration
Due to an error on my part, Anton Antonov's
i.MX changes[1] did not fully make it into my
armvirt kernel 6.1 EFI pull request. I have updated
them using the options he supplied[1] as well
as comparing to the Linux arm64 defconfig.

The notable exception is:
CONFIG_USB_DWC3_OF_SIMPLE currently disabled
due to an issue with i.MX8P and i.MX8Q.

Fixes: 3efb3b8 ("armvirt: 64: Add NXP i.MX 8M Mini/Nano/Quad/Plus EVK support")

Signed-off-by: Mathew McBride <matt@traverse.com.au>

[1] - ccf826c344
2023-08-15 15:55:00 +02:00
Mathew McBride
c4c60e4b19 armsr: enable ACPI_BUTTON
A review of the generated OpenWrt kernel .config
vs the Linux arm64 defconfig showed that this
option was not being enabled, as it is disabled
in OpenWrt's generic config.

ACPI_BUTTON is needed to report and respond to
power button events, so it should be enabled.

Signed-off-by: Mathew McBride <matt@traverse.com.au>
2023-08-15 15:55:00 +02:00
Mathew McBride
22e0c7be47 armsr: armv8: sync CPU features, EFI, CMA and scheduler options with Linux defconfig
To bring the armsr/armv8 kernel configuration closer to the Linux
arm64 defconfig, synchronize options related to CPU features
(especially more recent Armv8.X variants), scheduler, EFI vars,
CMA and scheduler options.

Signed-off-by: Mathew McBride <matt@traverse.com.au>
2023-08-15 15:55:00 +02:00
Mathew McBride
e505873e65 armsr: armv8: enable KVM host
x86/64 enables support for KVM so I can't see a reason why
not on armsr/armv8 as well.

Arm CPU errata workaround items related to virtualization
are also enabled by this change.

Signed-off-by: Mathew McBride <matt@traverse.com.au>
2023-08-15 15:55:00 +02:00
Mathew McBride
5c4239ac3f armsr: armv8: sync Arm64 erratum options with kernel defconfig
To reduce differences with the Linux arm64 defconfig,
sync the enabled erratum items with defconfig.

There are still some options not selected due to
CONFIG_KVM or other options not enabled in OpenWrt
by default.

Signed-off-by: Mathew McBride <matt@traverse.com.au>
2023-08-15 15:55:00 +02:00
Daniel Golle
c524a76f4c armsr: remove redundant phy-marvell-10g module
the Marvell 10G PHY driver is no way specific to ARM SystemReady
systems, it frequently occurs on SFP+ copper modules and is useful on
many targets.

Hence it been added to package/kernel/linux/modules/netdevices and we
can remove the now redundant target-specific module.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-08-13 15:01:36 +01:00
John Audia
1e0ee72b72 kernel: bump 6.1 to 6.1.44
Changelog: https://lore.kernel.org/stable/2023080822-repost-unfiled-2f01@gregkh/

All patches automatically rebased.

Build system: x86/64
Build-tested: x86/64/AMD Cezanne, filogic/xiaomi_redmi-router-ax6000-ubootmod
Run-tested: x86/64/AMD Cezanne, filogic/xiaomi_redmi-router-ax6000-ubootmod

Signed-off-by: John Audia <therealgraysky@proton.me>
2023-08-09 20:39:20 -04:00
Christian Svensson
c170fc78ba kernel: remove CRYPTO_BLAKE2S from all >=5.15
This option was removed from upstream kernel back in 2022.
See commits:
 2d16803c562ecc644803d42ba98a8e0aef9c014e (>=6.0)
 3dd33a09f5dc12ccb0902923c4c784eb0f8c7554 (>=5.15.61 backport)

Signed-off-by: Christian Svensson <blue@cmd.nu>
2023-07-08 16:54:01 +02:00
John Audia
79a82d7e87 kernel: bump 6.1 to 6.1.37
Manually rebased:
	generic/hack-6.1/220-arm-gc_sections.patch
	armsr/patches-6.1/221-armsr-disable_gc_sections_armv7.patch

All other patches automatically rebased.

Signed-off-by: John Audia <therealgraysky@proton.me>
2023-07-05 20:32:37 +02:00
Robert Marko
39b2251cd9 treewide: remove CONFIG_FRAME_WARN from kernel configs
CONFIG_FRAME_WARN is set dynamically, so there is no need for it to be set
in target kernel configs, so lets remove it from all configs.

Signed-off-by: Robert Marko <robert.marko@sartura.hr>
2023-07-01 11:53:21 +02:00
Stefan Kalscheuer
b308bd50ef kernel: migrate FORCE_MAX_ZONEORDER to ARCH_FORCE_MAX_ORDER for 6.1
The flag FORCE_MAX_ZONEORDER was renamed to ARCH_FORCE_MAX_ORDER in
Kernel 6.1 [1]. Rename the flag in generic Kconfig and remove it from
target configs.

[1] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=0192445cb2f7ed1cd7a95a0fc8c7645480baba25

Signed-off-by: Stefan Kalscheuer <stefan@stklcode.de>
2023-06-25 11:26:50 +02:00
Petr Štetiar
b8e3fa2d12
uboot-armsr: add support for QEMU armv7/armv8
Add new package so we can use self-compiled bootloader during QEMU based
testing and development.

Backported fix[1] is needed for EFI boot from virtio devices.

1. https://patchwork.ozlabs.org/project/uboot/patch/20230424134946.v10.7.Ia5f5e39c882ac22b5f71c4d576941b34e868eeba@changeid/

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2023-06-10 21:50:22 +02:00
Mathew McBride
40b02a2301
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 <matt@traverse.com.au>
2023-06-10 21:30:19 +02:00