Commit Graph

28493 Commits

Author SHA1 Message Date
Robert Marko
d442790bbf generic: 6.1: backport Qualcomm CPUFreq NVMEM changes
Currently, IPQ807x is using CPUFreq NVMEM for dealing with different SoC
SKU-s having different frequency limits, and we are keeping the patches
for it in ipq807x target.

However, we managed to upstream a big cleanup of the driver in order to
make it possible for other SMEM based targets to be added to CPUFreq NVMEM.

IPQ806x will be using CPUFreq NVMEM and depends on these changes as well,
so lets put them in generic backport to avoid code duplication.

This replaces the older patches in ipq807x.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2023-06-07 13:16:13 +02:00
Robert Marko
f6485c7ce6
kernel: bump 6.1 to 6.1.32
Removed upstreamed:
generic-backport/610-v6.3-net-page_pool-use-in_softirq-instead.patch[1]

All other patches automatically rebased.

[1] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/net?h=v6.1.32&id=7dccd5fa7edb9562da61af820bb9d0346447baf1

Build system: x86_64/Fedora 38
Build-tested: ipq807x/Dynalink DL-WRX36
Runtime-tested: ipq807x/Dynalink DL-WRX36

Signed-off-by: Robert Marko <robimarko@gmail.com>
2023-06-06 20:08:30 +02:00
Robert Marko
4747b96287
ipq807x: mark MDT loader fix as backport
MDT loader fix for remoteproc was already merged, so mark it as a backport
with the future 6.5 kernel version.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2023-06-06 20:08:10 +02:00
Robert Marko
9ba5e03c24
ipq807x: refresh kernel config
Refresh the kernel config as multiple options were disabled in the generic
config since 6.1 was added to ipq807x.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2023-06-06 20:08:10 +02:00
Robert Marko
818200fec1
ipq807x: renumber upstreamed patches
We are running out of 00xx numbers to put backports into, so lets just
renumber all of the upstreamed patches back to 0000 and onwards.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2023-06-06 20:08:00 +02:00
Daniel Golle
98e6ea32a4 mediatek: use DEVICE_DTC_FLAGS and drop DTC_FLAGS where not needed
The MT7986 RFB was intended to use device tree overlays and for that
reason modified DTC_FLAGS. zyxel_ex5601-t0-stock later on probably
copied it from there. Both boards do not actually use device tree
overlays, so remove setting DTC_FLAGS from both.

The BPi-R3 does use device tree overlays, use DEVICE_DTC_FLAGS to give
it an extra 4kb of padding for overlays to be applied.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-06-06 13:26:19 +01:00
Daniel Golle
7b536c4ec9 mediatek: use DEVICE_DTC_FLAGS for BPi-R64
Make sure there is an extra 4kb of padding to apply device tree overlays
on the BPi-R64.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-06-06 13:09:28 +01:00
Christian Marangi
0a4b309f41
generic: backport initial LEDs hw control support
Backport initial LEDs hw control support. Currently this is limited to
only rx/tx and link events for the netdev trigger but the API got
accepted and the additional modes are working on and will be backported
later.

Refresh every patch and add the additional config flag for QCA8K new
LEDs support.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2023-06-06 11:01:31 +02:00
Daniel Golle
25e27c4af3 mediatek: set new compat version if booted on R64 and R3
If the board comes up with OpenWrt that means that the bootloader is
recent enough and knows about the new device tree overlays.

Using /etc/board.d/ is not enough in this case because it doesn't
overwrite existing configuration which may exist (and is fine to exist)
if the user updated with 'sysupgrade -F *.itb' and has kept
configuration. They would still need to manually set compat_version
even though the fact that the bootloader env has been updated can be
implied by the fact that the system has started.

Hence we can always set compat_version=1.1 for those two boards using
uci-defaults.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-06-06 01:21:56 +01:00
Daniel Golle
7a0ec001ff mediatek: sync MT7986 device trees with upstream
Sync device tree files for MT7986 boards with what landed in upstream
Linux tree to easy maintainance and also allow for a smooth update to
Linux 6.1.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-06-05 11:36:32 +01:00
Daniel Golle
34bb33094a mediatek: use updated device tree overlay mechanism for BPi-R64
Use new device tree overlay mechanism for the BananaPi BPi-R64 board.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-06-05 11:36:32 +01:00
Daniel Golle
07bca1adaa generic: use only first element in bootconf for uImage.FIT
Now that it is possible to load several device tree overlays by
appending their config names to bootconf the uImage.FIT partition
parser need to discard everything after the first '#' character in
bootconf when looking up the config node to be used.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-06-05 11:36:32 +01:00
Daniel Golle
d28534545e mediatek: convert mt7986a-zyxel-ex5601-t0-stock.dts to UNIX
The device tree file was in DOS format (CR-LF). Convert it to UNIX style.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-06-05 11:36:32 +01:00
Petr Štetiar
a3ee2bf9a1
Revert "ipq807x: add initial support for prpl Foundation Haze board"
This reverts commit 48603a271e as this
was commited by accident, its still work in progress.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2023-06-05 11:46:47 +02:00
Daniel Danzberger
29a5cb7a8b
ramips: fix lzma-loader for ASIARF boards
This fixes a well known "LZMA ERROR 1" error, reported previously on
numerous of similar devices.

Signed-off-by: Daniel Danzberger <daniel@dd-wrt.com>
2023-06-05 10:01:27 +02:00
Jeffery To
897691fdce
sdk: Expose CCACHE_DIR option
As the CCACHE option is already exposed, it would be helpful to also
make the ccache directory easily customizable.

Signed-off-by: Jeffery To <jeffery.to@gmail.com>
2023-06-05 10:00:58 +02:00
Michael Pratt
d87a8aa148
treewide: add ORIG_PATH variable
Add a variable that stores the original value of $PATH
in the host system's shell, before Make alters it.

This can be useful for when it is necessary
to ignore symlinks and programs made by the build system.

Define this new variable before all instances of
'export PATH:=' or similar.

Signed-off-by: Michael Pratt <mcpratt@pm.me>
2023-06-05 08:31:47 +02:00
Petr Štetiar
48603a271e
ipq807x: add initial support for prpl Foundation Haze board
Haze is prpl Foundation's reference board (WNC LVRP).

Board info:

 - IPQ8072A SoC
 - 2 GiB RAM
 - 4 GiB eMMC
 - 8MiB SPI NOR (MX25U6435F)

 - 3x 1GigE ports (QCA8075)
 - 1x 10GigE port (AQR113C)
 - 1x SFP cage

 - WiFi 6GHz 160MHz (QCN9074)
 - WiFi 5GHz 80+80MHz (QCN5054)
 - WiFi 2.4G (QCN5024)

 - ARM Standard 20-pin 2.54mm/0.1" JTAG (1V8 !!!)
 - Bluetooth v5.0 + EDR with integrated Class 1 PA (CYW20704)
 - 1x M.2 B-key socket with PCIe 3.0
 - 1x USB 3.0 port
 - UART 4-pin 3V3(arrow),RX,TX,GND (115200 8N1)
 - Reset and WPS buttons

Flashing instructions:

 1. From U-Boot boot OpenWrt using initramfs image:

    IPQ807x# tftpboot openwrt-ipq807x-generic-prpl_haze-initramfs-uImage.itb && bootm

 2. In OpenWrt running from initramfs execute sysupgrade:

    root@OpenWrt:/# sysupgrade -n /tmp/openwrt-ipq807x-generic-prpl_haze-squashfs-sysupgrade.bin

Work in progress/known issues:

 * SFP feature not implemented/tested
 * M.2 feature not implemented/tested
 * Bluetooth feature not implemented/tested
 * 6GHz wireless should be working, but not tested
 * MAC address assigments for LAN interfaces

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2023-06-05 08:31:43 +02:00
Petr Štetiar
a9be186466
ipq807x: image: factor out common eMMC bits
For better maintainability and reusability.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2023-06-05 08:31:40 +02:00
Petr Štetiar
fdea7cb617
ipq807x: image: cleanup unused variables
BLOCKSIZE and PAGESIZE seems to be unused on qnap_301w and zyxel_nbg7815
device which use eMMC storage.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2023-06-05 08:31:39 +02:00
Robert Marko
39e1adc841
ipq807x: remove 5.15 support
Now that 6.1 is the default kernel, there is no reason to keep 5.15 around
as I dont plan to maintain it anymore so lets remove it.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2023-06-04 03:14:30 +02:00
Robert Marko
d1e452da92
ipq807x: switch to kernel 6.1
Now that 6.1 kernel is working fine on ipq807x , lets switch to 6.1 as the
default kernel as its increasingly hard to keep backporting upstreamed
changes to 5.15.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2023-06-04 03:14:27 +02:00
Philip Prindeville
1eb02ce325 x86/64: Enable IOMMU_V2 support for later CPUs
Support newer IOMMU_V2 on AMD platforms, useful for DPDK and KVM.

Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
2023-06-03 21:15:11 +02:00
Marek Behún
7b31c2e9ed kernel: Backport mvneta crash fix to 5.15
Backport Russell King's series [1]
  net: mvneta: reduce size of TSO header allocation
to pending-5.15 to fix random crashes on Turris Omnia.

This also backports two patches that are dependencies to this series:
  net: mvneta: Delete unused variable
  net: mvneta: fix potential double-frees in mvneta_txq_sw_deinit()

[1] https://lore.kernel.org/netdev/ZCsbJ4nG+So%2Fn9qY@shell.armlinux.org.uk/

Signed-off-by: Marek Behún <kabel@kernel.org>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> (squashed)
2023-06-03 21:15:11 +02:00
Olliver Schinagl
d881f65da1 realtek: eth: Do not write directly to dev->addr
One is never to write to dev->addr directly. In 6.1 it will be a const and
with the newly enabled WERROR, we get a failing grade.

Lets fix this ahead of time.

Signed-off-by: Olliver Schinagl <oliver@schinagl.nl>
2023-06-03 21:15:11 +02:00
Olliver Schinagl
9fb1dbb1df realtek: Add missing headers
We are missing a bunch of headers, which trigger errors on 6.1, probably
due to changed header-in-header dependencies. Best add them now.

Signed-off-by: Olliver Schinagl <oliver@schinagl.nl>
2023-06-03 21:15:11 +02:00
Andreas Böhler
46b51e9e99 ramips: tplink,mr600v2: fix image generation for sysupgrade image
The MR600v2 does not find its rootfs if it is neither directly after the
kernel or aligned to an erase block boundary (64k).

This aligns the rootfs to 0x10000 allowing the device to boot again. Based
on investigation by forum user relghuar.

Signed-off-by: Andreas Böhler <dev@aboehler.at>
2023-06-03 21:14:37 +02:00
Robert Marko
b81045a818 kernel: bump 6.1 to 6.1.31
All patches automatically rebased.

Build system: x86_64/Fedora 38
Build-tested: ipq807x/Qnap 301W, ipq807x/Dynalink DL-WRX36
Run-tested: ipq807x/Qnap 301W, ipq807x/Dynalink DL-WRX36

Signed-off-by: Robert Marko <robimarko@gmail.com>
2023-06-02 21:23:12 +02:00
Robert Marko
effccdd444 generic: b53: rename exported symbols to avoid upstream conflict
Upstream DSA driver is exporting symbols with the same name as our
downstream swconfig driver, so lets rename the downstream symbols to make
them unique and avoid the conflict on 6.1 kernel.

Without this change, building 6.1 with kmod-switch-bcm53xx would conflict
with the B53 DSA driver and CI would fail.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2023-06-02 21:20:53 +02:00
Tony Ambardar
04981c716a kernel: backport libcap workaround for BPF selftests
Recent libcap versions (>= 2.60) cause problems with BPF kselftests, so
backport an upstream patch that replaces libcap and drops the dependency.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2023-06-02 20:59:05 +02:00
Daniel Golle
0580747ada mediatek: use existing I2C clock names
PCK and MCK should really be P=PMIC and M=MEM, which means that they
should effectively be CLK_PMIC and CLK_ARB.

Suggested-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-06-02 18:13:39 +01:00
Daniel Golle
7e93f520d6 mediatek: use cpufreq fix suggested by MediaTek
Use suggested fix for mediatek-cpufreq, patch will also be sent
upstream.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-06-02 18:11:23 +01:00
Mathew McBride
abcb30d36c
armvirt: switch to kernel 6.1
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>
2023-06-02 11:36:41 +02:00
Mathew McBride
3a7c8fd15e
kernel: kmod-amazon-ena: move to top level netdevices
The Amazon ENA network devices are also used on the
AWS Arm (Graviton) instance types, so move it from
the x86-only module file to the top level netdevices.

Signed-off-by: Mathew McBride <matt@traverse.com.au>
2023-06-02 11:36:39 +02:00
Mathew McBride
214e94cddf
armvirt: 64: disable CONFIG_SMC91X
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>
2023-06-02 11:36:37 +02:00
Mathew McBride
e41b82f619
armvirt: base-files: add tty0 to inittab
tty0 is the default console for devices with screens/framebuffers.

Signed-off-by: Mathew McBride <matt@traverse.com.au>
2023-06-02 11:36:36 +02:00
Mathew McBride
83f564f746
armvirt: config changes required for framebuffer console
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>
2023-06-02 11:36:34 +02:00
Mathew McBride
abbffe55dd
armvirt: package and select Rockchip DWMAC Ethernet driver
For devices that implement the "rockchip,*-gmac" compatible controller,
including:
- RK3328
- RK3399
- RK3568
- RK3588
- PX30

Signed-off-by: Mathew McBride <matt@traverse.com.au>
2023-06-02 11:36:33 +02:00
Mathew McBride
847467a572
armvirt: 64: add Allwinner A3/A83T/A64 (sun8i family) Ethernet
Add support for the dwmac (stmmac) variant used by Allwinner
Arm64 boards.

Signed-off-by: Mathew McBride <matt@traverse.com.au>
2023-06-02 11:36:32 +02:00
Mathew McBride
5d2a5f7398
armvirt: 64: add Marvell (formerly Cavium) ThunderX series network driver
Based on working configuration supplied by Anton Antonov.

Signed-off-by: Mathew McBride <matt@traverse.com.au>
2023-06-02 11:36:29 +02:00
Anton Antonov
26905c9612
armvirt: 64: Add storage support for qemu-sbsa platform
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
2023-06-02 11:36:28 +02:00
Anton Antonov
3efb3b801b
armvirt: 64: Add NXP i.MX 8M Mini/Nano/Quad/Plus EVK support
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]
2023-06-02 11:36:27 +02:00
Mathew McBride
c3151b6f04
armvirt: 64: add support for other SystemReady-compatible vendors
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>
2023-06-02 11:36:26 +02:00
Mathew McBride
61ec9a8154
armvirt: add SFP support patches for NXP Layerscape DPAA2 platforms
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>
2023-06-02 11:36:23 +02:00
Mathew McBride
54bb95f879
armvirt: add options and driver modules for NXP Layerscape DPAA2 platform
Tested with a Traverse Technologies Ten64 (LS1088A) board.

Signed-off-by: Mathew McBride <matt@traverse.com.au>
2023-06-02 11:36:22 +02:00
Mathew McBride
cb3bbbf00c
armvirt: add ACPI support
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>
2023-06-02 11:36:21 +02:00
Mathew McBride
f899e0e024
build: enable vmdk/vmware images for arm64 target
This is useful for VMware's ARM64 products, e.g Fusion for M1/ARM Macs.

Signed-off-by: Mathew McBride <matt@traverse.com.au>
2023-06-02 11:36:19 +02:00
Mathew McBride
3d99314569
armvirt: remove model name override
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>
2023-06-02 11:36:16 +02:00
Mathew McBride
9a76b99c1b
armvirt: set kernel partition as the EFI system partition
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>
2023-06-02 11:36:15 +02:00
Mathew McBride
97c5d317f5
armvirt: update README with new image names
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>
2023-06-02 11:36:09 +02:00
Mathew McBride
eb0e61285d
armvirt: disable LD dead code elimination on ARM32
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>
2023-06-02 11:36:08 +02:00
Mathew McBride
e0f06ddc23
armvirt: add EFI support
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>
2023-06-02 11:36:05 +02:00
Hauke Mehrtens
16a20512d8
kernel: Set CONFIG_FRAME_WARN depending on target
This set the CONFIG_FRAME_WARN option depending on some target settings.
It will use the default from the upstream kernel and not the hard coded
value of 1024 now.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2023-06-02 11:19:32 +02:00
Yanase Yuki
edb3a4162c ipq40xx: convert Buffalo WTR-M2133HP to DSA
This commit convert WTR-M2133HP to DSA setup.

Signed-off-by: Yanase Yuki <dev@zpc.sakura.ne.jp>
2023-06-01 23:54:20 +02:00
Klaus Kudielka
9f7fdd0017 mvebu: remove hack for Turris Omnia legacy U-Boot
The omnia-medkit (only useful for installation with U-Boot
2015.10-rc2) is not being built anymore.

Now we can be reasonably sure, that there won't be first-time OpenWrt
boots with that U-Boot version, and can get rid of a rather ugly hack.

Signed-off-by: Klaus Kudielka <klaus.kudielka@gmail.com>
2023-06-01 23:54:20 +02:00
Klaus Kudielka
75a3760862 mvebu: stop building omnia-medkit
Since August 2022, users of very old Turris Omnias have been
encouraged to update U-Boot before OpenWrt installation [1].
The omnia-medkit (only useful for installation with
U-Boot 2015.10-rc2) is not needed anymore.

[1] https://openwrt.org/toh/turris/turris_omnia#installation

Signed-off-by: Klaus Kudielka <klaus.kudielka@gmail.com>
2023-06-01 23:54:20 +02:00
Linus Walleij
997bf7084c gemini: Bump to kernel v6.1
This bumps the Gemini kernel to use v6.1. While there is no
reason to stay with v5.15, I personally use newer upstream
kernels constantly and they are tested and work well. OpenWrt's
6.1 needs more time until it can be switched.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2023-06-01 23:54:20 +02:00
Linus Walleij
0fe2aae0e1 gemini: Create a config for kernel v6.1
This creates a config for the v6.1 kernel for Gemini.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2023-06-01 23:54:20 +02:00
Linus Walleij
58acb1dd2c gemini: Add kernel v6.1 patches
This adds a bunch of patches for the v6.1 Gemini kernel.

For v5.15 this was down to a single upstream patch, but for
kernel v6.2 I reworked the USB code for FOTG210, so instead of
carrying over the half-baked and incomplete patch from v5.15
I just backported all the v6.2 patches, 31 in total, as it
creates full device USB mode for e.g. D-Link DNS-313.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2023-06-01 23:54:20 +02:00
Linus Walleij
33abdc07fb kernel: Package the new FOTG210 module properly
When using the Gemini, we apply patches that create a single
module that support both host and device mode these days.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
(move module to gemini target, keep both 6.1+2-ish + 5.15 module
CONFIG and files around until 5.15 is dropped)
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2023-06-01 23:54:20 +02:00
Christian Lamparter
9c1b396615 apm821xx: put crypto4xx into crypto subsection
module is only useful for apm821xx targets, so
limit visability to just this target.

Fixes: 55fbcad20a ("apm821xx: make crypto4xx as a standalone module")
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2023-06-01 23:54:17 +02:00
Yanase Yuki
9314744350
ipq806x: use new package name for NEC WG2600HP3
commit 0c45ad41e1 changes ipq806x usb kmod name
from usb-phy-qcom-dwc3 to phy-qcom-ipq806x-usb, so
use new name.

Signed-off-by: Yanase Yuki <dev@zpc.sakura.ne.jp>
2023-06-01 19:44:10 +02:00
Robert Marko
10be819a16
ipq807x: 6.1: fix I/O WRITE_ZEROES errors on some eMMC devices
Linux 5.19 added a feature where if there is TRIM support being advertised
on eMMC kernel will use TRIM to offload erasing to zero.

However, like always there are eMMC IC-s that advertise TRIM and kind of
work but trying to use TRIM for offloading will cause I/O errors like:
[   18.085950] I/O error, dev loop0, sector 596 op 0x9:(WRITE_ZEROES) flags 0x800 phys_seg 0 prio class 2

So, lets utilize the kernel MMC quirks DB to disable TRIM for eMMC models
that are known to cause this.

This will fix the WRITE_ZEROES error on:
Qnap 301W which uses Micron MTFC4GACAJCN-1M
Zyxel NBG7815 which uses Kingston EMMC04G-M627

Tested-By: Enrico Mioso <mrkiko.rs@gmail.com> # NBG7815
Signed-off-by: Robert Marko <robimarko@gmail.com>
2023-06-01 19:23:25 +02:00
Aleksander Jan Bajkowski
5d51079fd0 lantiq: add patches headers
This commit adds headers to the patches, so they can be applied with the
git am command.

Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
2023-05-31 21:58:05 +02:00
Tianling Shen
32d5921b8b rockchip: add Orange Pi R1 Plus LTS support
The OrangePi R1 Plus LTS is a minor variant of OrangePi R1 Plus with
the on-board NIC chip changed from rtl8211e to yt8531c, and otherwise
identical to OrangePi R1 Plus.

Tested-by: Volkan Yetik <no3iverson@gmail.com>
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-05-31 21:41:46 +02:00
Tianling Shen
ab641efe69 rockchip: add Orange Pi R1 Plus support
Orange Pi R1 Plus is a Rockchip RK3328 based SBC by Xunlong.

This device is similar to the NanoPi R2S, and has a 16MB
SPI NOR (mx25l12805d). The reset button is changed to
directly reset the power supply, another detail is that
both network ports have independent MAC addresses.

Note: booting from SPI is currently unsupported, you have to install
the image on a SD card.

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-05-31 21:41:46 +02:00
Hauke Mehrtens
2d5f3b3c4c airoha: spi-en7523: Fix compile warning
The set_spi_clock_speed() function is not used, this causes a compile
warning which results in a build error with -WError.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2023-05-31 21:30:49 +02:00
Tony Ambardar
fd572feef8 kernel: 6.1: add missing CONFIG_TEST_DYNAMIC_DEBUG option
This new option (default N) will generate prompts building with OpenWrt
configs that set CONFIG_KERNEL_DYNAMIC_DEBUG=y. Fix this by adding the
disabled option to the generic config.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2023-05-31 21:06:18 +02:00
Linus Walleij
8d4a2bb8f9
kernel: disable new v6.1 DRM option
Not many platforms use the DRM configs but Gemini use it
so make sure to disable all new kernel v6.1 features that
we do not want to get prompted about.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Petr Štetiar <ynezz@true.cz> [rebased]
2023-05-31 19:13:41 +02:00
John Audia
223004b4d6 kernel: bump 5.15 to 5.15.114
All patches automatically rebased.

Build system: x86_64
Build-tested: bcm2711/RPi4B, ramips/tplink_archer-a6-v3, filogic/xiaomi_redmi-router-ax6000-ubootmod
Run-tested: bcm2711/RPi4B, ramips/tplink_archer-a6-v3, filogic/xiaomi_redmi-router-ax6000-ubootmod

Signed-off-by: John Audia <therealgraysky@proton.me>
2023-05-31 07:31:41 +02:00
Álvaro Fernández Rojas
2aca88ef8d bmips: enable testing kernel version with 6.1 version
Enable testing kernel version with 6.1 kernel version.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2023-05-30 21:00:34 +02:00
Álvaro Fernández Rojas
f6c02b014d bmips: 6.1: refresh config and add missing symbols
Refresh config for kernel 6.1 and add missing symbols.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2023-05-30 21:00:24 +02:00
Álvaro Fernández Rojas
959d3f0582 bmips: 6.1: refresh kernel patches
Refresh kernel patches for version 6.1.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2023-05-30 20:55:12 +02:00
Álvaro Fernández Rojas
a937eef305 bmips: 6.1: copy patches, config from 5.15
Copy patches and config from 5.15 kernel version.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2023-05-30 20:55:12 +02:00
Álvaro Fernández Rojas
8f6033e287 bmips: enet: add compatibility with kernel 6.1
Make bmips ethernet drivers compatible with 6.1 kernel.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2023-05-30 20:54:54 +02:00
Álvaro Fernández Rojas
3f2f9c7d92 kernel: 6.1: add missing Kconfig symbols
Add missing symbol found during refreshing bmips Kconfigs.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2023-05-30 20:54:46 +02:00
Nick Hainke
d8e0163e74 generic: import patch fixing workqueue compilation with gcc-13
Already applied in wq/for-6.5 [0].

Fixes errors in the form of:
  kernel/workqueue.c: In function 'get_work_pwq':
  kernel/workqueue.c:705:24: error: cast to pointer from integer of different size [-Werror=int-to-pointer-cast]
    705 |                 return (void *)(data & WORK_STRUCT_WQ_DATA_MASK);
        |                        ^
  kernel/workqueue.c: In function 'get_work_pool':
  kernel/workqueue.c:733:25: error: cast to pointer from integer of different size [-Werror=int-to-pointer-cast]
    733 |                 return ((struct pool_workqueue *)
        |                         ^
  kernel/workqueue.c: In function 'get_work_pool_id':
  kernel/workqueue.c:755:25: error: cast to pointer from integer of different size [-Werror=int-to-pointer-cast]
    755 |                 return ((struct pool_workqueue *)
        |                         ^
  cc1: all warnings being treated as errors

[0] - https://lore.kernel.org/all/ZGmEmkcrfh7QdkIz@slm.duckdns.org/

Fixes: #12687 ("mt7621: kernel 5.15 compile failure with GCC 13")
Signed-off-by: Nick Hainke <vincent@systemli.org>
2023-05-30 15:01:13 +02:00
Daniel Golle
1c074ac917 kernel: include MT7988 Ethernet support in Linux 6.1
Import pending patches adding Ethernet support for MT7988 which are
already present in pending-5.15 also to pending-6.1.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-05-30 03:23:47 +01:00
Daniel Golle
f7cac0484d kernel: backport MT7988 DSA support for Linux 6.1
Patches adding DSA support for MT7988 have been backported to
Linux 5.15 but not to Linux 6.1. Import backports also to Linux 6.1.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-05-30 03:23:29 +01:00
Daniel Golle
a64b262046 kernel: refresh patches for Linux 6.1
Some backported patches generated with git-format-patch were not
refreshed. Use 'make target/linux/refresh' to align them with OpenWrt's
patch style.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-05-30 02:47:41 +01:00
Christian Lamparter
55fbcad20a apm821xx: make crypto4xx as a standalone module
Make the crypto4xx crypto accelerator support as a standalone module.
This saves 90kb on a gzipped kernel.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2023-05-30 01:58:20 +02:00
Christian Lamparter
fd9dc10530 apm821xx: make ata-dwc as a standalone module
In order to cut down on the Netgear WNDR4700, the ata
driver can be outsourced. This helps other apm821xx
devices too to save up on kernel size (~200 kb).

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2023-05-30 01:58:20 +02:00
Christian Lamparter
88643360f8 apm821xx: add 6.1 testing kernel
refreshed kernel config, otherwise same as 5.15.
2023-05-30 01:58:20 +02:00
Christian Lamparter
507013c2b9 apm821xx: copy over patches from 5.15
dropped tc654 patch as it is upstream.
refreshed the rest.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2023-05-30 01:58:20 +02:00
Christian Lamparter
fdd3605398 kernel: 6.1: fix swconfig not working
On 6.1 swconfig is not showing up and there's a splat:

| ------------[ cut here ]------------
| WARNING: CPU: 0 PID: 1 at genl_register_family+0xb4/0x81c
| Modules linked in:
| CPU: 0 PID: 1 Comm: swapper Not tainted 6.1.29 #0
| Hardware name: Netgear WNDR4700/WNDR4720 Series APM821XX [...]
| NIP:  c0599370 LR: c0599344 CTR: c08c9950
| REGS: c0c21cb0 TRAP: 0700   Not tainted  (6.1.29)
| MSR:  00029000 <CE,EE,ME>  CR: 48000888  XER: 00000000
|
| GPR00: c0002678 c0c21da0 c0c2cd80 [...]
| NIP [c0599370] genl_register_family+0xb4/0x81c
| LR [c0599344] genl_register_family+0x88/0x81c
| Call Trace:
| [c0c21d80] [c0c21df4] 0xc0c21df4 (unreliable)
| [c0c21e10] [c08c9988] swconfig_init+0x38/0x64
| [c0c21e30] [c0002678] do_one_initcall+0x50/0x260

This is due to it failing to register the netlink
family since changes to upstream linux in patch.

| commit 9c5d03d362519f36cd551aec596388f895c93d2d
|Author: Jakub Kicinski <kuba@kernel.org>
|Date:   Wed Aug 24 17:18:30 2022 -0700
|
|   genetlink: start to validate reserved header byte

this is fixed by adding the proper value to the introduced
"resv_start_op" parameter.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2023-05-30 01:58:20 +02:00
Christian Lamparter
f7910d99f4 apm821xx: mx60: drop nand-is-boot-medium
it was reported that this flag caused the mx60
not to boot anymore.

Fixes: f095822699 ("apm821xx: convert legacy nand partition layou")
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2023-05-30 01:58:16 +02:00
Tianling Shen
086b42c3cb rockchip: enable testing kernel version with 6.1 version
Enable testing kernel version with 6.1 kernel version.

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-05-29 19:44:31 +02:00
Tianling Shen
9daae7942d rockchip: 6.1: refresh config and add missing symbols
Refresh config for kernel 6.1 and add missing symbols

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-05-29 19:44:30 +02:00
Tianling Shen
f31192bf15 rockchip: 6.1: refresh kernel patches
Refresh kernel patches for version 6.1.

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-05-29 19:44:28 +02:00
Tianling Shen
bb73ff25c3 rockchip: 6.1: copy patches, config from 5.15
Copy patches and config from 5.15 kernel version.

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-05-29 19:44:26 +02:00
Tianling Shen
d98ee6fdbf kernel: 6.1: add missing Kconfig symbols
Add missing symbol found during refreshing rockchip Kconfigs.

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-05-29 19:44:26 +02:00
张 鹏
b764268acb
ipq40xx: e2600ac-c1 remove KERNEL_SIZE
Currently, e2600ac-c1 cannot be built as the kernel is larger than the defined KERNEL_SIZE,
however, there is no bootloader limit for the kernel size so remove KERNEL_SIZE completely.

Signed-off-by: 张 鹏 <sd20@qxwlan.com>
[ improve commit title, fix merge conflict ]
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2023-05-29 12:25:14 +02:00
张 鹏
0dca52cf59
ipq40xx: add e2600ac c2 to dsa
Convert E2600ac c2 to DSA and enable it.

Signed-off-by: 张 鹏 <sd20@qxwlan.com>
[ rename port to more generic name ]
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2023-05-29 12:23:47 +02:00
张 鹏
7f2ecab0f4
ipq40xx: add e2600ac c1 to dsa
Convert E2600ac c1 to DSA and enable it.

Signed-off-by: 张 鹏 <sd20@qxwlan.com>
[ rename port to more generic name ]
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2023-05-29 12:23:44 +02:00
Stan Grishin
4b8b2f4f97 base-files: x86 fix 01_leds Syntax error
Cezary Jackiewicz reported:
| Syntax error in line /etc/board.d/01_leds#L22 - missing "\"

Fixes: c191c2d46f ("x86: base-files add support for Sophos 135r3/135r3w")
Reported-by: Cezary Jackiewicz <cezary@eko.one.pl>
Signed-off-by: Stan Grishin <stangri@melmac.ca>
(buffed up commit message)
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2023-05-28 20:22:23 +02:00
Pawel Dembicki
d04d6a82da layerscape: kernel: enable MC userspace support
Management Complex (MC) userspace support is required for userspace
helpers working with DPAA2 objects exported by the Management Complex BUS.

Without it, there is the error:

```
root@OpenWrt:/# ls-addni dpmac.1
error: Did not find a device file
Restool wrapper scripts only support the latest major MC version
that currently is MC10.x. Use with caution.
error: Did not find a device file
```

This patch fixes it.

Suggested-by: Alexandra Alth <alexandra@alth.de>
Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2023-05-28 20:22:23 +02:00
Christian Lamparter
1710c55cf9 uml: add Kernel 6.1 support via testing
Add the latest default Kernel for testing.

There is no uml_watchdog userspace daemon available,
hence CONFIG_UML_WATCHDOG is disabled.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2023-05-28 20:22:23 +02:00
Robert Marko
61ff33c1c2
ipq807x: enable selecting 6.1 as testing kernel
Allow selecting 6.1 as the testing kernel on ipq807x.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2023-05-28 08:57:10 +02:00
Robert Marko
09085d1740
ipq807x: 6.1: fix remoteproc booting
In 6.1 booting the remoteprocessor that is actually running the WLAN
unfortunatelly broke, so after a long time bisecting we managed to track it
down to commit ("soc: qcom: mdt_loader: Always invoke PAS mem_setup").

Luckily adding back the relocation check and not making an SCM call
qcom_scm_pas_mem_setup() restored the functionality.

Ansuel has sent the patch upstream.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2023-05-28 08:57:10 +02:00
Robert Marko
3790a0f942
ipq807x: 6.1: refresh kernel config
Refresh kernel config by running kernel_menuconfig.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2023-05-28 08:57:09 +02:00
Robert Marko
4fa8fec6c0
ipq807x: 6.1: refresh patches
Manually refresh tsens, PCI and CPR patches to apply and compile.
Then run automatic refresh on rest of the patches.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2023-05-28 08:57:09 +02:00
Robert Marko
8195922526
ipq807x: drop upstreamed patches
Drop all of the patches that have been already been included in kernel 6.1.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2023-05-28 08:57:09 +02:00
Robert Marko
4eda3e8b9a
ipq807x: 6.1: copy patches and config from 5.15
Copy patches and config from kernel 5.15 to start preparing kernel 6.1
support.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2023-05-28 08:57:09 +02:00
Robert Marko
bc66c05280
ipq807x: mark merged patches as backports
These 3 patches have been merged upstream, so mark them as backports
along with the kernel version they have been merged into.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2023-05-28 08:57:08 +02:00
Zoltan HERPAI
a3469a90c4 sifiveu: add new target for SiFive U-based boards
RISC-V is a new CPU architecture aimed to be fully free and open. This
target will add support for it, based on 5.15.

Supports running on:
 - HiFive Unleashed - FU540, first generation
 - HiFive Unmatched - FU740, current latest generation, PCIe

SD-card images are generated, where the partitions are required to have
specific type codes. As it is commonplace nowadays, OpenSBI is used as the
first stage, with U-boot following as the proper bootloader.

Specifications:

HiFive Unleashed:
 - CPU: SiFive FU540 quad-core RISC-V (U54, RV64IMAFDC or RV64GC)
 - Memory: 8Gb
 - Ethernet: 1x 10/100/1000
 - Console: via microUSB

HiFive Unmatched:
 - CPU: SiFive FU740 quad-core RISC-V (U74, RV64IMAFDCB or RV64GCB)
 - Memory: 16Gb
 - Ethernet: 1x 10/100/1000
 - USB: 4x USB 3.2
 - PCIe:  - 1x PCIe Gen3 x8
          - 1x M.2 key M (PCIe x4)
          - 1x M.2 Key E (PCIe x1 / USB2.0)
 - Console: via microUSB

Installation:
Standard SD-card installation via dd-ing the generated image to
an SD-card of at least 256Mb.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2023-05-28 13:19:11 +02:00
Zoltan HERPAI
50c05f6cd7 generic: groundwork for RISC-V
Add build infrastructure for RISC-V.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2023-05-28 13:19:10 +02:00
Tony Ambardar
a15730a4eb armvirt: 6.1: enable kernel for testing
Build and run-tested on QEMU/armvirt32 and QEMU/armvirt64.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2023-05-28 07:45:50 +02:00
Tony Ambardar
398226fcdf armvirt: 6.1: update kernel configs
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>
2023-05-28 07:45:50 +02:00
Tony Ambardar
fcf741a6f6 armvirt: 6.1: copy config from kernel 5.15
Copy config files for kernel 5.15 to kernel 6.1.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2023-05-28 07:45:50 +02:00
Tony Ambardar
99b9354c36 malta: 6.1: enable kernel for testing
Build and run-tested on QEMU/malta-be32 and QEMU/malta-le64.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2023-05-28 07:45:50 +02:00
Tony Ambardar
517bc68a94 malta: 6.1: update kernel config
The following new symbols are defined:

  CONFIG_ARCH_FORCE_MAX_ORDER=11
  CONFIG_CLOCKSOURCE_WATCHDOG_MAX_SKEW_US=100
  CONFIG_ZBOOT_LOAD_ADDRESS=0x0

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2023-05-28 07:45:50 +02:00
Tony Ambardar
a588399f78 malta: 6.1: copy config from kernel 5.15
Copy config files for kernel 5.15 to kernel 6.1.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2023-05-28 07:45:50 +02:00
Tony Ambardar
1a40350e4d kernel: 6.1: add missing config symbols
Add generic config symbols found updating the malta and armvirt targets.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2023-05-28 07:45:50 +02:00
Daniel Golle
ba58245e83 mediatek: sync MT7988 USXGMII with SDK driver
The USXGMII driver in SDK was heavily refactored, some bugs have been
fixed and it has switched to use phylink_pcs. Follow up with changes
in SDK driver and sync our on-top-of-mainline driver with the SDK
driver.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-05-27 21:57:01 +01:00
Daniel Golle
037ce27244 mediatek: follow-up with renamed Build/bl2 and Build/bl31-uboot
Use renamed build step names for all boards which were not handled by
commit c620409d58 ("mediatek: filogic: add uboot build for mt7981")
and now breaking the build.

Fixes: c620409d58 ("mediatek: filogic: add uboot build for mt7981")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-05-27 21:57:01 +01:00
Chukun Pan
dc2d4d7393 mediatek: filogic: add Qihoo 360T7 support
Hardware specification:
  SoC: MediaTek MT7981B 2x A53
  Flash: ESMT F50L1G41LB 128MB
  RAM: MT5CC128M16JR-EK 256MB
  Ethernet: 4x 10/100/1000 Mbps
  Switch: MediaTek MT7531AE
  WiFi: MediaTek MT7976C
  Button: Reset, WPS
  Power: DC 12V 1A

Flash instructions:
  1. Attach UART, boot the stock firmware until
     the message about failsafe mode appears.
  2. Enter failsafe mode by pressing "f" and "Enter"
  3. Type "mount_root", then run
     "fw_setenv bootmenu_delay 3"
  4. Back up all mtd partitions before flashing.
  5. Reboot, U-Boot now presents a menu.
  6. Connect to your PC via the Gigabit port of the router,
     set a static ip on the ethernet interface of your PC.
     (ip 192.168.1.254, gateway 192.168.1.1)
  7. Select "Upgrade ATF BL2", then use this file:
     openwrt-mediatek-filogic-qihoo_360t7-preloader.bin
  8. Select "Upgrade ATF FIP", then use this file:
     openwrt-mediatek-filogic-qihoo_360t7-bl31-uboot.fip
  9. Download the initramfs image, and type "reset",
     waiting for tftp recovery to complete.
  a. After openwrt boots up, perform sysupgrade.

Note:
  1. Since NMBM is disabled, we must back up all partitions.
  2. Flash instructions is based on commit 28df7f7.

Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
2023-05-27 11:17:08 +01:00
Chukun Pan
c620409d58 mediatek: filogic: add uboot build for mt7981
Rename previous uboot build to mt7986-*.

Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
2023-05-27 11:01:45 +01:00
Alexander Couzens
3eb354f999 mediatek: mt7981: add reserved memory to support pstore
Add reserved memory for pstore/ramoops to device tree used by Linux
as well as U-Boot.

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-05-27 11:01:36 +01:00
Daniel Golle
213b728276 mediatek: cleanly backport and add fix for I2C driver
Pick accepted patches from upstream Linux tree instead of having to
maintain our slightly different downstream patches.
Import pending patch fixing I2C on MT7981 by making sure all clocks
are enabled before accessing I2C registers.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-05-27 02:06:57 +01:00
Nick Hainke
ef98dc3b3e generic: add kernel tag to backport patch
In the previous commit, the kernel tag was not added when adding the
backport.

Fixes: 537624db39 ("generic: backport missing helper for phy interfaces")
Signed-off-by: Nick Hainke <vincent@systemli.org>
2023-05-26 23:04:48 +02:00
Nick Hainke
537624db39 generic: backport missing helper for phy interfaces
The function was defined before in the patch
"hack-5.15/795-backport-phylink_pcs-helpers.patch". However, the hack
did not move to 6.1. Instead of using the hack do the backport of
upstream accepted version.

Fixes errors in the form of:
  make[8]: Entering directory '/home/nick/openwrt/build_dir/target-mipsel_24kc_musl/linux-ramips_mt7621/linux-6.1.29'
    CC      drivers/net/pcs/pcs-mtk-lynxi.o
  drivers/net/pcs/pcs-mtk-lynxi.c: In function 'mtk_pcs_lynxi_config':
  drivers/net/pcs/pcs-mtk-lynxi.c:160:30: error: implicit declaration of function 'phylink_get_link_timer_ns' [-Werror=implicit-function-declaration]
    160 |                 link_timer = phylink_get_link_timer_ns(interface);
        |                              ^~~~~~~~~~~~~~~~~~~~~~~~~
  cc1: all warnings being treated as errors

Fixes: fa79baf4a6 ("generic: copy backport, hack, pending patch and config from 5.15 to 6.1")
Signed-off-by: Nick Hainke <vincent@systemli.org>
2023-05-26 22:56:15 +02:00
Nick Hainke
2388b119de ramips: mark patches accepted upstream
Add kernel tags to the patches that got accepted upstream.

Signed-off-by: Nick Hainke <vincent@systemli.org>
2023-05-26 16:22:11 +02:00
Daniel Golle
43d27b0252 mediatek: fix, clean and unify SD card image generation
Make sure sub-images on the SD card are size-checked, allow
generating SD card without squashfs and/or initramfs.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-05-26 14:31:36 +01:00
Felix Fietkau
911742989a kernel: disable wireless extension support for 6.1
It is unused

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2023-05-26 13:38:53 +02:00
Antti Nykänen
07c45c0859 ipq807x: add support for Compex WPQ873
The Compex WPQ873 is a development board with two M.2 B-key
 slots for cellular modems.

Device info:
 - IPQ8072A SoC
 - 512MiB RAM
 - 256MiB NAND flash
 - 8MiB SPI NOR
 - 3x 1GigE ports
 - 1x 2.5GigE port
 - 2.4GHz/5GHz AX WLAN
 - 1x USB 3.0 port
 - 1x M.2 B-key socket with PCIe 3.0
 - 1x M.2 B-key socket with PCIe 2.0 and USB 3.0
 - 4x SIM card slots
 - Bluetooth LE 5.0 (QCA4024)

Prerequisites
1) TFTP server
2) 3.3V USB to TTL cable for UART console
   2.54mm pitch 4-pin header for UART is readily provided on board, no modifications are necessary to access it
   TTL connector pinout: 2=TX, 3=RX, 4=GND
   Arrow marks pin 1 which is 3.3V
   Serial port settings: 115200 8N1 no flow control

The device will most likely ship with a QSDK-based firmware.

1. Power on device and interrupt u-boot to obtain u-boot CLI

2. set serverip to IP address of the TFTP server, for example:

        `setenv serverip 192.168.1.10`

3. Download image from TFTP server:

        `tftpboot 0x44000000 openwrt-ipq807x-generic-compex_wpq873-squashfs-factory.ubi`

4. Flash ubi image to both partitions and reset:

        `sf probe
         imxtract 0x44000000 ubi
         nand device 0
         nand erase 0x0 0x3400000
         nand erase 0x3c00000 0x3400000
         nand write $fileaddr 0x0 $filesize
         nand write $fileaddr 0x3c00000 $filesize
         reset`

Afterwards, you can use sysupgrade to flash new OpenWRT images.

Signed-off-by: Antti Nykänen <antti.nykanen@nokia.com>
2023-05-26 13:05:02 +03:00
John Audia
c815ecdebd kernel: bump 5.15 to 5.15.113
All patches automatically rebased.

Build system: x86_64
Build-tested: bcm2711/RPi4B, ramips/tplink_archer-a6-v3, filogic/xiaomi_redmi-router-ax6000-ubootmod
Run-tested: bcm2711/RPi4B, ramips/tplink_archer-a6-v3, filogic/xiaomi_redmi-router-ax6000-ubootmod

Signed-off-by: John Audia <therealgraysky@proton.me>
2023-05-26 11:50:37 +02:00
John Audia
3664c57e34 x86: disable CONFIG_X86_PLATFORM_DRIVERS_HP
New config option defaulted to N for this bump.

Signed-off-by: John Audia <therealgraysky@proton.me>
2023-05-26 11:50:37 +02:00
Andrzej Mialkowski
f2e1d37381
ipq806x: Add support for Netgear Nighthawk Pro Gaming XR450
Motivation:
 Firmware with platform ID "XR450" required for easy installation.

Manufacturer pages:
 Product page: https://www.netgear.com/support/product/xr450
 Product Data Sheet: https://www.netgear.com/images/datasheet/networking/wifirouter/XR450.pdf
 Current firmware: https://www.downloads.netgear.com/files/GDC/XR450/XR450-V2.3.2.134.zip

Specifications:
Almost identical to Netgear XR500(https://openwrt.org/toh/hwdata/netgear/netgear_xr500)

Differences:
	Platform ID: XR450, utilized for firmware validation
	WLAN 2.4GHz: b/g/n Supports QAM64 (XR500 QAM256)

SoC: Qualcomm Atheros IPQ8065
RAM: 512 MB
Storage: 256 MiB
Wireless: Qualcomm Atheros QCA9984
Switch: Qualcomm Atheros AR8337 rev. 2
Ethernet: 5x 1000/100/10
USB: 2x 3.0

Install via WEB GUI (recommended):
1. Navigate within GUI to firmware update section
2. Select openwrt-ipq806x-netgear_xr450-squashfs-factory.img
3. Dismiss downgrade warning

Install via TFTP recovery (same as XR500/R7800):

1. Configure host PC to use static address 192.168.1.10 https://openwrt.org/toh/netgear/r7800#prerequisites_for_tftp_flashing
2. Flash openwrt-ipq806x-netgear_xr450-squashfs-factory.img using procedure https://openwrt.org/toh/netgear/r7800#tftp_flashing_process

Revert to stock firmware
1. Download current manufacturer firmware, decompress zip file to obtain img file
2. Use TFTP recovery method flash img file (currently XR450-V2.3.2.134.img)
ipq806x: add support to netgear_xr450

Signed-off-by: Andrzej Mialkowski <andrzej.mialkowski@gmail.com>
2023-05-25 23:53:00 +02:00
Kazuki Hashimoto
ae8db3941c
kernel: Backport MGLRU patch from 6.4
This fixes a bug where the reclaim path could occasionally have long
tail latency.

Signed-off-by: Kazuki Hashimoto <kazukih0205@gmail.com>
2023-05-25 23:52:24 +02:00
Kazuki Hashimoto
b28b8ed1f4
kernel: 6.1: Synchronize MGLRU patches with upstream
Replace the refreshed 5.15 backports with backports for 6.1.

This fixes FMODE_CAN_ODIRECT having the same value as
FMODE_NOREUSE.

Signed-off-by: Kazuki Hashimoto <kazukih0205@gmail.com>
2023-05-25 23:52:24 +02:00
Robert Marko
3591353f51 generic: filter out CONFIG_PAHOLE_HAS_SPLIT_BTF
CONFIG_PAHOLE_HAS_SPLIT_BTF should be runtime detected as it depends on
pahole being available on the host, so filter it out of configs.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2023-05-24 21:46:27 +02:00
Robert Marko
344540d727 generic: 6.1: disable CONFIG_VMWARE_VMCI by default
There is no reason for VMware VMCI to be disabled in targets, so disable
it in the generic config.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2023-05-24 21:46:27 +02:00
Robert Marko
16799045bf generic: 6.1: disable CONFIG_OCTEON_EP by default
There is no reason for Octeon PCI endpoint driver to be disabled in targets
so disable it in generic config.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2023-05-24 21:46:27 +02:00
Robert Marko
62e88d22b9 generic: 6.1: disable CONFIG_HP_WATCHDOG by default
There is no reason for HP ProLiant HW watchdog to be disabled in individual
targets, so disable it in generic config.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2023-05-24 21:46:27 +02:00
Robert Marko
bccc6a58ce generic: 6.1: disable CONFIG_ARCH_NXP by default
There is no reason for CONFIG_ARCH_NXP to have to be disabled in individual
targets, so just disable CONFIG_ARCH_NXP in generic config.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2023-05-24 21:46:27 +02:00
Robert Marko
bcb094f549 generic: 6.1: disable CONFIG_SURFACE_PLATFORMS by default
There is no need for Surface platform drivers to be enabled by default,
especially on OpenWrt so disable CONFIG_SURFACE_PLATFORMS in the generic
config.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2023-05-24 21:46:27 +02:00
Sam Shih
e3a681bab4 mediatek: add basic mt7988 device tree support
This add basic device tree support for mediatek MT7988 SoC

Signed-off-by: Sam Shih <sam.shih@mediatek.com>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-05-23 15:53:22 +01:00
Daniel Golle
e4555d69a1 mediatek: backport cpufreq changes to support MT7988
Backport cpufreq changes from upstream so that the MediaTek MT7988 SoC
can be supported.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-05-23 15:53:22 +01:00
Daniel Golle
a3cf3e2c48 mediatek: filogic: add driver for Richtek RT5190A regulator
The Richtek RT5190A is used on the MT7988 reference board. Backport and
enable the driver on the filogic subtarget, so we can support cpufreq
on the MT7988 reference board.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-05-23 15:53:22 +01:00
Daniel Golle
ef2a831dab mediatek: add driver for built-in 2.5G Ethernet PHY
Add driver for the built-in 2.5G Ethernet PHY found in the MT7988 SoC.
To function the PHY also needs firmware files which have not yet been
published via linux-firmware.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-05-23 15:53:22 +01:00
Daniel Golle
987a0b2b30 mediatek: update pending SoC Ethernet PHY driver
Update driver for MediaTek's built-in Gigabit Ethernet PHYs which can be
found in the MT7981 and MT7988 SoCs.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-05-23 15:53:22 +01:00
Daniel Golle
958fdf36e3 generic: mt7530: backport support for the MT7988 built-in switch
Backport commits adding support for the MT7988 built-in switch to the
mt7530 driver.

This change results in the Kconfig symbol NET_DSA_MT7530 to be extended
by NET_DSA_MT7530_MDIO (everything formally covered by NET_DSA_MT7530)
and NET_DSA_MT7530_MMIO (a new driver for the MMIO-connected built-in
switch of the MT7988 SoC).

Select NET_DSA_MT7530_MDIO for all targets previously selecting
NET_DSA_MT7530, with the exception of mediatek/filogic which also
selects NET_DSA_MT7530_MMIO.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-05-23 15:53:22 +01:00
Daniel Golle
6983a215d9 generic: add support for MediaTek NETSYS v3
In order to support Ethernet on the MT7988 SoC add support for NETSYS v3
as well as new paths and USXGMII SerDes to the mtk_eth_soc driver.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-05-23 15:53:22 +01:00
Sam Shih
9e6a7e808f mediatek: add mt7988 pinctrl driver support
This adds provisional pinctrl driver support for the MediaTek MT7988 SoC.

Signed-off-by: Sam Shih <sam.shih@mediatek.com>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-05-23 15:53:22 +01:00
Sam Shih
b33c185876 mediatek: add mt7988 clock drivers support
This adds clock drivers for the MediaTek MT7988 SoC

Signed-off-by: Sam Shih <sam.shih@mediatek.com>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-05-23 15:53:22 +01:00
Daniel Golle
a9989b30d0 mediatek: mt7981: setup all clocks needed for eMMC
Setup all necessary clocks to get MMC to work on MT7981, similar to
how it is done also on MT7986.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-05-23 15:53:22 +01:00
Chukun Pan
b2beb4c688 mediatek: mt7981: usb enable 3.0 by default
There is no reason to limit USB to 2.0 mode
by default, delete this limit.

Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
2023-05-23 15:53:22 +01:00
Tony Ambardar
c2d194a34e kernel: enable (ARM|ARM64)_MODULE_PLTS in generic config
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>
2023-05-23 05:49:46 -07:00
Aleksander Jan Bajkowski
cec0a38ade
kernel: add disabled symbol CONFIG_CPU_LITTLE_ENDIAN on 6.1
The identical change was previously added to the 5.15 kernel in the commit
9226f1e419 ("kernel: disable CONFIG_CPU_LITTLE_ENDIAN in generic config").

Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
2023-05-23 14:26:56 +02:00
Aleksander Jan Bajkowski
4f197f9134
kernel: sort generic configuration
This was done by executing these commands:

$ ./scripts/kconfig.pl '+' target/linux/generic/config-5.15 /dev/null > target/linux/generic/config-5.15-new
$ mv target/linux/generic/config-5.15-new target/linux/generic/config-5.15

$ ./scripts/kconfig.pl '+' target/linux/generic/config-6.1 /dev/null > target/linux/generic/config-6.1-new
$ mv target/linux/generic/config-6.1-new target/linux/generic/config-6.1

Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
2023-05-23 14:26:07 +02:00