Commit graph

32545 commits

Author SHA1 Message Date
Mieczyslaw Nalewaj
e0f7afef1a kernel/ramips: Restore kernel files for v6.6
This is an automatically generated commit which aids following Kernel patch
history, as git will see the move and copy as a rename thus defeating the
purpose.

For the original discussion see:
https://lists.openwrt.org/pipermail/openwrt-devel/2023-October/041673.html

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/18654
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-06-11 14:12:25 +02:00
Mieczyslaw Nalewaj
2b4223c0db kernel/ramips: Create kernel files for v6.12 (from v6.6)
This is an automatically generated commit.

When doing `git bisect`, consider `git bisect --skip`.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/18654
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-06-11 14:12:25 +02:00
Álvaro Fernández Rojas
83648084cc generic: 6.12: reorganize backports
Reorganize backported 6.12 generic patches, grouping them by following
a standard naming XXX-XX-v6.x-patch-file-name.patch.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-06-11 07:37:25 +02:00
Álvaro Fernández Rojas
84922a1e34 kernel: add support for DesignWare I2C Platform controller
Add kernel package for DesignWare I2C platform controller.
This controller is used on the RP1 SoC found on RPi 5 devices.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-06-10 14:49:40 +02:00
Albrecht Lohofener
82d20a0fbd kernel: add support for DesignWare SPI MMIO controller
Add kernel packages for DesignWare SPI core and MMIO controllers.
This is needed for the RP1 SoC found on RPi 5 devices.

Tested with a Microchip ENC28J60 Ethernet controller on a RPi 5.

Signed-off-by: Albrecht Lohofener <albrechtloh@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/19049
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-06-09 11:43:46 +02:00
Christian Lamparter
11c2326b2a uml: drop 6.6 config+patches
Drop configs+patches for UML's Linux 6.6 support.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2025-06-09 11:10:19 +02:00
Christian Lamparter
6f59a2e6b0 uml: use kernel 6.12 by default
This patch switches the UML target Linux kernel version to 6.12.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2025-06-09 11:10:19 +02:00
Mario Andrés Pérez
6dffaf9316 ramips: mt7621: include uboot-envtools in some missed devices
Add uboot-envtools (removing -uboot-envtools) to devices which were
missed in the commit 79bd017 ("ramips: mt7621: add uboot-envtools to
all devices")

- Mi Router 3G
- Mi Router AC2100

While at here remove two redundant entries from devices which were added
just after the referenced commit 79bd017 and did not account for the
new DEFAULT_PACKAGES member:

- SNR-CPE-ME1
- SNR-CPE-ME2-SFP

Fixes: 79bd017 ("ramips: mt7621: add uboot-envtools to all devices")
Fixes: https://github.com/openwrt/openwrt/issues/18960

Signed-off-by: Mario Andrés Pérez <mapb_@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/19012
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-06-08 20:42:19 +02:00
John Audia
bf05b83305 kernel: add backport to fix build with GCC 15.1
Add the following to fix builds with GCC 15.1:
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/arch/mips/vdso?h=next-20250606&id=0f4ae7c6ecb89bfda026d210dcf8216fb67d2333

% dmesg | grep gcc
[    0.000000] Linux version 6.6.93 (facade@redline) (mipsel-openwrt-linux-musl-gcc (OpenWrt GCC 15.1.0 r29972+15-7d617804cfe7) 15.1.0, GNU ld (GNU Binutils) 2.44) #0 SMP Sat Jun  7 12:13:18 2025

Error for reference:
./include/linux/stddef.h:11:9: error: cannot use keyword 'false' as enumeration constant
   11 |         false   = 0,
      |         ^~~~~
./include/linux/stddef.h:11:9: note: 'false' is a keyword with '-std=c23' onwards
./include/linux/types.h:35:33: error: 'bool' cannot be defined via 'typedef'
   35 | typedef _Bool                   bool;
      |                                 ^~~~
./include/linux/types.h:35:33: note: 'bool' is a keyword with '-std=c23' onwards
./include/linux/types.h:35:1: error: useless type name in empty declaration [-Werror]
   35 | typedef _Bool                   bool;
      | ^~~~~~~
  CC      arch/mips/lib/delay.o
  AR      arch/mips/fw/lib/built-in.a
  AR      arch/mips/fw/lib/lib.a
  CC      arch/mips/ralink/of.o
  CC      fs/read_write.o
  CC      block/elevator.o
cc1: all warnings being treated as errors
make[9]: *** [scripts/Makefile.build:243: arch/mips/vdso/vgettimeofday.o] Error 1
make[8]: *** [scripts/Makefile.build:480: arch/mips/vdso] Error 2

Build system: x86/64
Build-tested: ramips/tplink_archer-a6-v3
Run-tested: ramips/tplink_archer-a6-v3

Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/19058
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-06-08 20:34:43 +02:00
Shiji Yang
dd0476aca0 ramips: some minor FDT improvements for HiWiFi devices
This patch contains various minor FDT improvements for ramips
HiWiFi series devices:

* Add mt76 driver compatibles.
* Remove useless platform compatibles.
* Add default USB LED trigger for HC5861.
* Disable unused usbphy for HC5661, HC5661A and HC581B.
* Add switch port map properties based on 02_network scripts.
* Move aliases node to device dts because the LED nodes it
  references only exist in the device specific dts.
* Rename gpio-leds nodes to follow the upstream dt-bindings
  suggested pattern "(^led-[0-9a-f]$|led)".
* Convert deprecated LED label property to color and function.
  "system" LED has been renamed to "status", it is acceptable
  because these LEDs do not have text labels.

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/18251
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-06-08 19:37:49 +02:00
Shiji Yang
9e08350b10 ramips: convert HiWiFi devices MAC address to NVMEM format
For all HiWiFi series devices, the base MAC address is stored on
"bdinfo" partition, offset 0x18a, ASCII text format. The recently
introduced "mac-base" nvmem layout can handle the ASCII text now,
so it's time to move MAC address configurations to dts. There is
no valid MAC info in the "factory" partition, hence they will be
replaced with the correct ones.

Tested on HiWiFi HC5661A and HC5861.

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/18251
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-06-08 19:37:49 +02:00
Simonas Tamošaitis
7264a913a3 ramips: mt76x8: add Teltonika RUT951/RUT901 support
Specification:
- MediaTek MT7628AN SoC
- 128 MB of RAM EtronTech EM68C16CWQG-25IH
- 16MB of Flash Winbond W25Q128 SPI
- 4x 10/100 Mbps Ethernet, with passive PoE support on LAN1
- MediaTek MT7628AN 2.4 GHz 802.11n WiFi
- Quectel EC25-EUX 4G cat 4 modem (RUT951) or Quectel EC200A-EU 4G cat 4 modem (RUT901)
- 1x Digital input
- 1x Digital output
- 2x SIM slot (can be swapped via GPIO)
- eSIM (depends on hardware configuration, can be swapped via GPIO)

GPIO:
 - 1 button (Reset)
 - 7 LEDs (power, status green/red, RSSI 1,2,3,4,5)
 - 5 Modem control (power button, reset, status, SIM select, eSIM select)
 - 1 Digital input
 - 1 Digital output

Flashing via OEM WebUI:
1. Download the firmware image *-squashfs-factory.bin
2. Upload firmware image via OEM WebUI firmware update, do not keep settings

To revert back to OEM firmware:
https://wiki.teltonika-networks.com/view/Bootloader_menu

Mobile data connection:
Quectel EC200A-EU send command to modem:
    echo -ne 'AT+QNETDEVCTL=3,1\r\n' > /dev/ttyUSB2
    Create DHCP interface with usb0 device.
Quectel EC25-EUX create proto qmi interface.

Signed-off-by: Simonas Tamošaitis <simsasss@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18788
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-06-08 17:10:03 +02:00
Simonas Tamošaitis
85e300c93d ramips: mt76x8: add Teltonika RUT956/RUT906 support
Specification:
- MediaTek MT7628AN SoC
- 128 MB of RAM EtronTech EM68C16CWQG-25IH
- 16MB of Flash Winbond W25Q128 SPI
- 4x 10/100 Mbps Ethernet, with passive PoE support on LAN1
- MediaTek MT7628AN 2.4 GHz 802.11n WiFi
- Quectel EC25-EUX (RUT956) or Meig SLM770A (RUT906) modem
- GNSS
- RS232, DB9 connector, Cypress ACM via USB, /dev/ttyACM0
- RS485 /dev/ttyS1
- microSD card slot
- 2.0 USB Type-A HOST port
- analog 0-24V input (MCP3221)
- Relay
- 2x Digital input
- 2x Digital output
- 2x SIM slot (can be swapped via GPIO)
- eSIM (depends on hardware configuration, can be swapped via GPIO)

GPIO:
 - 1 button (Reset)
 - 7 LEDs (power, status green/red, RSSI 1,2,3,4,5)
 - 5 Modem control (power button, reset, status (v5 hw), SIM select, eSIM select)
 - 2 Digital input
 - 2 Digital output
 - 1 Isolated input
 - 1 RS485 tx enable
 - 1 RS485 rx enable
 - 1 Relay
 - 1 Data Carrier Detect (DCD)

Flashing via OEM WebUI:
1. Download the firmware image *-squashfs-factory.bin
2. Upload firmware image via OEM WebUI firmware update, do not keep settings

To revert back to OEM firmware:
https://wiki.teltonika-networks.com/view/Bootloader_menu

Mobile data connection:
Meig SLM770 create proto DHCP interface with usb0 device.
Quectel EC25-EUX create proto qmi interface.

Signed-off-by: Simonas Tamošaitis <simsasss@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18788
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-06-08 17:10:02 +02:00
Mieczyslaw Nalewaj
b44f85f51c kernel: remove duplicate PREEMPT settings
Remove duplicate PREEMPT settings PREEMPT_NONE_BUILD and PREEMPT_RT
which are already in target/linux/generic/config-6.12.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/18986
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-06-08 15:59:55 +02:00
Álvaro Fernández Rojas
5ab72cfc40 bmips: bcm6358: add support for Huawei HG556a ver A
Specifications:
- SoC: Broadcom BCM6358 dual 300MHz MIPS
- Flash: 16MB NOR Spansion S29GL128P10
- RAM: 64MB DDR
- Ethernet: 4x 100M
- Wifi: Atheros AR9223
- 3x USB 2.0 port
- 4x Button
- 13x LED
- RJ11 2x FXS VoIP (unsupported)
- RJ11 xDSL (unsupported)

Install instructions:
- Assign static IP 192.168.1.100 to PC.
- Unplug the power source.
- Press the RESTART button at the router, don't release it yet!
- Plug the power source and wait at least 15 seconds.
- Release the RESTART button.
- Browse to http://192.168.1.1 with your PC.
- Upload the openwrt-bmips-bcm6358-huawei_hg556a-a-squashfs-cfe.bin file.
- Wait some minutes until the firmware upgrade completes.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-06-08 05:09:24 +02:00
Álvaro Fernández Rojas
975f4de1c8 bmips: fix LAN LEDs configuration
Commit Fixes: 15430a1348 ("bmips: use wan ports as standalone ports")
removed bridge devices and therefore switch.1 no longer exists, so let's
use br-lan instead.

Fixes: 15430a1348 ("bmips: use wan ports as standalone ports")
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-06-07 21:13:23 +02:00
Sander van Deijck
b6a07dd091 ramips: mt7621: add support for Arcadyan WE410443
The Arcadyan WE410443 is a WiFi AC access point distributed by various ISPs
under various names, including KPN SuperWifi and BT Whole Home Wi-Fi. It
features one ethernet port, dual MT7615N radios and four internal antennas.

Hardware:
- SoC: Mediatek MT7621AT
- Flash: 32 MB
- RAM: 128 MB
- Ethernet: 1x 10/100/1000 Mbps, built into the SoC
- WLAN: 2x MediaTek MT7615N
- Buttons: 1 Reset button, 1 WPS button
- LEDs: 1x Green, 1x Blue, 1x Red, all unmarked
- Power: 12 VDC, 1.5A barrel plug

Installation:
The bootloader is locked with a password, so the image needs to be written
directly to the SPI flash chip. To do this, you need to open up the case,
remove the heatsink and connect the flash chip to a Raspberry Pi. Use the
following connections:

Flash chip --> Raspberry Pi

VCC --> 3v3
RESET --> 3v3
/CS --> GPIO 8
DO --> GPIO 9
CLK --> GPIO 11
DI --> GPIO 10
GND --> Ground

You can solder wires to the flash chip, or use a SOIC16 clip. More details on
the Raspberry Pi and SPI chip pinouts are available on the wiki [1]
When you have the Raspberry Pi connected to the flash chip, boot your Pi and
follow the instructions:

1) Make sure your Pi has SPI enabled with sudo raspi-config

2) Install necessary tools: sudo apt install xxd libubootenv-tool mtd-utils

3) Upload overlay and execute:
sudo dtc -@ -I dts -O dtb -o
/boot/overlays/we410443.dtbo we410443-overlay.dts

4) Enable in /boot/firmware/config.txt by adding a new line containing
dtoverlay=we410443

5) Reboot your Pi and verify the mtd partitions with
cat /proc/mtd, you should see:

dev:    size   erasesize  name
mtd0: 02000000 00001000 "all"
mtd1: 00030000 00001000 "u-boot"
mtd2: 00010000 00001000 "u-boot-env"
mtd3: 00010000 00001000 "factory"
mtd4: 01f60000 00001000 "firmware"
mtd5: 00010000 00001000 "glbcfg"
mtd6: 00010000 00001000 "config"
mtd7: 00010000 00001000 "glbcfg2"
mtd8: 00010000 00001000 "config2"

6) Optionally (but recommended), make a backup:
sudo dd if=/dev/mtd0 of=backup.bin
It can be restored with: sudo flashcp backup.bin /dev/mtd0

7) Set the variables for the bootloader:
echo '/dev/mtd2 0x0 0x1000 0x1000' > fw_env.config
sudo fw_setenv -c fw_env.config bootpartition 0

8) Finally, flash the image:
sudo flashcp openwrt-ramips-mt7621-arcadyan_we410443-
squashfs-sysupgrade.bin /dev/mtd4

MAC addresses
The label address is stored in ASCII in the config partition

Use --> Address

Device --> label
Ethernet --> label
WLAN 2g --> + 1
WLAN 5g --> + 2

References:
[1] https://openwrt.org/toh/arcadyan/astoria/we410443

Signed-off-by: Sander van Deijck <sander@vandeijck.com>
Link: https://github.com/openwrt/openwrt/pull/17981
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-06-07 21:04:53 +02:00
Shiji Yang
afdf88b9a1 ramips: dts: adjust the power regulators of MMC controller
- Fix MMC bus IO voltage. The GPIO voltage of mt762x series SoCs
  is fixed 3.3V. There are no visible registers that can control
  the voltage level. Also add "no-1-8-v" property to indicate that
  MMC controller doesn't support 1.8V IO.

- Drop useless property "enable-active-high". These dummy fixed
  voltage regulators are not controlled by the GPIO. We don't need
  to set the GPIO polarity.

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/18886
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-06-07 20:28:11 +02:00
Shiji Yang
a617ab6639 ramips: dts: mt7621: reuse the default USB dummy regulators
To simplify the device specific dts, reuse the mt7621 default
XHCI voltage regulators by adding the corresponding GPIO pin
and polarity properties.

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/18886
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-06-07 20:28:11 +02:00
Shiji Yang
548d993a04 ramips: dts: mt7621: remove redundant USB regulators
We have added the default voltage regulators for the mt7621 SoC
dtsi. These redundant voltage regulators can be removed now.

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/18886
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-06-07 20:28:11 +02:00
Shiji Yang
51b77a3298 ramips: dts: mt7621: add the missing XHCI power regulators
The USB power regulators are essential for the Mediatek XHCI
controller. If any of them is missing, the kernel will throw
a warning. Add fixed voltage io/vbus regulators to workaround
this issue. Fix the following warnings:

[    7.514572] xhci-mtk 1e1c0000.xhci: supply vbus not found, using dummy regulator
[    7.522375] xhci-mtk 1e1c0000.xhci: supply vusb33 not found, using dummy regulator

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/18886
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-06-07 20:28:11 +02:00
Roland Reinl
300335f1ff mediatek: filogic: add support for Cudy WR3000E v1
The WR3000E has the same board layout as the WR3000S. Differences:
- Different flash chip
- LEDs with red/blue colour intead of white

Hardware:
- MediaTek MT7981 WiSoC
- 256MB DDR3 RAM
- 128MB SPI-NAND (F50L1G41LB)
- MediaTek MT7981 2x2 DBDC 802.11ax 2T2R (2.4 / 5)

MAC Addresses in OEM firmware:
- There is one on the label, e.g. AA:BB:CC:DD:EE:FF
- WLAN (2.4G) uses the same as on the label
- WLAN (5G) is the one on the label but
  - first byte (e.g. AA) + 2
  - fourth byte (e.g. DD) - 0x40
- WAN is the one on the label + 1
- LAN is the one on the label

MAC Addresses in OpenWrt:
- Same handling as in WR3000s is used

GPIO:
- 2 Buttons (all low active):
  - WPS on GPIO 0
  - Reset on GPIO 1
- 6 LEDs (all low active):
  - Power: Blue on GPIO 8, no red LED
  - WPS: Blue on GPIO 10, Red on GPIO 4
  - Internet: Blue on GPIO 11, no red LED
  - LAN: Blue on GPIO 9, Red on GPIO 5
  - WiFi 2.4G: Blue on GPIO 6, no red LED
  - WiFi 5G: Blue on GPIO 7, no red LED

Disassembly:
- Remove the 4 screws at the bottom of the case
- Cover is clipped to the bottom part of the case with clips in the front and the back

UART:
- UART pins are accessible on the bottom of the board
- The connector with the square shape is TX
- Pins: [ ] TX, ( ) RX, ( ) GND, ( ) VCC
- Settings: 115200 8N1 3.3V

Migration to OpenWrt via OEM firmware:
- There should be a migration image available from Cudy as soon as there is official OpenWrt support
- Download the migration image via OEM web interface
- After flashing, OpenWrt is accessible via 192.168.1.1
- Flash the official OpenWrt image

Migration to OpenWrt using TFTP:
- Connect UART as described above
- Press the reset button while powering on the device
- U-Boot will now try to load a recovery.bin via TFTP, this must be ignored
- After detecting a timeout, the U-Boot console is available via UART
- Set up a TFTP server on IP 192.168.1.88 and connect it to one of the LAN ports
- Provide the initramfs image via TFTP as cudy3000e.bin
- Run the following command in U-Boot: tftpboot 0x46000000 cudy3000e.bin; bootm 0x46000000
- OpenWrt initramfs image is now booting and accessible via 192.168.1.1
- Flash the sysupgrade image

Revert back to OEM:
- Set up a TFTP server on IP 192.168.1.88 and connect it to one of the LAN ports
- Provide the Cudy firmware via TFTP as recovery.bin
- Press the reset button while powering on the device
- Recovery process will start now
- After recovery is done, the OEM firmware is available at 192.168.10.1 again

Signed-off-by: Roland Reinl <reinlroland+github@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18609
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-06-07 18:07:03 +02:00
Álvaro Fernández Rojas
b0c8780604 bmips: add RFC v2 bcm5325 patches
Update BCM5325 patches to the latest version sent to netdev.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-06-07 16:08:30 +02:00
Álvaro Fernández Rojas
7d617804cf bmips: bcm6358: revert use wan ports as standalone ports
This reverts commit 15430a1348 for bcm6358 subtarget since it breaks
network configuration.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-06-07 13:21:31 +02:00
Jonas Gorski
15430a1348 bmips: use wan ports as standalone ports
With the recent fixes backported to 6.12, b53 ports should now fully
work as standalone ports outside of a switch.

So move them out of the switch and use them as standalone ports, which
makes configuring easier as VLANs don't need to be defined and reserved
anymore to use the wan port.

Tested on DGND3700v1.

While most devices do not define a wan port, I dropped the
ucidef_set_bridge_device() from all devices for consistency.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2025-06-07 09:58:19 +02:00
Álvaro Fernández Rojas
1a97278ee1 generic: 6.12: backport b53 RGMII port patches
Update b53 RGMII port patches to the accepted upstream version.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-06-07 09:48:43 +02:00
Tim Harvey
c70e987f05 imx: add 6.12 kernel as testing
Allow selecting 6.12 as testing kernel on imx.

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
Link: https://github.com/openwrt/openwrt/pull/19029
Signed-off-by: Nick Hainke <vincent@systemli.org>
2025-06-07 08:38:07 +02:00
Tim Harvey
b0d2b33e3c imx: 6-12: refresh patches and kernel configs
patches:
 - remove patches from 6.7-6.12 that are now upstream.
 - refresh remaining patches
 - 502-6.13-arm64-dts-freescale-rename-gw7905-to-gw75xx.patch was
   misnamed as that patch went upstream in 6.12 and thus is also removed
 - 504-6.13-arm64-dts-imx-Add-i.MX8M-Plus-Gateworks-GW82XX-2X-support.patch
   was refreshed to the final version that was accepted upstream
 - 600-PCI-imx6-Start-link-at-max-gen-first-for-IMX8MM-and-IMX8MP.patch
   was removed while I investigate an upstream approach for the issue
   it was working around.

configs:
 - config-6.12: unset new configs not needed for all cortexa7/a9/a53
 - cortexa53/config-default: added new CONFIG_PCI_IMX6_HOST config for cortexA53 (IMX8M)

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
Link: https://github.com/openwrt/openwrt/pull/19029
Signed-off-by: Nick Hainke <vincent@systemli.org>
2025-06-07 08:38:07 +02:00
Tim Harvey
a8feb51e71 kernel/imx: Restore kernel files for v6.6
This is an automatically generated commit which aids following Kernel patch
history, as git will see the move and copy as a rename thus defeating the
purpose.

For the original discussion see:
https://lists.openwrt.org/pipermail/openwrt-devel/2023-October/041673.html

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
Link: https://github.com/openwrt/openwrt/pull/19029
Signed-off-by: Nick Hainke <vincent@systemli.org>
2025-06-07 08:38:06 +02:00
Tim Harvey
a882f0fc60 kernel/imx: Create kernel files for v6.12 (from v6.6)
This is an automatically generated commit.

When doing `git bisect`, consider `git bisect --skip`.

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
Link: https://github.com/openwrt/openwrt/pull/19029
Signed-off-by: Nick Hainke <vincent@systemli.org>
2025-06-07 08:38:06 +02:00
John Audia
a2eaadeed2 ipq806x: config-6.6: add new option
6.6.93 introduced new config option[1]

1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.93&id=fba6e5d44fb8df6bdadb1e90d2ddca715462248f

Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/19026
Signed-off-by: Nick Hainke <vincent@systemli.org>
2025-06-06 10:01:31 +02:00
John Audia
45e53284e6 ipq40xx: config-6.6: add new option
6.6.93 introduced new config option[1]

1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.93&id=fba6e5d44fb8df6bdadb1e90d2ddca715462248f

Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/19026
Signed-off-by: Nick Hainke <vincent@systemli.org>
2025-06-06 10:01:31 +02:00
John Audia
a878dd24e7 kernel: bump 6.6 to 6.6.93
Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.93

Removed upstreamed:
	backport-6.6/780-51-v6.15-r8169-don-t-scan-PHY-addresses-0.patch[1]

All other patches automatically rebased.

1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.93&id=961ee132104b09e054308e53d8ab4a2386a21904

Build system: x86/64
Build-tested: flogic/xiaomi_redmi-router-ax6000-ubootmod, ramips/tplink_archer-a6-v3, x86/64
Run-tested: flogic/xiaomi_redmi-router-ax6000-ubootmod, ramips/tplink_archer-a6-v3, x86/64

Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/19026
Signed-off-by: Nick Hainke <vincent@systemli.org>
2025-06-06 10:01:31 +02:00
Zheng Zhang
1f7304a0cc ramips: mt7621: fix file permissions in source tree
They don't need +x permission.

Fixes: 502916468e ("ramips: add support for ASUS 4G-AX56")
Signed-off-by: Zheng Zhang <everything411@qq.com>
Link: https://github.com/openwrt/openwrt/pull/19034
Signed-off-by: Nick Hainke <vincent@systemli.org>
2025-06-06 09:38:43 +02:00
Shiji Yang
c947e37e61 starfive: fix 6.12 kernel patch conflict
The recently committed starfive 6.12 kernel support patchset[1] has
conflict with the 6.12.32 kernel update[2]. Remove upstreamed patch
to fix the issue:

  0031-phy-starfive-jh7110-usb-Fix-usb-2.0-host-detection-f.patch [3]

[1] https://github.com/openwrt/openwrt/pull/18997
[2] https://github.com/openwrt/openwrt/pull/19027
[3] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.12.32&id=2c09a5cbc0100e88b8872b11f4da01a656c97fbc

Fixes: ebfd69a3e3 ("kernel: bump 6.12 to 6.12.32")
Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/19039
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-06-06 07:42:35 +02:00
Sergey Shlukov
8b24289a52 mediatek: add support for TP-Link Archer AX80v1(US/RU/CA)
This commit adds support for TP-Link Archer AX80v1(US/RU/CA).

Device specification
SoC Type:   MediaTek MT7986AV, Cortex-A53, 64-bit
RAM:        ESMT M15T4G16256 (512MB)
Flash:      ESMT F50L1G41LB (128 MB)
Ethernet:   MediaTek MT7531AE + 2.5GbE MaxLinear GPY211C0VC (SLNW8)
Ethernet:   1x2.5Gbe (WAN/LAN 2.5Gbps), 4xGbE (WAN/LAN 1Gbps, LAN1, LAN2, LAN3)
WLAN 2g:    MediaTek MT7976GN
WLAN 5g:    MediaTek MT7976AN
LEDs:       1 red,1 green,1 blue status LEDs,

Buttons:    4 (Reset,ledswitch,wps,wlan),
USB ports:  1 (USB 3.0)
Power:      12 VDC, 3,3 A
Connector:  Barrel
Bootloader: Main U-Boot - U-Boot 2022.01-rc4. Additionally, both UBI
            slots contain "seconduboot" (also U-Boot 2022.01-rc4)
Serial console (UART)
                            V
+-------+-------+-------+-------+
| +3.3V |  GND  |  TX   |  RX   |
+---+---+-------+-------+-------+
    |
    +--- Don't connect

Installation (UART)
Place OpenWrt initramfs image on tftp server with IP 192.168.1.2

Attach UART, switch on the router and interrupt the boot process by pressing 'Ctrl-C'

Load and run OpenWrt initramfs image:

      tftpboot initramfs-kernel.bin
      bootm

!!Attention!! is very important! After entering OpenWrt, please set / update the environment variables:

fw_setenv bootargs "ubi.mtd=ubi0 console=ttyS0,115200n1 loglevel=8 earlycon=uart8250,mmio32,0x11002000 init=/etc/preinit"
fw_setenv mtdids "spi-nand0=spi-nand0"
fw_setenv mtdparts "spi-nand0:2M(boot),1M(u-boot-env),50M(ubi0),50M(ubi1),8M(userconfig),4M(tp_data),8M(mali_data)"
fw_setenv tp_boot_idx 0

Run 'sysupgrade -n' with the sysupgrade OpenWrt image from console or Luci WebUI.

Recovery

Press Reset button and power on the router
Navigate to U-Boot recovery web server (192.168.1.1) and upload the OEM firmware

Stock layout

0x000000000000-0x000000200000 : "boot"
0x000000200000-0x000000300000 : "u-boot-env"
0x000000300000-0x000003500000 : "ubi0"
0x000003500000-0x000006700000 : "ubi1"
0x000006700000-0x000006f00000 : "userconfig"
0x000006f00000-0x000007300000 : "tp_data"
0x000007300000-0x000007B00000 : "mali_data"

ubi0/ubi1 format
U-Boot at boot checks that all volumes are in place:

+-------------------------------+
| Volume Name: uboot   Vol ID: 0|
| Volume Name: kernel  Vol ID: 1|
| Volume Name: rootfs  Vol ID: 2|
+-------------------------------+
MAC addresses
+---------+-------------------+-----------+
| label   | 00:eb:xx:xx:xx:be | label     |
| LAN     | 00:eb:xx:xx:xx:be | label     |
| WAN     | 00:eb:xx:xx:xx:bf | label+1   |
| WLAN 2g | 00:eb:xx:xx:xx:be | label     |
| WLAN 5g | 00:eb:xx:xx:xx:bd | label-1   |
+---------+-------------------+-----------+
label MAC address was found in UBI partition "tp_data", file "default-mac".
OEM wireless eeprom is also there (file "MT7986_EEPROM.bin").

Signed-off-by: Sergey Shlukov <ichizakurain@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17753
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-06-05 22:55:55 +02:00
Roland Reinl
54febbc55b mediatek: Create common DTSI for WR3000H and WR3000S
This change moves common elements of the WR3000H and the WR3000S to mt7981b-cudy-wr3000-nand.dtsi.
This will simplify adding of new similar devices, for exapmle WR3000E.

Signed-off-by: Roland Reinl <reinlroland+github@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18619
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-06-05 21:13:24 +02:00
Shiji Yang
ebfd69a3e3 kernel: bump 6.12 to 6.12.32
Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.12.32

All patches are automatically refreshed.

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Tested-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/19027
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-06-05 21:11:28 +02:00
Zoltan HERPAI
ee129da777 starfive: add 6.12 as testing kernel
Runtime-tested on:
 - Visionfive v2-1.3b (JH7110)
 - Visionfive v1 (JH7100)

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2025-06-05 16:39:15 +02:00
Zoltan HERPAI
f97609a10f starfive: jh7110: update bootscript to use addresses in bootloader
Rather than hardcoding the kernel/fdt addresses in the boot.scr script,
use the addresses provided by the bootloader.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2025-06-05 16:39:15 +02:00
Zoltan HERPAI
8f0f02d297 starfive: 6.12: refresh patches and drop upstreamed ones
- refresh, rebase and reorder patches
 - JH7110 media drivers have been dropped for now
 - JH7110 E24 and mailbox drivers were added
 - JH7100 DMA- and errata-patches have been dropped as they were
   upstreamed

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2025-06-05 16:39:15 +02:00
Zoltan HERPAI
91ee157b9d kernel/starfive: Restore kernel files for v6.6
This is an automatically generated commit which aids following Kernel patch
history, as git will see the move and copy as a rename thus defeating the
purpose.

For the original discussion see:
https://lists.openwrt.org/pipermail/openwrt-devel/2023-October/041673.html

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2025-06-05 16:39:15 +02:00
Zoltan HERPAI
ec54e841b9 kernel/starfive: Create kernel files for v6.12 (from v6.6)
This is an automatically generated commit.

When doing `git bisect`, consider `git bisect --skip`.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2025-06-05 16:39:15 +02:00
Robert Marko
df9ffedb75 archs38: drop target
archs38 has been on life support for the last couple of releases,eventually
leading to marking it as source-only in 2023.

It has been basically only touched to do a kernel bump so that we can make
the new OpenWrt release.

Link: https://github.com/openwrt/openwrt/pull/19001
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-06-05 10:43:00 +02:00
Mathew McBride
1304d8b064 armsr: enable 6.12 as a testing kernel version
Allow the armsr target to be built with a 6.12 kernel
when CONFIG_TESTING_KERNEL is set.

Signed-off-by: Mathew McBride <matt@traverse.com.au>
Link: https://github.com/openwrt/openwrt/pull/18849
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-06-04 20:18:27 +02:00
Mathew McBride
08c4948ac6 armsr: 6.12: add new KConfigs and refresh
This includes both new additions to 6.12
and an attempted "refresh" of the config
to remove duplicates from target/generic/config-6.12.

(The OpenWrt kernel_makeoldconfig does not
work well with the armv8 subtarget for reasons
I am yet to determine, so that file has been
pruned manually)

Most new options are in armv8, where the
KConfig relates to a platform that will likely
be armsr compatible (like the i.MX91/93/95),
it has been enabled.

Signed-off-by: Mathew McBride <matt@traverse.com.au>
Link: https://github.com/openwrt/openwrt/pull/18849
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-06-04 20:18:27 +02:00
Mathew McBride
46cf1dacd3 armsr: patches: refresh printk console patch for 6.12
This carries the text console behaviour fix as described in
[1] over to the 6.12 kernel.

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

[1] https://github.com/openwrt/openwrt/pull/17012#issuecomment-2591751115
Link: https://github.com/openwrt/openwrt/pull/18849

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-06-04 20:18:27 +02:00
Mathew McBride
1218717c05 kernel/armsr: Restore kernel files for v6.6
This is an automatically generated commit which aids following Kernel patch
history, as git will see the move and copy as a rename thus defeating the
purpose.

For the original discussion see:
https://lists.openwrt.org/pipermail/openwrt-devel/2023-October/041673.html

Signed-off-by: Mathew McBride <matt@traverse.com.au>
Link: https://github.com/openwrt/openwrt/pull/18849
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-06-04 20:18:26 +02:00
Mathew McBride
386f1a1a1e kernel/armsr: Create kernel files for v6.12 (from v6.6)
This is an automatically generated commit.

When doing `git bisect`, consider `git bisect --skip`.

Signed-off-by: Mathew McBride <matt@traverse.com.au>
Link: https://github.com/openwrt/openwrt/pull/18849
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-06-04 20:18:26 +02:00
Markus Stockhausen
c78765213e kernel: mtdsplit_uimage: return 0 if not fatal
Introduced with Linux 6.7, in commit:
5c2f7727d437 ("mtd: mtdpart: check for subpartitions parsing result"),
when a parser returns an error, this will be passed up, and
consequently, all parent mtd partitions get torn down.

Adjust the mtdsplit_uimage driver to only return an error if there is a
critical problem in reading from the mtd device or allocating memory.
Otherwise return 0 to indicate that no partitions were found.
Also add logging to indicate what went wrong.

E.g. on Realtek devices that are booted for the first time through
initramfs with OpenWrt never installed before boot log will show

[    0.932985] Creating 8 MTD partitions on "spi0.0":
[    0.938412] 0x000000000000-0x000000080000 : "u-boot"
[    0.990151] 0x000000080000-0x0000000c0000 : "u-boot-env"
[    0.999907] 0x0000000c0000-0x000000100000 : "board-name"
[    1.019971] 0x000000100000-0x000000e80000 : "firmware"
[    1.051582] mtdsplit_uimage: no uImage found in "firmware"
[    1.069365] 0x000000e80000-0x000001000000 : "kernel2"
[    1.078959] 0x000001000000-0x000001040000 : "sysinfo"
[    1.099747] 0x000001040000-0x000001c40000 : "rootfs2"
[    1.119865] 0x000001c40000-0x000002000000 : "jffs2"

Similar issue was fixed before with commit ade045084b
("kernel: mtdsplit_minor: return 0 if not fatal")

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/19016
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-06-04 12:50:12 +02:00
Matthew Bilker
8d30e07180 mediatek: filogic: fix for new GL.iNet GL-MT2500/GL-MT2500A hardware revision
GL.iNet shipped a hardware change of the WAN PHY going from the MaxLinear
GPY211C to the Airoha EN8811H.

Signed-off-by: Matthew Bilker <me@mbilker.us>
Link: https://github.com/openwrt/openwrt/pull/18799
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-06-03 23:19:35 +02:00
Linus Walleij
b6b24a5de9 gemini: Move back to using statically compiled PHYs
Trying to use modules for the PHY:s does not work:

The ethernet driver does not like to probe if it can't find
the PHY.

The ethernet driver really likes to be compiled-in. It will
not probe otherwise. Some hardware issue.

Revert things to how they always worked until I maybe solve
this.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2025-06-03 23:05:15 +02:00
Stephen Howell
cc5421128e realtek: extend simple thermal driver to support rtl839x
* Extends SoC thermal sensor on rtl839x
* Tested on HP JG928A

Signed-off-by: Stephen Howell <howels@allthatwemight.be>
Link: https://github.com/openwrt/openwrt/pull/18825
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-06-03 11:14:45 +02:00
Rosen Penev
079db0ab81 ramips: mt7621: use regulators for USB GPIO
Regulators as implemented by the XHCI driver only accept one GPIO.
However, we can abuse the fact that the XHCI driver accepts two
regulators, one for 5V and the other for 3.3V, for USB 2 and 3 GPIOs.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16967
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-06-03 11:04:50 +02:00
Álvaro Fernández Rojas
9ccabb3f42 bmips: huawei,hg556a-b: configure LAN LEDs
Now that the external switch is working properly we can configure the LAN LEDs.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-06-03 08:02:05 +02:00
Linus Walleij
e50c8f959d ixp4xx: Switch to kernel v6.12
This can be done with so little effort, all but two patches are now
upstream. No need to keep support for v6.6, everything just works
the same or better with v6.12.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2025-06-03 01:45:40 +02:00
George Moussalem
480268596f qualcommax: ipq50xx: fix uniphy soft reset issue
The resets in the GCC of the uniphy found in the IPQ5018 SoC are
incorrect which broke the ability to shift between 1G and 2.5G link
speeds. So let's correct the resets based on below two downstream
commits.

In a seperate and prequisite PR to the QCA-SSDK repo, logic has been
implemented to select the right reset based on the link setup so fixed
link scenarios don't break.

Signed-off-by: George Moussalem <george.moussalem@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/18774
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-06-02 22:59:05 +02:00
George Moussalem
273bd3463c qualcommax: ipq50xx: prepare for UNIPHY reset fix
Ahead of the actual fix in both the GCC and QCA-SSDK, add the required
AHB reset so it can be picked up by updated QCA-SSDK. This is needed
as the SSDK needs to use different resets depending on the link
architecture. If it's a fixed link, AHB needs to be reset. In a phy to
phy link setup (such as QCA8081), SYS, RX, and TX need to be reset using
one reset with a bitmask in the GCC (GCC_UNIPHY_SOFT_RESET).

Signed-off-by: George Moussalem <george.moussalem@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/18774
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-06-02 22:59:05 +02:00
George Moussalem
e53592d0f6 qualcommax: ipq50xx: remove named clock references for GE PHY
With completely carving out GE PHY out of the QCA-SSDK, the named clock
references to the GE PHY RX and TX clocks are no longer needed.
So, let's revert to using the DT indices as per the upstream GCC driver.

Signed-off-by: George Moussalem <george.moussalem@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/18774
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-06-02 22:59:05 +02:00
George Moussalem
da2c83327f qualcommax: ipq50xx: update patches for IPQ5018 GE PHY
Use latest patches sent upstream for review for IPQ5018 GE PHY support:
- Move enablement of the LDO controller to the mdio-ipq4019 driver away
  from the CMN PLL driver
- Remove the different patches to add CDT, MSE, AZ, and DAC support they
  are all contained in the upstreamed driver.

Accordingly, also set the right property in the DTS for Linksys SPNMX56
to set the right DAC values to accommodate for the short cable length.

Signed-off-by: George Moussalem <george.moussalem@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/18774
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-06-02 22:59:05 +02:00
Shiji Yang
050a308820 gemini: switch default NTFS driver package to kmod-fs-ntfs3
kmod-fs-ntfs is not available on the 6.12 kernel.

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/18954
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-06-02 15:51:21 +02:00
Alexandru Gagniuc
57c104ef7f qualcommbe: drop kernel v6.6 support
As qualcommbe is now supported by the v6.12 kernel, there is no point
in v6.6 as well. Drop v6.6 support.

Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18982
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-06-02 09:44:22 +02:00
Alexandru Gagniuc
c7e1fc54ee qualcommbe: use kernel 6.12 by default
The qualcommbe target was introduced after openwrt-24.10. The v6.12
kernel is now available, and is likely to be used by the next openwrt
release.While the v6.6 kernel served as an interim development vehicle,
it is no longer useful for the qualcommbe target

The v6.12 patches contain more recent submissions of pending ipq95xx
drivers. I expect that it will be much easier to update v6.12 patches
with new submissions. For ease of maintenance, it makes sense to use
a single kernel for qualcommbe.

For these reasons, enable v6.12 by default.

Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18982
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-06-02 09:44:22 +02:00
Álvaro Fernández Rojas
dbffeebea4 bmips: huawei,hg556a-b: enable external switch
The external switch of the Huawei HG556a is a BCM5325E connected by MDIO.

All the DSA brcm legacy FCS tag and b53 patches have been submitted upstream
and will be backported when accepted.

There are still some sporadic FDB errors, but at least the switch is working
and stable on my device:
bcm53xx fffe4800.ethernet-mii:1e: port 0 failed to add 72:31:59:xx:xx:xx vid 1 to fdb: -28
bcm53xx fffe4800.ethernet-mii:1e: port 0 failed to add 5c:4c:a9:xx:xx:xx vid 0 to fdb: -28
bcm53xx fffe4800.ethernet-mii:1e: port 0 failed to add 5c:4c:a9:xx:xx:xx vid 1 to fdb: -28
bcm53xx fffe4800.ethernet-mii:1e: port 0 failed to delete 72:31:59:xx:xx:xx vid 1 from fdb: -2

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-06-01 20:48:06 +02:00
Zoltan HERPAI
a3cd610b28 pistachio: drop 6.6 support
Drop configs and patches for Linux 6.6.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2025-06-01 16:24:34 +02:00
Zoltan HERPAI
56b9ceef64 pistachio: use kernel 6.12 by default
Switch to Linux kernel version 6.12.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2025-06-01 16:24:34 +02:00
Alexandru Gagniuc
ba674fea40 realtek: support EnGenius EWS2910P v3
Add support for V3 of the Engenius EWS2910P PoE switch. Like its v1
brother, This is an RTL8380 based switch with two SFP slots, and PoE
802.3af one every RJ-45 port.

Unlike its older brother, the max budget is 55W instead of 61.6 W.
Investigation into the communication protocol with the PoE controller
is ongoing, though it appears the vendor firmware configures the PSE
with a per-port budget of 30.0W.

Specifications:
---------------
* SoC:       Realtek RTL8380M
* Flash:     32 MiB SPI flash Macronix MX25L25635E
* RAM:       256 MiB (As reported by bootloader)
* Ethernet:  8x 10/100/1000 Mbps with PoE
             2x SFP slots
* Buttons:   1 "Reset" button on front panel
             1 "LED mode: button on front panel
             1 "On/Off" Toggle switch on the back
* Power:     48V-54V DC barrel jack
* UART:      1 serial header (JP1) with populated 2.54mm pitch header
             Labeled GRTV for ground, rx, tx, and 3.3V respectively
* PoE:       1 STM ST32... microcontroller (U15)
             1 RTL8238B PSE controller
Works:
------
  - (8) RJ-45 ethernet ports
  - Switch functions
  - LEDs and buttons

Not yet enabled:
----------------
  - Power-over-Ethernet (requires realtek-poe support for RTL8232B)

Install via web interface:
-------------------------

The factory firmware will accept and flash the initramfs image. It is
recommended to flash to "Partition 0". Flashing to "Partition 1" is
not supported at this point.

The factory web GUI will show the following warning:

 " Warning: The firmware version is v0.00.00-c0.0.00
     The firmware image you are uploading is older than the current
     firmware of the switch. The device will reset back to default
     settings. Are you sure you want to proceed?"

This is expected when flashing OpenWrt. After the initramfs image
boots, flash the -sysupgrade using either the commandline or LuCI.

Install via serial console/tftp:
--------------------------------

See commit 2cfaab4549 ("realtek: add support for EnGenius EWS2910P").

Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/15217
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-31 23:19:01 +02:00
Alexandru Gagniuc
e5625fb448 realtek: engenius_ews2910p: support multiple hardware versions
When the Engenius EWS-2910P was added, only v1 was known. Move the
common parts to a dtsi, and split up the support to acccount for the
hardware version.

On v3, for example, the root partition uses a different uImage magic.

Add a "engenius,ews2910p-v1" compatible, while leaving the legacy
"engenius,ews2910p" to also mean v1.

Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/15217
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-31 23:19:01 +02:00
Shiji Yang
30cdc48360 kernel: bump 6.12 to 6.12.31
Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.12.31

Remove upstreamed patches:
  backport-6.12/780-27-v6.15-r8169-don-t-scan-PHY-addresses-0.patch [1]
  backport-6.12/780-33-v6.15-r8169-disable-RTL8126-ZRX-DC-timeout.patch [2]
  bcm27xx/patches-6.12/950-0315-media-i2c-imx219-Correct-the-minimum-vblanking-value.patch [3]
  bcm27xx/patches-6.12/950-0857-drm-v3d-Add-clock-handling.patch [4]
  bcm27xx/patches-6.12/950-0874-PCI-brcmstb-Expand-inbound-window-size-up-to-64GB.patch [5]
  bcm27xx/patches-6.12/950-0877-PCI-brcmstb-Adding-a-softdep-to-MIP-MSI-X-driver.patch [6]
  bcm27xx/patches-6.12/950-0960-media-imx335-Set-vblank-immediately.patch [7]

Manually rebased patches:
  d1/patches-6.12/0009-ASoC-sunxi-sun4i-codec-add-basic-support-for-D1-audi.patch

[1] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.12.31&id=ba59747562c49974cbace989d76b94a8331da442
[2] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.12.31&id=2780aa8394415df0a69e3b908d6dd8c79e1d1bcc
[3] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.12.31&id=9a981079097bee6a0583877798de0b240717bdde
[4] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.12.31&id=bbd6dc1fb6c56267ad1d58810d92287fcd5b0058
[5] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.12.31&id=3ffaa2e999380477774e76680ff4cef247451168
[6] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.12.31&id=12153e3948c596737853c3ec4ff7e4e3f4a9f9a6
[7] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.12.31&id=8d7e13c31c52690655883dff604238b0760a3644

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/18953
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-05-31 17:35:29 +02:00
Álvaro Fernández Rojas
84eefb493b generic: backport brcm legacy dsa tag fix
Backport a small fix for brcm legacy dsa tags that has been accepted for
linux v6.16.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-05-31 15:30:08 +02:00
Álvaro Fernández Rojas
ba1017bf74 generic: backport bcm63xx SPI reset fix
Fixes SPI and HSSPI coexistance on bmips bcm6362 and bcm63268.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-05-31 12:29:30 +02:00
Markus Stockhausen
9716f89df6 realtek: enhance & harmonize dsa/phy max port patches
DSA silently drops internal phy access to ports >= 32 in dsa_user_phy_read()
and dsa_user_phy_write(). The code shows:

static int dsa_user_phy_read(struct mii_bus *bus, int addr, int reg)
{
	struct dsa_switch *ds = bus->priv;

	if (ds->phys_mii_mask & (1 << addr))
		return ds->ops->phy_read(ds, addr, reg);

	return 0xffff;
}

With ds->phys_mii_mask being a 32 bit variable the reason is clear. So do
not only increase the max values but also adapt the needed bitmasks in
the dsa and phy code. This fixes the dsa_user_ports() and dsa_cpu_ports()
too.

While we are here combine the old separated patches because dsa, mdio and
phy are tigthly coupled.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/18846
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-31 12:28:14 +02:00
Alexandru Gagniuc
22dc34e8c1 qualcommbe: v6.12: enable 2.5G and 10G phylink modes in pcs-qcom-ipq9574
The PCS driver in the 6.12 patchset is the v5 submission (see link
below). It solves a number of issues and crashes with teh pcs driver
from the 6.6 patchset. However, this new driver is missing support for
"10gbase-r", "10g-qxgmii", and 1000/2500base-x modes.

Port these modes to the 6.12 patchset. "2500base-x" in particular seems
to be needed to establish a 2.5G link on phy-mode="usxgmii";

Link: https://lore.kernel.org/lkml/20250207-ipq_pcs_6-14_rc1-v5-0-be2ebec32921@quicinc.com/
Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18796
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-31 12:25:49 +02:00
Alexandru Gagniuc
3d6c36e327 qualcommbe: enable v6.12 testing kernel
Now that patches for v6.12 are available, add the config, and enable
6.12 as a testing kernel.

Compared to v6.6 the patches to add "10gbase-r", "2500base-x",
"1000base-x", and "10g-qxgmii" modes have not been ported yet. They do
not apply cleanly to the new PCS driver. As the currently supported
hardware does not use those modes, it is not possible to test them at
this time.

Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18796
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-31 12:25:49 +02:00
Alexandru Gagniuc
1fc5e2ec90 qualcommbe: add v6.12 config from v6.6
Copy the v6.6 config to v6.6. It will be updated in a subsequent
commit in order to show the changes.

Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18796
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-31 12:25:49 +02:00
Alexandru Gagniuc
627daef0cf qualcommbe: v6.12: add NSSCC clock and reset fixes
Port reset and clock fixes from target/linux/qualcommbe/patches-6.6.
Modifications of v6.6 patches are noted in each commit body.

Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18796
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-31 12:25:48 +02:00
Alexandru Gagniuc
26ea222e21 qualcommbe: v6.12: enable ethernet for RDP433
Now that ethernet is supported on IPQ9574, add the port nodes and
other requirements to enable ethernet on RDP433.

Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18796
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-31 12:25:48 +02:00
Alexandru Gagniuc
f3fc278fcb qualcommbe: v6.12: add PPE driver (part 2)
Add the second part of the PPE driver. This includes the EDMA and
network device support. This part does not appear to have been
officially submitted for upstream review. The series is taken from
target/linux/qualcommbe/patches-6.6, and had to be heavily modified
in order to compile of v6.12. Changes to patches are noted in the
respective patch body.

Also add the PPE and EDMA nodes in this series.

Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18796
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-31 12:25:48 +02:00
Alexandru Gagniuc
cd9f3b8d33 qualcommbe: v6.12: add pending PPE driver (part 1)
Add v3 submission of the qualcomm PPE driver. As of this writing, it
is the latest version. This lacks the EDMA driver and network device
support. That will be added in part 2.

Link: https://lore.kernel.org/lkml/20250209-qcom_ipq_ppe-v3-0-453ea18d3271@quicinc.com
Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18796
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-31 12:25:48 +02:00
Alexandru Gagniuc
3744b73602 qualcommbe: v6.12: add ethernet PCS driver for IPQ9574
Add the v5 of the PCS patch. This is the latest submission as of this
writing. THe last four patches are not part of the submission. They
make the series work with v6.12 kernel, resolve a circular dependency
with the clocks, and add the DTS node. Include them as bundle.

Link: https://lore.kernel.org/lkml/20250207-ipq_pcs_6-14_rc1-v5-0-be2ebec32921@quicinc.com/
Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18796
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-31 12:25:48 +02:00
Alexandru Gagniuc
390e516a3b qualcommbe: v6.12: add QCA8084 ethernet PHY driver
This driver is cherry-picked from target/linux/qualcommbe/patches-6.6.
While Qualcomm did submit past patches for QCA8084, the code has since
ben split from at803x. The existing OpenWRT version of the patch is
the cleanest version I could find. Add it here.

Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18796
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-31 12:25:48 +02:00
Alexandru Gagniuc
8f4100ac3b qualcommbe: v6.12: add various DTS updates for IPQ9574 and RDP433
These devicetree updates can work with the existing upstreamcode. They
do not require code changes. Add them before any code change.

Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18796
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-31 12:25:48 +02:00
Alexandru Gagniuc
01f3624960 qualcommbe: v6.12: add pending patches
Add dts fixes from linux-next. Two patches from the NSSCC series are
still in -next did not yet land in mainline, as well as misc other DTS
changes. Add them here.

Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18796
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-31 12:25:48 +02:00
Alexandru Gagniuc
e3478dbd69 qualcommbe: v6.12: add upstreamed patches
Add relevant patches from upstream, up to v5.16-rc6. The gaps in the
patch numbersing are either patches that were picked into the stable
kernel (6.12.y), or that are already backported in
target/linux/generic. The gaps makes it easy for me to pick these
patches from my working kernel git branch.

Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18796
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-31 12:25:48 +02:00
Christian Marangi
427c4aa266
ath79: add calibtation variant for TP-Link Archer C6 v2
Now that we have a board file, add calibration variant for TP-Link
Archer C6 v2 and add ipq-wifi package for it.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2025-05-30 21:35:11 +02:00
Zoltan HERPAI
e05426aaf8 sunxi: enable crypto offload engine
Enable the sun8i_ce and sun8i_ss crypto engines that are included on
various Allwinner SoCs, along with their respective hash/prng/trng
options.

sun8i_ce: H2+, H3, H5, H6, R40 and A64
sun8i_ss: A80, A83T

BananaPi P2 Zero (H2+):

[    0.373860] sun8i-ce 1c15000.crypto: Set mod clock to 50000000 (50 Mhz) from 24000000 (24 Mhz)
[    0.374326] sun8i-ce 1c15000.crypto: will run requests pump with realtime priority
[    0.374516] sun8i-ce 1c15000.crypto: will run requests pump with realtime priority
[    0.374657] sun8i-ce 1c15000.crypto: will run requests pump with realtime priority
[    0.374788] sun8i-ce 1c15000.crypto: will run requests pump with realtime priority
[    0.374924] sun8i-ce 1c15000.crypto: Register cbc(aes)
[    0.374962] sun8i-ce 1c15000.crypto: Register ecb(aes)
[    0.374976] sun8i-ce 1c15000.crypto: Register cbc(des3_ede)
[    0.374990] sun8i-ce 1c15000.crypto: Register ecb(des3_ede)
[    0.375005] sun8i-ce 1c15000.crypto: Register md5
[    0.375019] sun8i-ce 1c15000.crypto: Register sha1
[    0.375032] sun8i-ce 1c15000.crypto: Register sha224
[    0.375046] sun8i-ce 1c15000.crypto: Register sha256
[    0.375061] sun8i-ce 1c15000.crypto: Register sha384
[    0.375075] sun8i-ce 1c15000.crypto: Register sha512
[    0.375109] sun8i-ce 1c15000.crypto: Register stdrng
[    0.375150] sun8i-ce 1c15000.crypto: TRNG not supported
[    0.375157] sun8i-ce 1c15000.crypto: CryptoEngine Die ID 1

BananaPi M3 (A83t):

[    0.429615] sun8i-ss 1c15000.crypto: will run requests pump with realtime priority
[    0.429866] sun8i-ss 1c15000.crypto: will run requests pump with realtime priority
[    0.430042] sun8i-ss 1c15000.crypto: DEBUG: Register cbc(aes)
[    0.430095] sun8i-ss 1c15000.crypto: DEBUG: Register ecb(aes)
[    0.430112] sun8i-ss 1c15000.crypto: DEBUG: Register cbc(des3_ede)
[    0.430128] sun8i-ss 1c15000.crypto: DEBUG: Register ecb(des3_ede)
[    0.430152] sun8i-ss 1c15000.crypto: Register md5
[    0.430171] sun8i-ss 1c15000.crypto: Register sha1
[    0.430187] sun8i-ss 1c15000.crypto: Register sha224
[    0.430203] sun8i-ss 1c15000.crypto: Register sha256
[    0.430220] sun8i-ss 1c15000.crypto: Register hmac(sha1)
[    0.430276] sun8i-ss 1c15000.crypto: Security System Die ID 7
[    0.493087] sun8i-ss 1c15000.crypto: Fallback driver could no be loaded

OrangePi Zero 2 (H616):

[    0.176833] sun8i-ce 1904000.crypto: will run requests pump with realtime priority
[    0.177054] sun8i-ce 1904000.crypto: will run requests pump with realtime priority
[    0.177167] sun8i-ce 1904000.crypto: will run requests pump with realtime priority
[    0.177258] sun8i-ce 1904000.crypto: will run requests pump with realtime priority
[    0.177361] sun8i-ce 1904000.crypto: Register cbc(aes)
[    0.177408] sun8i-ce 1904000.crypto: Register ecb(aes)
[    0.177420] sun8i-ce 1904000.crypto: Register cbc(des3_ede)
[    0.177432] sun8i-ce 1904000.crypto: Register ecb(des3_ede)
[    0.177444] sun8i-ce 1904000.crypto: Register md5
[    0.177456] sun8i-ce 1904000.crypto: Register sha1
[    0.177468] sun8i-ce 1904000.crypto: Register sha224
[    0.177479] sun8i-ce 1904000.crypto: Register sha256
[    0.177503] sun8i-ce 1904000.crypto: Register sha384
[    0.177515] sun8i-ce 1904000.crypto: Register sha512
[    0.177527] sun8i-ce 1904000.crypto: Register stdrng
[    0.177648] sun8i-ce 1904000.crypto: CryptoEngine Die ID 0

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2025-05-30 15:39:00 +02:00
Zoltan HERPAI
ab6ffa7e16 sunxi: cortexa53: enable rtc drivers
RTC has been disabled so far in the cortexa53 subtarget so far, enable
it. It's also required for the crypto trng/prng drivers on these SoC
variants (to gather IOSC noise).

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2025-05-30 15:39:00 +02:00
Zoltan HERPAI
393047e47a sunxi: drop 6.6 support
Drop configs and patches for Linux 6.6.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2025-05-30 15:39:00 +02:00
Zoltan HERPAI
01bc7a4fe7 sunxi: use kernel 6.12 by default
Switch to Linux kernel version 6.12.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2025-05-30 15:39:00 +02:00
Zoltan HERPAI
faf6ca0348 pistachio: add 6.12 testing kernel
Allow selecting 6.12 as testing kernel on pistachio.

Runtime-tested:
 - Creator Ci40 Marduk 02KZ/5+

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2025-05-30 15:32:12 +02:00
Zoltan HERPAI
d6b57d4722 pistachio: 6.12: refresh patches and kernel config
Refresh patches and configs as required.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2025-05-30 15:32:12 +02:00
Zoltan HERPAI
e757dfaf4c kernel/pistachio: Restore kernel files for v6.6
This is an automatically generated commit which aids following Kernel patch
history, as git will see the move and copy as a rename thus defeating the
purpose.

For the original discussion see:
https://lists.openwrt.org/pipermail/openwrt-devel/2023-October/041673.html

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2025-05-30 15:32:12 +02:00
Zoltan HERPAI
6f4ea1e219 kernel/pistachio: Create kernel files for v6.12 (from v6.6)
This is an automatically generated commit.

When doing `git bisect`, consider `git bisect --skip`.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2025-05-30 15:32:12 +02:00
Jonas Jelonek
7d064eef52 generic: power: backport v6.15 patch to fix build with GCC15
Backports an upstream fix ([1]) for a build regression of
'drivers/power/supply' with GCC15 -Wunterminated-string-initialization.

[1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=77f5bb150132bbbcd6bc37ffdc80c9e140e373a4

Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18950
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-05-29 23:16:05 +02:00
Jonas Jelonek
a5e6deb867 generic: net: add pending wireguard patch to fix build with GCC15
This patch adds __nonstring annotation to address GCC15 with
-Wunterminated-string-initialization.
It is accepted in wireguard-linux in [1] and pending for v6.16
in [2].

[1] https://git.zx2c4.com/wireguard-linux/commit/?h=devel&id=71e5da46e78c1cd24e2feed251a2845327447ad8
[2] https://patch.msgid.link/20250521212707.1767879-3-Jason@zx2c4.com

Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18950
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-05-29 23:13:49 +02:00
Shiji Yang
d2764bfd7e mediatek: mt7629: add the missing symbol CONFIG_LEDS_SMARTRG_LED
This symbol was lost when porting to the 6.12 kernel.

Fixes: 16b5a77716 ("mediatek: mt7629: update config-6.12")
Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/18947
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-05-29 23:05:02 +02:00
Shiji Yang
0f8091334c kernel: reorder kernel symbol configs
Sort kernel configuration files alphabetically. Also resolve the
"CONFIG_ARM_PAN" conflict introduced in commit
057a0a075e ("generic: Fix up the v6.12 config for ARM"). Based on
the original PR comment[1], this symbol should be disabled by default.

[1] https://github.com/openwrt/openwrt/pull/18900#discussion_r2106253528
Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/18947
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-05-29 23:05:02 +02:00
Kyle Hendry
668704f781 sunxi: add support for Beelink X2
Specifications:
- SoC: Allwinner H3 Quad Cortex-A7 1.2GHz
- Flash: 8GB eMMC
- RAM: 1GB DDR3
- Ethernet: 1x100M
- Wifi: RTL8189FTV or AP6181
- 1x USB-A Host
- 1x USB-A Host/Device
- 2x Button
- 2x LED
- HDMI, SPDIF, IR

Install by following standard SD card flashing instructions.
Image can also be flashed to eMMC.

Signed-off-by: Kyle Hendry <kylehendrydev@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18732
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-05-29 22:56:04 +02:00
Tony Ambardar
c96db6c013 malta: 6.12: enable kernel for testing
All four subtargets build successfully and run under QEMU.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/18712
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-05-29 22:46:47 +02:00
Tony Ambardar
4dae54f004 malta: 6.12: update config after kernel refresh
Drop obsolete symbols GCC_ASM_GOTO_OUTPUT_WORKAROUND and HW_CONSOLE, and
PREEMPT_NONE_BUILD which is now set in top-level generic config.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/18712
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-05-29 22:46:47 +02:00
Tony Ambardar
63cffd48a4 kernel/malta: Restore kernel files for v6.6
This is an automatically generated commit which aids following Kernel patch
history, as git will see the move and copy as a rename thus defeating the
purpose.

For the original discussion see:
https://lists.openwrt.org/pipermail/openwrt-devel/2023-October/041673.html

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/18712
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-05-29 22:46:47 +02:00
Tony Ambardar
b84523eed6 kernel/malta: Create kernel files for v6.12 (from v6.6)
This is an automatically generated commit.

When doing `git bisect`, consider `git bisect --skip`.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/18712
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-05-29 22:46:47 +02:00
Álvaro Fernández Rojas
4cf1316573 bmips: drop 6.6 support
Drop configs and patches for Linux 6.6.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-05-29 21:48:09 +02:00
Álvaro Fernández Rojas
416b2a808b bmips: use kernel 6.12 by default
Switch to Linux kernel version 6.12.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-05-29 21:48:09 +02:00
Linus Walleij
c8fb72eafa gemini: Add missing PHY packages
These packages were dropped off in reverted packaging, bring
them all back.

Link: https://github.com/openwrt/openwrt/pull/18952
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2025-05-29 20:10:46 +02:00
Álvaro Fernández Rojas
98341edd58 bmips: enable 6.12 kernel testing
bmips target now supports 6.12 kernel as testing.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-05-29 13:47:18 +02:00
Álvaro Fernández Rojas
49451bdf95 bmips: update files for kernel 6.12
- Update subtarget configs for kernel 6.12.
- Refresh patches for kernel 6.12.
- Drop 210-revert-macronix-nand-block-protection.patch since brcmnand no longer
  implements low level ops.
- Adapt bcm63268 gpio switches for 6.12 numbering.
- Add b53 pending patches from Jonas Gorski to fix system hangs.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-05-29 13:46:24 +02:00
Álvaro Fernández Rojas
4fff07ae93 bmips: restore kernel files for v6.6
This is an automatically generated commit which aids following kernel patch
history, as git will see the move and copy as a rename thus defeating the
purpose.

For the original discussion see:
https://lists.openwrt.org/pipermail/openwrt-devel/2023-October/041673.html

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-05-29 13:46:24 +02:00
Álvaro Fernández Rojas
7d907dcdc5 bmips: create kernel files for v6.12 (from v6.6)
This is an automatically generated commit.

When doing `git bisect`, consider `git bisect --skip`.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-05-29 13:46:24 +02:00
Álvaro Fernández Rojas
48135ddd44 generic: 6.12: backport upstream v6.16 b53 patch
e39d14a760c03 net: dsa: b53: implement setting ageing time

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-05-29 08:34:44 +02:00
Álvaro Fernández Rojas
228203f4e3 uml: move config and patches to target dir
Commit f025af1280 ("uml: restore 6.6 config+patches") accidentally restored
uml config and patches on the root directory instead of the proper directory.

Fixes: f025af1280 ("uml: restore 6.6 config+patches")
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-05-29 08:04:15 +02:00
Álvaro Fernández Rojas
cf1721cb7b generic: 6.12: backport b53 upstream patches
The support_eee patch is needed in order to prevent system hangs on bmips
devices.

c4f873c2b65c8 net: dsa: b53: mdio: add support for BCM53101
c86692fc2cb77 net: dsa: b53/bcm_sf2: implement .support_eee() method
f12b363887c70 net: dsa: use ethtool string helpers

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-05-29 07:50:09 +02:00
Álvaro Fernández Rojas
0cec046987 generic: 6.12: backport dsa support_eee patches
These patches are needed for b53 implementation of b53_support_eee, which
prevent system hangs on bmips devices.

99379f587278c net: dsa: provide implementation of .support_eee()
9723a77318b7c net: dsa: add hook to determine whether EEE is supported

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-05-29 07:50:09 +02:00
Zoltan HERPAI
45fbf6228e sunxi: add 6.12 as testing kernel
Runtime-tested on:

- Linksprite pcDuino (cortexa8 / sun5i)
- Olimex A20 Micro (cortexa7 / sun7i)
- BananaPi P2 Zero (cortexa7 / sun8i)
- Pine64 SoM (cortexa53 / sun50i)
- Orangepi Zero 2W (cortexa53 / sun50i)

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2025-05-29 01:03:03 +02:00
Zoltan HERPAI
7d840809c6 sunxi: refresh config for 6.12
Refresh config for 6.12.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2025-05-29 01:03:03 +02:00
Zoltan HERPAI
d97197d7e4 sunxi: remove upstreamed patches from 6.12
Remove upstreamed patches and refresh remaining ones for 6.12.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2025-05-29 01:03:03 +02:00
Zoltan HERPAI
69c599c775 kernel/sunxi: Restore kernel files for v6.6
This is an automatically generated commit which aids following Kernel patch
history, as git will see the move and copy as a rename thus defeating the
purpose.

For the original discussion see:
https://lists.openwrt.org/pipermail/openwrt-devel/2023-October/041673.html

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2025-05-29 01:03:03 +02:00
Zoltan HERPAI
697370ab9b kernel/sunxi: Create kernel files for v6.12 (from v6.6)
This is an automatically generated commit.

When doing `git bisect`, consider `git bisect --skip`.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2025-05-29 01:03:03 +02:00
Christian Lamparter
67e41d8a34 uml: disable kmod-8250-serial
The driver tries to access ioports (0x2f9!!) which UML doesn't have.
This causes lots of warnings to appear on boot:

| WARNING: CPU: 0 PID: 1 at lib/logic_iomem.c:188 serial8250_config_port+0x20a/0x1260
| Invalid writeqb of 0xff at address 2f9
| Modules linked in:
| CPU: 0 UID: 0 PID: 1 Comm: swapper Tainted: G        W          6.12.25 #0
| Tainted: [W]=WARN
| Stack:
| Call Trace:
|  [<60001000>] ? set_reset_devices+0x0/0x16
|  [<60452cba>] ? serial8250_config_port+0x20a/0x1260
|  [<6071e91f>] ? dump_stack_lvl+0x55/0x71
|  [<606e127c>] ? _printk+0x0/0x4f
|  [<60044bbb>] ? __warn+0x11b/0x120
|  [<6003b5d0>] ? um_set_signals+0x0/0x40
|  [<606de721>] ? warn_slowpath_fmt+0x81/0x8c
|  [<606de6a0>] ? warn_slowpath_fmt+0x0/0x8c
|  [<60452cba>] ? serial8250_config_port+0x20a/0x1260

(they are even recursive!)

Now, the situation gets more confusing. Because from what I can tell,
this was seemingly done intenionally. Upstream patches in related areas:

|commit ddd268c42871b78c75e12a5c28207fb481138f41
|Author: Niklas Schnelle <schnelle@linux.ibm.com>
|Date:   Wed Apr 3 14:43:00 2024 +0200
|
|    um: Select HAS_IOREMAP for UML_IOMEM_EMULATION
|
|    In a future patch HAS_IOPORT=n will disable inb()/outb() and friends at
|    compile time. UML supports these via its UML_IOMEM_EMULATION so let that
|    select HAS_IOPORT and also reflect this in NO_IOPORT_MAP.

hint that there's ongoing work in this area. But unfortunately, this future
hasn't arrived yet. Once this future arrives, please nuke this patch.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2025-05-28 18:22:41 +02:00
Christian Lamparter
8970559351 uml: add 6.12 testing kernel
refresh config + patches.

This includes the following changes:
 - The selected x86_64 CPU is switched to generic instead of K8.

A backported patch is included from 6.13.

000-v6.13-asm-generic-io.h-rework-split-ioread64-iowrite64-hel.patch
|fixed the following build error:
|  CC      lib/iomap.o
|lib/iomap.c:156:5: error: no previous prototype for 'ioread64_lo_hi' [-Werror=missing-prototypes]
|  156 | u64 ioread64_lo_hi(const void __iomem *addr)
|      |     ^~~~~~~~~~~~~~
| [...]

Note: 102-pseudo-random-mac.patch will likely go away with the next stable.
UML is switching to a new networking infrastructure. The previous implementation
using tuntap, daemon, socket, ethertap, vde are being replaced by "vector"
transports tap, hybrid, raw, EoGRE, Eol2tpv3, fd, vde (vector!).

Please see, to checkout what will change:
<https://docs.kernel.org/virt/uml/user_mode_linux_howto_v2.html#setting-up-uml-networking>

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2025-05-28 18:22:41 +02:00
Christian Lamparter
62adc4bcbb uml: remove left-overs from previous kernel bumps
This should have been fixed by an upstream patch in 5.12
|commit ed102bf2afed226703eaf85a704755bdbea34583
|Author: Randy Dunlap <rdunlap@infradead.org>
|Date:   Thu Apr 15 10:13:52 2021 -0700
|
|    um: Fix W=1 missing-include-dirs warnings
|
|    Currently when using "W=1" with UML builds, there are over 700 warnings
|    cc1: warning: ./arch/um/include/uapi: No such file or directory [-Wmissing-include-dirs]
|
|    but arch/um/ does not have include/uapi/ at all, so add that
|    subdir and put one Kbuild file into it (since git does not track
|    empty subdirs).

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2025-05-28 18:22:41 +02:00
Christian Lamparter
de5e537705 generic: 6.12: add missing symbol
this symbol got picked up by the 6.12 UML conversion.
CONFIG_FBNIC = FaceBook/Meta Platforms Host Network Interface
it should be disabled by default in generic.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2025-05-28 18:22:41 +02:00
Álvaro Fernández Rojas
268c352e44 generic: 6.6: backport devm_clk_get_optional_enabled_with_rate
This is needed for mac80211 v6.14.5 update.

9934a1bd45b2b clk: provide devm_clk_get_optional_enabled_with_rate()

9934a1bd45

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-05-28 14:02:49 +02:00
Álvaro Fernández Rojas
f40250781d generic: backport secs_to_jiffies
This is needed for mac80211 v6.14.5 update.

b35108a51cf7b jiffies: Define secs_to_jiffies()
bb2784d9ab495 jiffies: Cast to unsigned long in secs_to_jiffies() conversion

b35108a51c
bb2784d9ab

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-05-28 11:39:28 +02:00
Christian Marangi
11c936e141
mediatek: filogic: provide custom GPT table for Arcadyan Mozart
New revision Arcadyan Mozart apply a new partition table and moved the
factory partition to a new location. This conflicts with the standard
partition layout and also make the nvmem cells to not correctly identify
the MAC address anymore.

Generate and Provide a new GPT partition table that account for the new
calibration partition.
The previous revision of the Arcadyan Mozart device is considered
pre-production devices and should not be intended for real support.

Link: https://github.com/openwrt/openwrt/pull/18874
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2025-05-28 11:34:28 +02:00
Piotr Dymacz
35c828c168 ipq60xx: add support for ALFA Network AP120C-AX
ALFA Network AP120C-AX is a dual-band ceiling AP, based on Qualcomm
IPQ6000 + QCN5021 + QCN5052 + QCA8072 chipsets bundle.

Specifications:

- SOC:      Qualcomm IPQ6000 (quad-core Cortex-A53 1.2 GHz)
- DRAM:     DDR3 512 MB (Micron MT41K256M16TW-107)
- Flash:    16 MB SPI NOR (Macronix MX25U12832F, boot device)
            128 MB NAND (Macronix MX30UF1G18AC, dual-firmware)
- Ethernet: 2x 10/100/1000 Mbps Ethernet (QCA8072)
            802.3at/af PoE input in WAN port
- Wi-Fi:    2x2 2.4 GHz Wi-Fi 6 (QCN5021 + RFFM8227 FEM)
            2x2   5 GHz Wi-Fi 6 (QCN5152 + QPF4568 FEM)
- Antenna:  for indoor version: dual-band, internal
            2x (or 4x) U.FL antenna connectors on the PCB
- LED:      for indoor/outdoor versions: 5x on external module (status,
            2x Wi-Fi, 2x Ethernet), PoE LED on-board
            8-pin on-board header for LED module (1.27 mm pitch, J14)
- Button:   1x button (reset)
- USB:      1x 4-pin on-board header for USB 2.0 (2.54 mm pitch, J22)
- UART:     1x micro USB Type-B for system console (Holtek HT42B534)
            1x 4-pin on-board header (2.54 mm pitch, J11)
- Power:    802.3at/af PoE or 12 V DC/2 A (DC jack)
- Other:    8-pin and 4-pin on-board headers for external Bluetooth
            module (1.27 mm pitch, J15, J16, unavailable, thus untested)

MAC addresses:

- WAN:               00:c0:ca:xx:xx:6c (art 0x0, device's label -2)
- LAN:               00:c0:ca:xx:xx:6d (art 0x6, device's label -1)
- 2.4 GHz (IPQ6000): 00:c0:ca:xx:xx:6e (art 0xc, device's label)
-   5 GHz (IPQ6000): 00:c0:ca:xx:xx:6f (device's label + 1)

Flash instructions:

Due to the lack of direct GUI based update capability and dual-firmware
partition configuration, it is recommended to use TFTP + serial console
based approach (console is available in micro USB connector):

1. Set a static IP 192.168.1.1/24 on PC and start TFTP server with the
   '...-factory.ubi' image renamed to 'firmware.bin'.
2. Make sure you can access board's serial console over micro USB.
3. Power up the device, hit any key to enter U-Boot CLI and issue below
   commands.

3.1 Restore U-Boot's environment to default values (double check first
    the '0:APPSBLENV' partition offset using 'smem' command):

    sf probe
    sf erase 0x510000 0x10000
    saveenv

3.2 Download and install OpenWrt in both partitions and reset the board:

    tftpb 0x44000000 firmware.bin
    flash rootfs
    flash rootfs_1
    reset

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2025-05-27 23:43:55 +02:00
Linus Walleij
658aaf192b gemini: Switch to kernel v6.12 only
There is no reason to keep v6.6 support. v6.12 is verified
and working.

Link: https://github.com/openwrt/openwrt/pull/18936
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2025-05-27 21:04:01 +02:00
Linus Walleij
390567b363 gemini: Kernel v6.12
This platform is tightly coupled to upstream and works just
fine with kernel v6.12.

Link: https://github.com/openwrt/openwrt/pull/18936
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2025-05-27 21:03:34 +02:00
Zoltan HERPAI
0c6f9665f2 sifiveu: drop upstreamed patch from 6.12
The gpio-poweroff support has been upstreamed earlier.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2025-05-27 16:03:54 +02:00
Zoltan HERPAI
199925f29a sifiveu: drop 6.6 support
Drop configs and patches for Linux 6.6.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2025-05-27 16:03:54 +02:00
Zoltan HERPAI
eda23e04e7 sifiveu: use kernel 6.12 by default
Switch to Linux kernel version 6.12.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2025-05-27 16:03:54 +02:00
Linus Walleij
057a0a075e generic: Fix up the v6.12 config for ARM
This adds a few ARM-related kconfig options that makes the
configure phase smooth on ARM (32bit) systems.

We default PAN to enabled for protection, however this has
a syscall speed penalty, if your system is interacting a lot
from userspace you might want to disable it for speed vs
security. For in-kernel routing it should not be a major
issue.

Some marginal ARM system enables DRM so make sure we have
the related DRM Kconfigs set up to unselected.

Link: https://github.com/openwrt/openwrt/pull/18900
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2025-05-27 14:26:30 +02:00
Tianling Shen
6f8c58bfd8
mediatek: add ubootmod layout for cudy tr3000 v1
This allows us to use the full size of nand, which increases ubi size
from 64M to 122.25M.

If you are at factory firmware, please refer commit 63b8d98dd0 ("mediatek: add support for Cudy TR3000 v1")
to boot into OpenWrt initramfs (stock layout).

Flash instructions:
1. Login into the device and backup everything, especially 'Factory' part.
1. Unlock mtd partitions:
   apk update && apk add kmod-mtd-rw
   insmod mtd-rw i_want_a_brick=1
3. Write new BL2 and FIP
   mtd write openwrt-mediatek-filogic-cudy_tr3000-v1-ubootmod-preloader.bin BL2
   mtd write openwrt-mediatek-filogic-cudy_tr3000-v1-ubootmod-bl31-uboot.fip FIP
4. Set static IP on your PC:
   IP 192.168.1.254/24, GW 192.168.1.1
5. Serve OpenWrt initramfs image using TFTP server.
6. Cut off the power and re-engage, wait for TFTP recovery to complete.
7. After OpenWrt has booted, perform sysupgrade.

Tested-by: Yangyu Chen <cyy@cyyself.name>
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2025-05-27 19:56:55 +08:00
Álvaro Fernández Rojas
53c723246a generic: 6.12: backport upstream v6.16 brcmnand patches
This is needed to restore compatibility with legacy brcmnand controllers.

3bfb22cecfe6 mtd: rawnand: brcmnand: legacy exec_op implementation
528b541b71cf mtd: nand: brcmnand: fix NAND timeout when accessing eMMC
56fce7547004 mtd: rawnand: brcmnand: remove unused parameters

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-05-27 11:29:46 +02:00
Álvaro Fernández Rojas
144ac2e29e bcm27xx: refresh 6.12 patches
Commit 438ed53577 ("generic: 6.12: backport MediaTek Ethernet PHY changes")
backported commits to generic 6.12, but missed refreshing bcm27xx patches.

Fixes: 438ed53577 ("generic: 6.12: backport MediaTek Ethernet PHY changes")
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-05-27 11:22:27 +02:00
Markus Stockhausen
cddf860c53 realtek: align declaration/static/extern function definitions for dsa driver
In 2023 upstream has tightened compiler checks with this patch
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit
/scripts/Makefile.extrawarn?h=v6.15&id=0fcb70851fbfea1776ae62f67c503fef8f0292b9

A consistent function definition is now needed. I.e.

- functions must be either declared with "static" or
- functions need an additional declaration (in the header file)

Before upgrading the Realtek target to 6.12 clean the code so that the main
6.12 PR can focus on real issues from the version bump.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/18925
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-27 10:26:18 +02:00
Markus Stockhausen
f64864fa53 realtek: align declaration/static/extern function definitions for eth driver
In 2023 upstream has tightened compiler checks with this patch
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit
/scripts/Makefile.extrawarn?h=v6.15&id=0fcb70851fbfea1776ae62f67c503fef8f0292b9

A consistent function definition is now needed. I.e.

- functions must be either declared with "static" or
- functions need an additional declaration (in the header file)

Before upgrading the Realtek target to 6.12 clean the code so that the main
6.12 PR can focus on real issues from the version bump.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/18925
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-27 10:26:18 +02:00
Markus Stockhausen
db3037830b realtek: align declaration/static/extern function definitions for phy driver
In 2023 upstream has tightened compiler checks with this patch
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit
/scripts/Makefile.extrawarn?h=v6.15&id=0fcb70851fbfea1776ae62f67c503fef8f0292b9

A consistent function definition is now needed. I.e.

- functions must be either declared with "static" or
- functions need an additional declaration (in the header file)

Before upgrading the Realtek target to 6.12 clean the code so that the main
6.12 PR can focus on real issues from the version bump.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/18925
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-27 10:26:18 +02:00
Markus Stockhausen
31e2567164 realtek: align declaration/static/extern function definitions for clock driver
In 2023 upstream has tightened compiler checks with this patch
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit
/scripts/Makefile.extrawarn?h=v6.15&id=0fcb70851fbfea1776ae62f67c503fef8f0292b9

A consistent function definition is now needed. I.e.

- functions must be either declared with "static" or
- functions need an additional declaration (in the header file)

Before upgrading the Realtek target to 6.12 clean the code so that the main
6.12 PR can focus on real issues from the version bump.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/18925
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-27 10:26:18 +02:00
Markus Stockhausen
7b65949bc4 realtek: align declaration/static/extern function definitions for startup code
In 2023 upstream has tightened compiler checks with this patch
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit
/scripts/Makefile.extrawarn?h=v6.15&id=0fcb70851fbfea1776ae62f67c503fef8f0292b9

A consistent function definition is now needed. I.e.

- functions must be either declared with "static" or
- functions need an additional declaration (in the header file)

Before upgrading the Realtek target to 6.12 clean the code so that the main
6.12 PR can focus on real issues from the version bump.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/18925
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-27 10:26:18 +02:00
Zoltan HERPAI
b69e6c35c5 d1: improve Nezha D1 support
The Nezha board has a PCF8574 that acts as an I/O expander on the
i2c2 bus. Enable the required module for it.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2025-05-26 19:26:51 +02:00
Zoltan HERPAI
de2d34cf7a d1: enable crypto offload engine
Enable the sun8i_ce engine that's included on the D1 SoC, along
with the respective hash/prng/trng options. The sun8i_ce driver
also requires PM and PPU to be enabled.

[    1.368345] sun8i-ce 3040000.crypto: Set mod clock to 300000000 (300 Mhz) from 400000000 (400 Mhz)
[    1.378592] sun8i-ce 3040000.crypto: will run requests pump with realtime priority
[    1.386894] sun8i-ce 3040000.crypto: will run requests pump with realtime priority
[    1.395114] sun8i-ce 3040000.crypto: will run requests pump with realtime priority
[    1.403197] sun8i-ce 3040000.crypto: will run requests pump with realtime priority
[    1.411110] sun8i-ce 3040000.crypto: Register cbc(aes)
[    1.416235] sun8i-ce 3040000.crypto: Register ecb(aes)
[    1.421347] sun8i-ce 3040000.crypto: Register cbc(des3_ede)
[    1.426898] sun8i-ce 3040000.cryxto: Register ecb(des3_ede)
[    1.432366] sun8i-ce 3040000.crypto: Register md5
[    1.437112] sun8i-ce 3040000.crypto: Register sha1
[    1.441816] sun8i-ce 3040000.crypto: Register sha224
[    1.446821] sun8i-ce 3040000.crypto: Register sha256
[    1.451697] sun8i-ce 3040000.crypto: Register sha384
[    1.456733] sun8i-ce 3040000.crypto: Register sha512
[    1.461673] sun8i-ce 3040000.crypto: Register stdrng
[    1.467096] sun8i-ce 3040000.crypto: CryptoEngine Die ID 0

root@OpenWrt:~# cat /proc/crypto |grep sun8i
driver       : sun8i-ce-prng
driver       : sha512-sun8i-ce
driver       : sha384-sun8i-ce
driver       : sha256-sun8i-ce
driver       : sha224-sun8i-ce
driver       : sha1-sun8i-ce
driver       : md5-sun8i-ce
driver       : ecb-des3-sun8i-ce
driver       : cbc-des3-sun8i-ce
driver       : ecb-aes-sun8i-ce
driver       : cbc-aes-sun8i-ce

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2025-05-26 19:26:51 +02:00
Robert Marko
200a31b6f5 ramips: mt7621: sercomm_na502s: use upstream XR USB serial driver
Instead of including the out-of-tree XR USB serial driver, use the
newly packaged in-tree driver for it.

Link: https://github.com/openwrt/openwrt/pull/18926
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-26 18:59:26 +02:00
Daniel Golle
fa236de37d mediatek: enable testing kernel 6.12
Set KERNEL_TESTING_PATCHVER to allow testing Linux 6.12.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2025-05-26 16:58:04 +01:00
Daniel Golle
16b5a77716 mediatek: mt7629: update config-6.12
Refresh kernel configuration of the mt7629 subtarget for use
with Linux 6.12.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2025-05-26 16:58:04 +01:00
Daniel Golle
0a0f5f94ec mediatek: mt7623: update config-6.12
Refresh kernel configuration of the mt7623 subtarget for use
with Linux 6.12.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2025-05-26 16:58:04 +01:00
Daniel Golle
029b7ed9c4 mediatek: mt7622: update config-6.12
Refresh kernel configuration of the mt7622 subtarget for use
with Linux 6.12.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2025-05-26 16:58:04 +01:00
Daniel Golle
3e95a2f6e1 mediatek: filogic: update config-6.12
Refresh kernel configuration of the filogic subtarget for use
with Linux 6.12.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2025-05-26 16:58:04 +01:00
Daniel Golle
166d9d5ea2 kernel/mediatek: 6.12: fix and refresh patches
Fix patches and refresh for Linux 6.12.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2025-05-26 16:58:04 +01:00
Daniel Golle
25bb907937 kernel/mediatek: 6.12: adapt for changed MMC card binding
Adapt patches adding NVMEM or fitblk rootdisk references to MMC
partitions for the changed MMC card binding.

Note that boards in 'dts' folder can only be converted once Linux 6.6,
which still depends on the old binding, has been dropped.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2025-05-26 16:58:04 +01:00
Daniel Golle
b09c0d2680 kernel/mediatek: 6.12: allow setting OF node for MSDOS partitions
Add patch to allow referencing MSDOS/MBR partitions in device tree to
allow legacy MT7623 boards to continue working with fitblk.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2025-05-26 16:58:04 +01:00
Daniel Golle
25ee5081fa kernel/mediatek: 6.12: adapt SPI calibration
Fix build of downstream SPI calibration on Filogic SoCs for Linux 6.12.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2025-05-26 16:58:04 +01:00
Daniel Golle
f9206d1111 kernel/mediatek: 6.12: replace downstream files by patches
Replace downstream files by patches, either backports of those
which have already applied or pending patches tracked on patchwork.
This is done to make future maintainance more easy.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2025-05-26 16:58:04 +01:00
Daniel Golle
a9822e8bd6 kernel/mediatek: 6.12: drop patches which have been applied upstream
Drop patches which have been applied upstream in the meantime.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2025-05-26 16:58:04 +01:00
Daniel Golle
72994b5e5a kernel/mediatek: 6.12: drop patches which are now part of generic
Drop patches which have been moved into target/linux/generic by commit
f4144d61d2 ("generic: 6.12: backport MediaTek Ethernet PHY changes").

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2025-05-26 16:58:04 +01:00
Daniel Golle
ca3a3a7cc4 kernel/mediatek: Restore kernel files for v6.6
This is an automatically generated commit which aids following Kernel patch
history, as git will see the move and copy as a rename thus defeating the
purpose.

For the original discussion see:
https://lists.openwrt.org/pipermail/openwrt-devel/2023-October/041673.html

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2025-05-26 16:58:04 +01:00
Daniel Golle
16c1e1b9ba kernel/mediatek: Create kernel files for v6.12 (from v6.6)
This is an automatically generated commit.

When doing `git bisect`, consider `git bisect --skip`.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2025-05-26 16:58:04 +01:00
Daniel Golle
465249f2b3 mediatek: filogic: adapt BananaPi-R4 for use with upstream DT
* the variant with 2.5G PHY instead of LAN SFP is called '2p5'
   upstream and 'poe' in our downstream Linux 6.6 DT. Use the right
   DTS depending on the kernel version and set an additional
   compatible.

 * drop additional DT overlay for WiFi.
   The final version of the board uses a physical switch for the 12V
   power of the WiFi module and the I2C EEPROM of the module always
   comes empty (instead of with a MAC address).

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2025-05-26 16:58:04 +01:00
Daniel Golle
b992aa119c mediatek: dts: bring mt7988a.dtsi closer to upstream
In preparation of using the upstream mt7988a.dtsi when switching
to Linux 6.12 prepare by bringing our downstream version closer to
what went upstream.
 * rename 'xphy' -> 'xsphy'
 * rename 'uart[012]' -> 'serial[012]'
 * only list pinctrl settings directly used in mt7988a.dtsi there,
   leave it to boards to define all additional pinctrl settings
   they need.
 * move fan and thermal-zone to board level

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2025-05-26 16:58:03 +01:00
Daniel Golle
a387c62114 mediatek: dts: rename mt7981.dtsi to mt7981b.dtsi
Upstream uses a different filename, so lets rename our downstream
mt7981.dtsi to mt7981b.dtsi and update the device tree of all
MT7981 boards accordingly.
This is to prepare for the switch to Linux 6.12 which is going to
use the upstream mt7981b.dtsi (plus some patches on top).

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2025-05-26 16:58:03 +01:00
Daniel Golle
78db7780d0 mediatek: mt7622: prepare legacy rtl8367c driver for Linux 6.12
Do the minimum necessary to get the legacy rtl8367c driver to build
with Linux 6.12.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2025-05-26 16:58:03 +01:00
Daniel Golle
438ed53577 generic: 6.12: backport MediaTek Ethernet PHY changes
The MediaTek Ethernet PHY drivers are going to be used by multiple
targets (airoha, mediatek, ramips). Add generic backports of changes
required for recently added Ethernet PHYs.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2025-05-26 16:58:03 +01:00
Daniel Golle
34b176b565 generic: 6.12: mtk_eth_soc: adapt downstream SerDes patch
While it will hopefully be replaced soon by an upstream solution for
now we keep the downstream SerDes PCS implementation for MT7988A.
In order to make it work with upstream mt7988a.dtsi we have to
compensate for the changed start address of topmisc which was
moved from 0x11d10000 to 0x11d10084 to accomodate a future power
domain controller located at 0x11d10000~0x11d10080.
Hence we need to change TOP_MISC_NETSYS_PCS_MUX from 0x84 to 0x0, so
the Ethernet path/mux selection can work with upstream mt7988a.dtsi.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2025-05-26 16:58:03 +01:00
Daniel Golle
d092e7af40 generic: 6.12: fix patch adding EEE-support to mtk_eth_soc
Upstream now uses struct ethtool_keee instead of struct ethtool_eee
as parameter to EEE-related functions. Follow that change and modify
the patch accordingly.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2025-05-26 16:58:03 +01:00
Daniel Golle
bc0b14c8ea generic: net: phy: rtl8261n: fix build with Linux 6.12
Mark functions which aren't exported as static to fix build with
Linux 6.12.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2025-05-26 16:58:03 +01:00
Daniel Golle
47cfb09e45 generic: 6.12: add hack patch for transition to new partition bindings
Commit fa0f130764 ("generic: 6.12: update block NVMEM driver") switched
to the upstream DT bindings for block partitions.

Bring back the old/legacy downstream way to assign the OF node to a
block device or partition in order to allow sharing a single DTS for
both, Linux 6.6 (which exclusively uses the old/legacy binding) and
Linux 6.12 (which will now support both, new/upstream binding and the
old/legacy binding).

Once we drop Linux 6.6 and all boards have been converted to the new
binding we can drop this patch.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2025-05-26 16:58:03 +01:00
Daniel Golle
9b3ad5b151 generic: 6.12: add missing Kconfig symbol
Augmented symbol CONFIG_SND_SOC_MT8365 was missing, add it.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2025-05-26 16:58:03 +01:00
Markus Stockhausen
32f408c955 realtek: refactor RTL838x mdio serdes read/write functions
There are still a lot of mdio functions scattered around the code.
Move the RTL838x serdes helpers closer to the bus, add the proper
prefix and simplify the functions.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/18847
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-26 10:39:44 +02:00
Markus Stockhausen
1bef83bb23 realtek: simplify RTL8214FC patches for ethtool copper/fiber switching
There is a patch/bug cascade in the realtek target phy code that must be resolved.

1. The phy_driver structure is patched to add features ONLY needed for RTL8214FC

2. The kernel is patched to allow switching fiber/copper port of phys through ethtool
   by calling these new features.

3. With those patches applied the bootup always switches RTL8214FC ports to copper.
   Even if a SFP module was found before and the phy driver switched to fibre before.

3. So another patch is needed that reprobes the SFP module to activate fiber again.

4. Because of the reprobing we need a fourth patch that avoid duplicate devices.

Simplify this by removing all patches and reusing the existing ethtool phy tunable
interface. The command line usage might be counterintuitive but it avoids tons of
problems in the code. In addition, this scenario is not used frequently.

Before:ethtool -s lan25 port fibre/tp
After: ethtool --set-phy-tunable lan25 downshift on/off

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/18816
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-26 10:37:54 +02:00
Mathew McBride
bff179de73 armsr: remove 'console=tty1' from kernel command line
We have modified the kernel to setup all "default" consoles,
including serial ports and framebuffers/screens, providing
no console= argument is supplied on the kernel command line.

Adding 'console=tty1' caused the 'default' serial port on
device tree systems to break, as the kernel would not carry
over the settings (like baud rate) from the bootloader.

The system administrator can still force the use of a
specific console by adding their own console= arguments.

Signed-off-by: Mathew McBride <matt@traverse.com.au>
Fixes: c099523d66 ("armsr: use console=tty1 to make
console more readily available")
Link: https://github.com/openwrt/openwrt/pull/17012
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-26 10:31:23 +02:00
Mathew McBride
3697022ce3 armsr: add patch (hack) to enable all "default" consoles
A previous change added 'console=tty1' to the default kernel command
line on armsr, in order to ensure the framebuffer console is enabled
on systems capable of graphics output.

Unfortunately, this change broke boards that used device tree
(DT) firmware with serial consoles, as the serial console
specified by the system firmware (stdout-path) was no longer
setup by the kernel.

A bit of probing determined that the SPCR (serial port console
direction table) on ACPI systems was preventing Linux from setting
up a default framebuffer console on these systems (which is why
console=tty1 was added).

(The affected ACPI systems are usually VMs using QEMU's
'virt' machine and EDK2 firmware. The firmware on these systems
does not remove the SPCR when a screen is present)

So to ensure all possible systems are setup correctly, we modify
the kernel so all "default" console types (serial and screen)
are setup when no console= arguments are specified on the kernel
command line.

Signed-off-by: Mathew McBride <matt@traverse.com.au>
Fixes: c099523d66 ("use console=tty1 to make console more
readily available")
Link: https://github.com/openwrt/openwrt/pull/17012
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-26 10:31:23 +02:00
Shiji Yang
1df56d02cf ath79: refresh 6.12 kernel patches
Refresh patches to fix the GitHub CI warning.

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/18912
Signed-off-by: Nick Hainke <vincent@systemli.org>
2025-05-25 20:39:13 +02:00
Nikolay March
726bb8e0e2 mediatek: filogic: add support for SNR-CPE-AX2
SOC: MediaTek MT7981b
RAM: 256MB DDR3
FLASH: 128MB SPI-NAND (Winbond W25N01GV)
WIFI: Mediatek MT7981b DBDC 802.11ax 2.4/5 GHz
ETH: MediaTek MT7531 Switch
UART: 3V3 115200 8N1 (Pinout silkscreened / Do not connect VCC)

Interface	MAC	Algorithm
LAN	8C:AE:DB:2C:xx:xx	label
WAN	8C:AE:DB:2C:xx:xx	label +1
WLAN 2.4G	8C:AE:DB:2C:xx:xx	label +2
WLAN 5G	8C:AE:DB:2C:xx:xx	label +3
Installation
-------------------Install openwrt image-------------------------------:

Set a static ip on the ethernet interface of your PC. (ip address:
192.168.1.254, subnet mask:255.255.255.0) .

Download the OpenWrt uboot image
(openwrt-mediatek-filogic-snr_cpe-ax2-bl31-uboot.fip).

SSH/SCP opened by default on the stock firmware (3.0.1).
Username: Admin, default password: Admin. Check it on the bottom of
the router.

Copy uboot image using SCP (WinSCP) to /tmp dir on SNR-CPE-AX2.

Download recovery file.
openwrt-mediatek-filogic-snr_snr-cpe-ax2-initramfs-recovery.itb.

Copy the recovery image to a TFTP server reachable at 192.168.1.254/24.

Open ssh shell to the SNR-CPE-AX2.
Run commands:
mtd write \
/tmp/openwrt-mediatek-filogic-snr_snr-cpe-ax2-bl31-uboot.fip FIP
reboot

Wait until recovery boot.
Open web 192.168.1.1 and do sysupgrade by
openwrt-mediatek-filogic-snr_cpe-ax2-squashfs-sysupgrade.itb

Signed-off-by: Nikolay March <palladin82@yandex.ru>
Link: https://github.com/openwrt/openwrt/pull/18700
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-05-25 19:04:12 +02:00
John Audia
3306a163cf x86: legacy: config: alphabetize config-6.12
Sort the config in alphabetical order

Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/18897
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-05-25 18:09:01 +02:00
John Audia
83ff9600dc stm32: add missing config option
6.6.92 requires the addition of CONFIG_ARM_SCMI_DEBUG_COUNTERS

Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/18835
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-05-25 17:57:19 +02:00
John Audia
763339207b rockchip: armv8: add missing config option
6.6.92 requires the addition of CONFIG_ARM_SCMI_DEBUG_COUNTERS

Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/18835
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-05-25 17:57:19 +02:00
John Audia
2a7cfbbbef kernel: bump 6.6 to 6.6.92
Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.92

No patches needed a rebase with this release/only archive hash updated.

Build system: x86/64
Build-tested: flogic/xiaomi_redmi-router-ax6000-ubootmod, ramips/tplink_archer-a6-v3
Run-tested: flogic/xiaomi_redmi-router-ax6000-ubootmod, ramips/tplink_archer-a6-v3

Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/18835
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-05-25 17:57:19 +02:00
John Audia
ecac1d8abd kernel: bump 6.6 to 6.6.91
Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.91

Removed upstreamed:
	generic/pending-6.6/730-net-ethernet-mtk_eth_soc-reset-all-TX-queues-on-DMA-.patch[1]

All other patches automatically rebased.

1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.91&id=68f29bb97a0e0519156664cdc23e8b1f129e3254

Build system: x86/64
Build-tested: flogic/xiaomi_redmi-router-ax6000-ubootmod, ramips/tplink_archer-a6-v3
Run-tested: flogic/xiaomi_redmi-router-ax6000-ubootmod, ramips/tplink_archer-a6-v3

Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/18835
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-05-25 17:57:18 +02:00
Rosen Penev
3d6e1a3c9d mac80211: ath9k: replace qca,led-sources
Upstream seems to be using led-sources instead of custom properties.

Code mostly taken from mt76.

Changed all(few) users of qca,led_pin to use the new format.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18805
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-24 21:33:37 +02:00
Markus Stockhausen
cd808d9997 realtek: relocate mips cpc probing
The MIPS CPC (Cluster Power Controller) is setup during boot and can take
its configuration from the devicetree. This is currently not possible
because the cpc probing happens before dt initialization. Call order
during startup is:

setup_arch()
  prom_init() <- our function
    mips_cpc_probe()
    smp_stuff()
  arch_mem_init()
    device_tree_init() <- our function
      unflatten_and_copy_device_tree()

To avoid ugly hacking and support a clean devicetree relocate the cps/smp
stuff to device_tree_init(). This is basically the same location as in
generic mips initialization.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Signed-off-by: Sebastian Gottschall <s.gottschall@dd-wrt.com>
Link: https://github.com/openwrt/openwrt/pull/18888
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-24 21:20:58 +02:00
Markus Stockhausen
897abbfc4a realtek: take over boot command line patch into driver
Make it easier to upgrade the kernel in the future. For this remove
the 320-harden-fw_init_cmdline.patch and add the logic into the
startup sequence at the right place.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/18853
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-24 21:09:52 +02:00
Zoltan HERPAI
086426a64e mxs: drop 6.6 support
Drop configs for Linux 6.6.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2025-05-24 16:15:53 +02:00
Zoltan HERPAI
3ad65da7d6 mxs: use kernel 6.12 by default
Switch to Linux kernel version 6.12.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2025-05-24 16:15:53 +02:00
Shiji Yang
df465b6513 ath79: enable 6.12 testing kernel
The 6.12 testing kernel for ath79 target is ready now.

Tested on AR9344 (ath79/nand) and QCA9531 (ath79/generic).

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
2025-05-24 15:42:23 +02:00
Shiji Yang
2c7c0773b2 ath79: irqchip/ath79-misc: fix missing prototypes warnings
The newly introduced patch fixes the compilation warning for
kernel module irq-ath79-misc.

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
2025-05-24 15:42:23 +02:00
Shiji Yang
54b23f2163 ath79: refresh 6.12 kernel config files
All kernel symbols are automatically refreshed by
`make kernel_oldconfig CONFIG_TARGET=target` and
`make kernel_oldconfig CONFIG_TARGET=subtarget`.

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
2025-05-24 15:42:23 +02:00
Shiji Yang
fe42a75b03 ath79: refresh 6.12 kernel patches
Remove upstreamed:
001-v6.11-gpio-ath79-convert-to-dynamic-GPIO-base-allocation.patch [1]

Manually rebased:
341-wifi-ath9k-obtain-system-gpios.patch
900-unaligned_access_hacks.patch

[1] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-6.12.y&id=9a473c2a093e0d1c466bf86073230e2c8b658977
Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
2025-05-24 15:42:23 +02:00
Shiji Yang
c0c8c7cbe8 ath79: restore kernel 6.6 config files and patches
Copy patches and kernel configs from 6.12 kernel to restore the
default 6.6 kernel support files.

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
2025-05-24 15:42:23 +02:00
Shiji Yang
9b6ea812ec ath79: rename patchset and kernel configs to 6.12
This is a preparation for 6.12 kernel support. It can help us
track the files history by using the Git tool.

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
2025-05-24 15:42:23 +02:00
Shiji Yang
87d2593177 ath79: refresh kernel symbol configs
Manually move the common NVMEM Kconfig symbols to the shared
config file and disable them for the mikrotik subtarget. Other
changes are automatically completed by `make kernel_oldconfig`.
This is a preparation for introducing the 6.12 kernel support.

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
2025-05-24 15:42:22 +02:00
Zoltan HERPAI
515130e8f7 d1: drop 6.6 support
Drop configs and patches for Linux 6.6.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2025-05-24 14:03:02 +02:00
Zoltan HERPAI
f5b3e71cc5 d1: use kernel 6.12 by default
Switch to Linux kernel version 6.12.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2025-05-24 14:03:02 +02:00
Markus Stockhausen
b648fda020 realtek: prepare RTL931x for full SMP support
RTL931x devices are dual core with two threads each. That is a total
of 4 VPEs (CPUs) in the kernel. Adapt the kernel config for that.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Signed-off-by: Sebastian Gottschall <s.gottschall@dd-wrt.com>
Link: https://github.com/openwrt/openwrt/pull/18889
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-24 11:54:43 +02:00
George Moussalem
b5f0cba751 qualcommax: ipq50xx: backport upstreamed patches for IPQ5018 tsens support
Use upstreamed v6.16 patches for IPQ5018 tsens support.

Signed-off-by: George Moussalem <george.moussalem@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/18884
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-24 11:27:05 +02:00
George Moussalem
37d434238b qualcommax: ipq50xx: backport upstreamed patches for IPQ5018 TCSR support
Use upstreamed v6.16 patch for IPQ5018 TCSR support and setting the
download mode.

Signed-off-by: George Moussalem <george.moussalem@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/18884
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-24 11:27:05 +02:00
George Moussalem
08ff2807cf qualcommax: ipq50xx: backport upstreamed patches for IPQ5018 PCIe support
Use upstreamed patches for IPQ5018 PCIe support, including patches for
phy and controller drivers and dts nodes.

Signed-off-by: George Moussalem <george.moussalem@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/18884
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-24 11:27:05 +02:00
Robert Marko
8dbbca029d qualcommax: 6.6: remove completely
Remove all 6.6 only patches, config etc.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-23 14:15:56 +02:00
Robert Marko
4803d9a057 qualcommax: import pending fix for multiple conf
Importing upstream multiple conf patches broke UNIPHY2 TX clock parenting
and thus no traffic could pass via it.

Import pending fix by Christian that fixes this[1].

[1] https://patchwork.kernel.org/project/linux-arm-msm/patch/20250522202600.4028-1-ansuelsmth@gmail.com/

Fixes: cc50cac8a0 ("qualcommax: use upstreamed multiple conf clock patches")
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-23 14:13:33 +02:00
Markus Stockhausen
a526f80af8 realtek: fix MAC_FORCE_MODE_CTRL register for RTL931x
Ports will not work as expected on the RTL931x devices. This comes
from a typo in the address. Fixed according to the documentation:
https://svanheule.net/realtek/mango/register/mac_force_mode_ctrl

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Signed-off-by: Sebastian Gottschall <s.gottschall@dd-wrt.com>
Link: https://github.com/openwrt/openwrt/pull/18864
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-23 13:14:28 +02:00
Zoltan HERPAI
60b5cfdf5a sifiveu: add 6.12 kernel as testing
Allow selecting 6.12 as testing kernel on sifiveu.

Runtime-tested:
 - HiFive Unleashed (FU540)
 - HiFive Unmatched (FU740)

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2025-05-23 12:28:50 +02:00
Zoltan HERPAI
00ca340c40 sifiveu: 6.12: drop upstreamed patches and refresh remaining ones
Drop upstreamed patches from 6.12 and refresh remaining ones.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2025-05-23 12:28:50 +02:00
Zoltan HERPAI
07e701357d sifiveu: refresh 6.12 kernel config
Refresh kernel config for 6.12.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2025-05-23 12:28:42 +02:00
Zoltan HERPAI
41860ade91 kernel/sifiveu: Restore kernel files for v6.6
This is an automatically generated commit which aids following Kernel patch
history, as git will see the move and copy as a rename thus defeating the
purpose.

For the original discussion see:
https://lists.openwrt.org/pipermail/openwrt-devel/2023-October/041673.html

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2025-05-23 12:28:19 +02:00
Zoltan HERPAI
875f3c9275 kernel/sifiveu: Create kernel files for v6.12 (from v6.6)
This is an automatically generated commit.

When doing `git bisect`, consider `git bisect --skip`.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2025-05-23 12:28:19 +02:00
Álvaro Fernández Rojas
9b6cb81b24 bcm27xx: drop README patches
This patches are useless for us and can be removed.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-05-23 10:36:21 +02:00
Mieczyslaw Nalewaj
499a59c234 kernel: bump 6.12 to 6.12.30
Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.12.30

All patches automatically rebased.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/18877
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-05-23 00:01:41 +02:00
Markus Stockhausen
461fc06f9d realtek: fix mdio parent/child locking issues
Since the early beginning of the Realtek DSA driver there is an uncovered
locking issue between the standard (parent) mdio bus and the DSA (child)
mdio bus. This comes from the fact that the DSA bus simply links to the
parent read and write functions and calls them directly. This leads to
the following lock issue.

- Child bus calls phy_read/write functions and uses its internal lock
- Parent bus calls phy_read/write functions and uses its internal lock

It becomes clear that critical section can be accessed twice without
knowing that a operation from the other bus is currently active. This
can lead to critical malfunctions because the mdio driver needs a lot of
internal magic to get page selection done right. Effects are:

- The original page is lost after a phy_write/read_paged() call
- dmesg like "Realtek RTL8218B (external) rtl838x slave mii-0:00:
  Expected external RTL8218B, found PHY-ID 6b23"

Other DSA drivers simply use the read/write functions from the parent bus
and thus avoid locking issues. Do it the same way.

Fixes: 2b88563ee5 ("realtek: update the tree to the latest refactored version")
Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/18824
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-22 18:58:58 +02:00
Shiji Yang
e247b7ab66 ramips: fix wrg-header image recipe
Before generating the factory image, check if the input file
exists. Fix the build error when sysupgrade image is too big:

[mkwrgimg] *** error: stat failed on /builder/shared-workdir/build/build_dir/target-mipsel_24kc_musl/linux-ramips_rt288x/tmp/openwrt-ramips-rt288x-airlink101_ar670w-squashfs-factory.bin, No such file or directory

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/18836
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-22 18:49:31 +02:00
Zoltan HERPAI
b3c76f1821 d1: add 6.12 kernel as testing
Allow selecting 6.12 as testing kernel on d1.

Runtime-tested:
 - Nezha D1

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2025-05-22 17:22:59 +02:00
Zoltan HERPAI
e9b5737dd3 d1: 6.12: refresh kernel config
Refresh kernel config.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2025-05-22 17:22:59 +02:00
Zoltan HERPAI
f8f9a45ccd d1: 6.12: remove upstreamed patches and refresh remaining ones
Remove patches that have been upstreamed or dropped, and refresh
the remaining ones as required.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2025-05-22 17:22:59 +02:00
Zoltan HERPAI
a68467f307 kernel/d1: Restore kernel files for v6.6
This is an automatically generated commit which aids following Kernel patch
history, as git will see the move and copy as a rename thus defeating the
purpose.

For the original discussion see:
https://lists.openwrt.org/pipermail/openwrt-devel/2023-October/041673.html

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2025-05-22 17:22:59 +02:00
Zoltan HERPAI
7c9b09d854 kernel/d1: Create kernel files for v6.12 (from v6.6)
This is an automatically generated commit.

When doing `git bisect`, consider `git bisect --skip`.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2025-05-22 17:22:59 +02:00
Álvaro Fernández Rojas
d8375034b8 generic: backport upstream v6.16 Realtek PHY patches
83d962316128 net: phy: realtek: add RTL8127-internal PHY
708686132ba0 net: phy: realtek: Add support for PHY LEDs on RTL8211E
be1cc96ddf82 net: phy: realtek: use __set_bit() in rtl8211f_led_hw_control_get()
8c4d0172657c net: phy: realtek: Group RTL82* macro definitions
12d40df259e3 net: phy: realtek: add RTL8211F register defines
7c6fa3ffd265 net: phy: realtek: Clean up RTL821x ExtPage access
f3b265358b91 net: phy: realtek: remove unsed RTL821x_PHYSR* macros
7840e4d6f48a net: phy: realtek: Add support for WOL magic packet on RTL8211F

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-05-22 14:18:20 +02:00
Álvaro Fernández Rojas
91ce7f606a generic: backport upstream v6.16 r8169 patches
f24f7b2f3af9 r8169: add support for RTL8127A
4f51e7d370a0 r8169: merge chip versions 52 and 53 (RTL8117)
f372ef6ed5a6 r8169: merge chip versions 64 and 65 (RTL8125D)
4dec0702b862 r8169: merge chip versions 70 and 71 (RTL8126A)
b7ed5d5a78fc r8169: use pci_prepare_to_sleep in rtl_shutdown
fe733618b27a r8169: add RTL_GIGA_MAC_VER_LAST to facilitate adding support for new chip versions
2b065c098c37 r8169: refactor chip version detection
0c49baf099ba r8169: add helper rtl8125_phy_param
8c40d99e5f43 r8169: add helper rtl_csi_mod for accessing extended config space

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-05-22 14:18:20 +02:00
Rosen Penev
15078ecb68 ath79: remove platform_device_id from drivers
This was needed while ar71xx was in tree. This is no longer the case.
Not only that, these have already been converted to OF.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18860
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-22 11:17:21 +02:00
Zoltan HERPAI
769e9efd67 mxs: add 6.12 kernel as testing
Allow selecting 6.12 as testing kernel on mxs.

Runtime-tested:
 - Olinuxino Micro

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2025-05-22 11:03:05 +02:00
Zoltan HERPAI
0aa9c795b5 mxs: refresh config for 6.12
Refresh kernel config for 6.12.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2025-05-22 11:03:05 +02:00
Zoltan HERPAI
cf19095322 kernel/mxs: Restore kernel files for v6.6
This is an automatically generated commit which aids following Kernel patch
history, as git will see the move and copy as a rename thus defeating the
purpose.

For the original discussion see:
https://lists.openwrt.org/pipermail/openwrt-devel/2023-October/041673.html

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2025-05-22 11:03:05 +02:00
Zoltan HERPAI
8d9435f7cc kernel/mxs: Create kernel files for v6.12 (from v6.6)
This is an automatically generated commit.

When doing `git bisect`, consider `git bisect --skip`.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2025-05-22 11:03:05 +02:00
Zoltan HERPAI
aaf89c2c2b generic: 6.12: add missing symbols
These were found while working on mxs and sunxi 6.12.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2025-05-22 11:03:04 +02:00
Markus Stockhausen
d8ca43ccf1 realtek: harmonize power functions for RTL8214FC
There are currently two power functions for the RTL8214FC in the driver

- rtl8380_rtl8214fc_on_off(): powers on/off both ports
- rtl8214fc_power_set(): powers on/off fibre or copper individually

While it seems obvious to merge these, one of them uses extended register
29 and the other register 30 to achieve the update. From looking at the
GPL source drops both methods exist with exactly the same operations. So
where to go from here? The descision was made based on:

- register 30 is only used during patching, 29 during normal operation
- Avoid raw page if possible to use function for RTL839x

So the attached patch was created. The result in the power down bits
was compared for the two old and the new implementation. Result is
always the same.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/18707
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-22 10:34:18 +02:00
Markus Stockhausen
cc360fa54d realtek: Identify RTL9311 properly
RTL9311 switches (like the Linksys LGS352C) will boot but have not set
the right family id in the soc_info structure. Fix that so drivers do
their work right when checking for that.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/18871
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-21 17:39:49 +02:00
Álvaro Fernández Rojas
edf9ed96a4 bcm27xx: refresh patches for v6.12.29
Commit 0912d3f595 ("kernel: bump 6.12 to 6.12.29") was merged right after
bcm27xx 6.12 support commits, causing conflicts.

Refresh patches and removed upstreamed patch in v6.12.29:
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-6.12.y&id=a5f162727b91e480656da1876247a91f651f76de

Fixes: 0912d3f595 ("kernel: bump 6.12 to 6.12.29")
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-05-21 17:20:07 +02:00
Álvaro Fernández Rojas
c1b36bd32a bcm27xx: drop 6.6 support
Drop configs, files and patches for Linux 6.6.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-05-21 14:10:49 +02:00
Álvaro Fernández Rojas
e3dc5a52ff bcm27xx: use kernel 6.12 by default
Switch to Linux kernel version 6.12.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-05-21 14:07:39 +02:00
Álvaro Fernández Rojas
cd79b6ede9 bcm27xx: switch to upstream SDHOST driver
The RPi upstream repo switched to the upstream SDHOST driver some time ago, so
it's time to do the same in our configs.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-05-21 13:59:16 +02:00
Markus Stockhausen
8dde1e4638 realtek: refactor net rx interrupt handler rtl83xx_net_irq()
Cleanup the code of the RTL83xx packet receive interrupt handler. Not
only for better readability but to avoid inconsistencies and stalls on
the RTL839x targets.

The current implementation seems to come from the GPL source code.
Calling the existing cleanup() function inside the interrupt context
without any locks conflicts with SMP & NAPI polling and makes things
worse instead of giving any benefit. Simply ignore RX buffer overruns
and let the device handle packet dropping itself.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/18855
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-21 13:54:06 +02:00
Mieczyslaw Nalewaj
0912d3f595 kernel: bump 6.12 to 6.12.29
Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.12.29

Removed upstreamed:
        generic/pending-6.12/730-net-ethernet-mtk_eth_soc-reset-all-TX-queues-on-DMA-.patch[1]

Added settings:
        x86: CONFIG_MITIGATION_ITS=y[2]

1. https://web.git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-6.12.y&id=aac9d5fa537b0c19f6d3af3c8a124028510bb647
2. https://web.git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-6.12.y&id=68d59e9ba38424389168eddf8791265818f67292

All other patches automatically rebased.

Build system: x86/64
Build-tested: x86/64
Run-tested: x86/64

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/18837
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-21 13:52:35 +02:00
Álvaro Fernández Rojas
fe59fa7518 bcm27xx: enable 6.12 kernel testing
bcm27xx target now supports 6.12 kernel as testing.

Tested-by: Zoltan HERPAI <wigyori@uid0.hu>
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-05-21 11:32:41 +02:00
Álvaro Fernández Rojas
3d6e57fa4e bcm27xx: update config for kernel 6.12
Update bcm27xx target config for kernel 6.12.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-05-21 11:32:41 +02:00
Álvaro Fernández Rojas
8f9e91ad03 bcm27xx: add 6.12 patches from RPi repo
These patches were generated from:
https://github.com/raspberrypi/linux/commits/rpi-6.12.y
With the following command:
git format-patch -N v6.12.27..HEAD
(HEAD -> 8d3206ee456a5ecdf9ddbfd8e5e231e4f0cd716e)

Exceptions:
- (def)configs patches
- github workflows patches
- applied & reverted patches
- readme patches
- wireless patches

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-05-21 11:32:18 +02:00
Álvaro Fernández Rojas
9d73abb111 bcm27xx: restore kernel config for v6.6
This is an automatically generated commit which aids following Kernel patch
history, as git will see the move and copy as a rename thus defeating the
purpose.

For the original discussion see:
https://lists.openwrt.org/pipermail/openwrt-devel/2023-October/041673.html

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-05-21 10:39:47 +02:00
Álvaro Fernández Rojas
ccf0735933 bcm27xx: create kernel config for v6.12 (from v6.6)
This is an automatically generated commit.

When doing `git bisect`, consider `git bisect --skip`.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-05-21 10:39:47 +02:00
Robert Marko
dfacae3049
mvebu: armada37xx: add pending PXA I2C recovery fix
Import pending PXA I2C recovery fixes so that if I2C recovery is enabled in
the DTS it does not completely break I2C as it currently does since kernel
6.6.

Signed-off-by: Robert Marko <robert.marko@sartura.hr>
2025-05-20 20:54:48 +02:00
Robert Marko
831994e258
mvebu: armada37xx: backport pinctrl fixes
Backport upstream pinctrl fixes, these are required for the follow-up I2C
PXA recovery fixes.

Signed-off-by: Robert Marko <robert.marko@sartura.hr>
2025-05-20 20:54:47 +02:00
INAGAKI Hiroshi
d95e8a59bb ramips: mt7621: fix broken hexdump expression in iodata.sh
Use the "1/1" as a iteration count of hexdump expression instead of the
broken "1", to fix the issue that the invalid bootnum will be obtained.

Currently, the hexdump command always outputs "0" when the decimal format
and the iteration count "1" are specified[0]. This is unexpected
behaviour, but the cause is unknown and use this fix as a workaround.

[0]: https://github.com/openwrt/openwrt/issues/18808

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18827
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-20 13:04:06 +02:00
Mieczyslaw Nalewaj
6a85ce75af x86: drop 6.6 support
Drop configs, files and patches for Linux 6.6.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/18848
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-20 11:52:08 +02:00
Mieczyslaw Nalewaj
c1d7d0e5a4 x86: use kernel 6.12 by default
Switch to Linux kernel version 6.12.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/18848
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-20 11:52:07 +02:00
Robert Marko
ba923ee5ae qualcommax: default to 6.12
Default qualcommax target to 6.12 kernel.

It makes no sense for us to double the effort required for backporting
upstreamed patches or for downstream modifications.

Link: https://github.com/openwrt/openwrt/pull/18840
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-20 11:40:43 +02:00
Mieczyslaw Nalewaj
a238170e57 treewide: strip trailing whitespace
Strip trailing whitespace in all code:
find . -type f | grep "\.c$" | xargs sed -i 's/[ \t]\+$//'
find . -type f | grep "\.h$" | xargs sed -i 's/[ \t]\+$//'
find . -type f | grep "\.dts$" | xargs sed -i 's/[ \t]\+$//'
find . -type f | grep "\.dtsi$" | xargs sed -i 's/[ \t]\+$//'

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/18626
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-20 00:47:37 +02:00
Shiji Yang
6b43a52171 mediatek: mt7622: add the missing phy interrupt-parent for WAX206
Based on other mt7622 dts, it is not difficult to infer that the
missing interrupt controller is "pio". Fix dtc warning:

mt7622.dtsi:282.3-26: Warning (interrupts_property): /ethernet@1b100000/mdio-bus/ethernet-phy@7:#interrupt-cells: size is (8), expected multiple of 12

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
2025-05-19 20:01:00 +08:00
Shiji Yang
6854b19202 mediatek: mt7622: various dtc warning fixes for D-Link EAGLE PRO AI
- Add missing #address-cells and #size-cells to the partition nodes.
- Add missing #address-cells and #size-cells to the switch ports nodes.

This patch fixes the following dtc warnings:

../dts/mt7622-dlink-eagle-pro-ai-r32-a1.dts:74.3-20: Warning (reg_format): /spi@1100d000/flash@0/partitions/partition@180000/nvmem-layout/macaddr@81:reg: property has invalid length (8 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7622-dlink-eagle-pro-ai-ax3200-a1.dtsi:289.6-36: Warning (reg_format): /spi@1100d000/flash@0/partitions/partition@2C0000/partition@0:reg: property has invalid length (8 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7622-dlink-eagle-pro-ai-ax3200-a1.dtsi:294.6-36: Warning (reg_format): /spi@1100d000/flash@0/partitions/partition@2C0000/partition@800000:reg: property has invalid length (8 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7622-dlink-eagle-pro-ai-ax3200-a1.dtsi:306.6-36: Warning (reg_format): /spi@1100d000/flash@0/partitions/partition@2FC0000/partition@0:reg: property has invalid length (8 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7622-dlink-eagle-pro-ai-ax3200-a1.dtsi:311.6-36: Warning (reg_format): /spi@1100d000/flash@0/partitions/partition@2FC0000/partition@800000:reg: property has invalid length (8 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7622-dlink-eagle-pro-ai-ax3200-a1.dtsi:90.6-16: Warning (reg_format): /ethernet@1b100000/mdio-bus/switch@1f/ports/port@4:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7622-dlink-eagle-pro-ai-ax3200-a1.dtsi:97.6-16: Warning (reg_format): /ethernet@1b100000/mdio-bus/switch@1f/ports/port@6:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7622-dlink-eagle-pro-ai-r32-a1.dts:50.4-14: Warning (reg_format): /ethernet@1b100000/mdio-bus/switch@1f/ports/port@0:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7622-dlink-eagle-pro-ai-r32-a1.dts:55.4-14: Warning (reg_format): /ethernet@1b100000/mdio-bus/switch@1f/ports/port@1:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7622-dlink-eagle-pro-ai-m32-a1.dts:45.4-14: Warning (reg_format): /ethernet@1b100000/mdio-bus/switch@1f/ports/port@2:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7622-dlink-eagle-pro-ai-m32-a1.dts:50.4-14: Warning (reg_format): /ethernet@1b100000/mdio-bus/switch@1f/ports/port@3:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7622-dlink-eagle-pro-ai-r32-a1.dts:60.4-14: Warning (reg_format): /ethernet@1b100000/mdio-bus/switch@1f/ports/port@2:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7622-dlink-eagle-pro-ai-r32-a1.dts:65.4-14: Warning (reg_format): /ethernet@1b100000/mdio-bus/switch@1f/ports/port@3:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
2025-05-19 20:01:00 +08:00
Shiji Yang
5bead4a0b2 mediatek: mt7622: fix mmc dtc warnings
Add missing #address-cells and #size-cells to fix the
following dtc warnings:

mt7622-bananapi-bpi-r64.dts:243.3-13: Warning (reg_format): /mmc@11230000/card@0:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
mt7622-bananapi-bpi-r64.dts:278.3-13: Warning (reg_format): /mmc@11240000/card@0:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
2025-05-19 20:01:00 +08:00
Shiji Yang
7cc089950d mediatek: mt7623: fix mmc dtc warnings
Add missing #address-cells and #size-cells to fix the
following dtc warnings:

mt7623n-bananapi-bpi-r2.dts:346.3-13: Warning (reg_format): /mmc@11230000/card@0:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
mt7623n-bananapi-bpi-r2.dts:373.3-13: Warning (reg_format): /mmc@11240000/card@0:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7623a-unielec-u7623-02.dts:23.3-13: Warning (reg_format): /mmc@11230000/card@0:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
2025-05-19 20:01:00 +08:00
Shiji Yang
d1482e5e2d mediatek: filogic: fix mxl phy node dtc warnings
Add missing #address-cells and #size-cells to fix the
following dtc warnings:

mt7981-rfb-mxl-2p5g-phy-eth1.dtso:26.5-15: Warning (reg_format): /fragment@1/__overlay__/ethernet-phy@5:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
mt7981-rfb-mxl-2p5g-phy-swp5.dtso:27.5-15: Warning (reg_format): /fragment@1/__overlay__/ethernet-phy@5:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
2025-05-19 20:01:00 +08:00
Shiji Yang
96adba2768 mediatek: filogic: fix SPI node reg size dtc warnings
Add missing #address-cells and #size-cells to fix the
following dtc warnings:

../dts/mt7981b-cmcc-rax3000m-nand.dtso:67.5-15: Warning (reg_format): /fragment@4/__overlay__/spi_nand@0:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
mt7988a-rfb-snfi-nand.dtso:20.5-15: Warning (reg_format): /fragment@0/__overlay__/flash@0:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
mt7988a-rfb-spim-nand.dtso:22.5-15: Warning (reg_format): /fragment@0/__overlay__/flash@0:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
mt7988a-rfb-spim-nor.dtso:31.5-15: Warning (reg_format): /fragment@0/__overlay__/flash@0:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
2025-05-19 20:01:00 +08:00
Shiji Yang
f2de919658 mediatek: filogic: fix bpi-r4 eeprom dtc warnings
Add missing #address-cells and #size-cells to fix the
following dtc warnings:

mt7988a-bananapi-bpi-r4-wifi-mt7996a.dtso:31.5-18: Warning (reg_format): /fragment@1/__overlay__/wifi_eeprom@51:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
mt7988a-bananapi-bpi-r4-wifi-mt7996a.dtso:50.5-18: Warning (reg_format): /fragment@1/__overlay__/wifi_eeprom@52:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
2025-05-19 20:01:00 +08:00
Shiji Yang
a851bbeec6 mediatek: filogic: fix PCIe node dtc warnings
Add missing #address-cells and #size-cells to fix the
following dtc warnings:

../dts/mt7986a-smartrg-bonanza-peak.dtsi:359.4-27: Warning (reg_format): /soc/pcie@11280000/pcie@0,0/mt7915@0,0:reg: property has invalid length (20 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7988a-smartrg-mt-stuart.dtsi:551.4-27: Warning (reg_format): /soc/pcie@11300000/pcie@0,0/mt7996@0,0:reg: property has invalid length (20 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7988a-arcadyan-mozart.dts:331.4-27: Warning (reg_format): /soc/pcie@11300000/pcie@0,0/mt7996@1,0:reg: property has invalid length (20 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7988d-asus-zenwifi-bt8.dtsi:291.4-27: Warning (reg_format): /soc/pcie@11300000/pcie@0,0/mt7996@0,0:reg: property has invalid length (20 bytes) (#address-cells == 2, #size-cells == 1)
mt7988a-bananapi-bpi-r4-wifi-mt7996a.dtso:72.5-28: Warning (reg_format): /fragment@2/__overlay__/pcie@0,0:reg: property has invalid length (20 bytes) (#address-cells == 2, #size-cells == 1)
mt7988a-bananapi-bpi-r4-wifi-mt7996a.dtso:76.6-29: Warning (reg_format): /fragment@2/__overlay__/pcie@0,0/wifi@0,0:reg: property has invalid length (20 bytes) (#address-cells == 2, #size-cells == 1)
mt7988a-bananapi-bpi-r4-wifi-mt7996a.dtso:88.5-28: Warning (reg_format): /fragment@3/__overlay__/pcie@0,0:reg: property has invalid length (20 bytes) (#address-cells == 2, #size-cells == 1)
mt7988a-bananapi-bpi-r4-wifi-mt7996a.dtso:92.6-29: Warning (reg_format): /fragment@3/__overlay__/pcie@0,0/wifi@0,0:reg: property has invalid length (20 bytes) (#address-cells == 2, #size-cells == 1)
mt7988a-rfb-spim-nand-factory.dtso:47.5-28: Warning (reg_format): /fragment@1/__overlay__/pcie@0,0:reg: property has invalid length (20 bytes) (#address-cells == 2, #size-cells == 1)
mt7988a-rfb-spim-nand-factory.dtso:51.6-29: Warning (reg_format): /fragment@1/__overlay__/pcie@0,0/wifi@0,0:reg: property has invalid length (20 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7986a-tplink-tl-xtr8488.dts:305.4-27: Warning (reg_format): /soc/pcie@11280000/pcie@0,0/wifi@0,0:reg: property has invalid length (20 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7986a-zyxel-ex5700-telenor.dts:268.4-27: Warning (reg_format): /soc/pcie@11280000/pcie@0,0/wifi@0,0:reg: property has invalid length (20 bytes) (#address-cells == 2, #size-cells == 1)
mt7988a-bananapi-bpi-r4-wifi-mt7996a.dtso:77.5-28: Warning (reg_format): /fragment@2/__overlay__/pcie@0,0:reg: property has invalid length (20 bytes) (#address-cells == 2, #size-cells == 1)
mt7988a-bananapi-bpi-r4-wifi-mt7996a.dtso:95.5-28: Warning (reg_format): /fragment@3/__overlay__/pcie@0,0:reg: property has invalid length (20 bytes) (#address-cells == 2, #size-cells == 1)
mt7988a-rfb-spim-nand-factory.dtso:49.5-28: Warning (reg_format): /fragment@1/__overlay__/pcie@0,0:reg: property has invalid length (20 bytes) (#address-cells == 2, #size-cells == 1)

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
2025-05-19 20:01:00 +08:00
Shiji Yang
a16b44ac43 mediatek: filogic: fix wm8960 dtc warnings
Add missing #address-cells, #size-cells and #sound-dai-cells to
fix the following dtc warnings:

mt7986a-bananapi-bpi-r3-respeaker-2mics.dtso:46.5-18: Warning (reg_format): /fragment@1/__overlay__/wm8960@1a:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
mt7986a-bananapi-bpi-r3-respeaker-2mics.dtso:29.11-31.7: Warning (sound_dai_property): /fragment@0/__overlay__/sound_wm8960/codec: Missing property '#sound-dai-cells' in node /fragment@1/__overlay__/wm8960@1a or bad phandle (referred from sound-dai[0])
mt7986a-rfb-spim-nand.dts:17.12-19.5: Warning (sound_dai_property): /sound_wm8960/platform: Missing property '#sound-dai-cells' in node /soc/audio-controller@11210000 or bad phandle (referred from sound-dai[0])
mt7986a-rfb-spim-nand.dts:21.9-23.5: Warning (sound_dai_property): /sound_wm8960/codec: Missing property '#sound-dai-cells' in node /soc/i2c@11008000/wm8960@1a or bad phandle (referred from sound-dai[0])

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
2025-05-19 20:01:00 +08:00
Shiji Yang
49d5fc505f mediatek: filogic: fix WiFi MAC address invalid length dtc warnings
Add missing #address-cells and #size-cells to fix the
following dtc warnings:

../dts/mt7988a-smartrg-mt-stuart.dtsi:558.5-15: Warning (reg_format): /soc/pcie@11300000/pcie@0,0/mt7996@0,0/band@0:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7988a-smartrg-mt-stuart.dtsi:565.5-15: Warning (reg_format): /soc/pcie@11300000/pcie@0,0/mt7996@0,0/band@1:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7988a-smartrg-mt-stuart.dtsi:572.5-15: Warning (reg_format): /soc/pcie@11300000/pcie@0,0/mt7996@0,0/band@2:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7988d-asus-zenwifi-bt8.dts:78.3-13: Warning (reg_format): /soc/pcie@11300000/pcie@0,0/mt7996@0,0/band@0:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7988d-asus-zenwifi-bt8.dts:85.3-13: Warning (reg_format): /soc/pcie@11300000/pcie@0,0/mt7996@0,0/band@1:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7988d-asus-zenwifi-bt8.dts:92.3-13: Warning (reg_format): /soc/pcie@11300000/pcie@0,0/mt7996@0,0/band@2:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7988d-asus-zenwifi-bt8-ubootmod.dts:82.3-13: Warning (reg_format): /soc/pcie@11300000/pcie@0,0/mt7996@0,0/band@0:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7988d-asus-zenwifi-bt8-ubootmod.dts:89.3-13: Warning (reg_format): /soc/pcie@11300000/pcie@0,0/mt7996@0,0/band@1:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7988d-asus-zenwifi-bt8-ubootmod.dts:96.3-13: Warning (reg_format): /soc/pcie@11300000/pcie@0,0/mt7996@0,0/band@2:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7981b-cmcc-a10.dtsi:250.3-13: Warning (reg_format): /soc/wifi@18000000/band@1:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7986a-dlink-aquila-pro-ai-m60-a1.dts:324.3-13: Warning (reg_format): /soc/wifi@18000000/band@0:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7986a-dlink-aquila-pro-ai-m60-a1.dts:330.3-13: Warning (reg_format): /soc/wifi@18000000/band@1:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7981b-gatonetworks-gdsp.dts:247.3-13: Warning (reg_format): /soc/wifi@18000000/band@0:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7981b-gatonetworks-gdsp.dts:253.3-13: Warning (reg_format): /soc/wifi@18000000/band@1:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7981b-huasifei-wh3000.dts:182.3-13: Warning (reg_format): /soc/wifi@18000000/band@1:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7986b-mercusys-mr90x-v1-ubi.dts:114.3-13: Warning (reg_format): /soc/wifi@18000000/band@0:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7986b-mercusys-mr90x-v1-ubi.dts:120.3-13: Warning (reg_format): /soc/wifi@18000000/band@1:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7981b-openembed-som7981.dts:287.3-13: Warning (reg_format): /soc/wifi@18000000/band@1:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7981b-openwrt-one.dts:446.3-13: Warning (reg_format): /soc/wifi@18000000/band@0:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7981b-openwrt-one.dts:452.3-13: Warning (reg_format): /soc/wifi@18000000/band@1:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7981b-routerich-ax3000-v1.dts:323.3-13: Warning (reg_format): /soc/wifi@18000000/band@0:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7981b-routerich-ax3000-v1.dts:329.3-13: Warning (reg_format): /soc/wifi@18000000/band@1:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
2025-05-19 20:01:00 +08:00
Shiji Yang
2d9697293b mediatek: filogic: fix "unknown,gca230718" dtc warnings
Add missing #address-cells and #size-cells to fix the
following dtc warnings:

../dts/mt7981b-dlink-aquila-pro-ai-m30-a1.dts:289.4-14: Warning (reg_format): /soc/i2c@11007000/gca230718@40/led@0:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7981b-dlink-aquila-pro-ai-m30-a1.dts:295.4-14: Warning (reg_format): /soc/i2c@11007000/gca230718@40/led@1:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7981b-dlink-aquila-pro-ai-m30-a1.dts:301.4-14: Warning (reg_format): /soc/i2c@11007000/gca230718@40/led@2:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7981b-dlink-aquila-pro-ai-m30-a1.dts:307.4-14: Warning (reg_format): /soc/i2c@11007000/gca230718@40/led@3:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7986a-dlink-aquila-pro-ai-m60-a1.dts:356.4-14: Warning (reg_format): /soc/i2c@11008000/gca230718@40/led@0:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7986a-dlink-aquila-pro-ai-m60-a1.dts:362.4-14: Warning (reg_format): /soc/i2c@11008000/gca230718@40/led@1:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7986a-dlink-aquila-pro-ai-m60-a1.dts:368.4-14: Warning (reg_format): /soc/i2c@11008000/gca230718@40/led@2:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7986a-dlink-aquila-pro-ai-m60-a1.dts:374.4-14: Warning (reg_format): /soc/i2c@11008000/gca230718@40/led@3:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
2025-05-19 20:01:00 +08:00
Shiji Yang
a7df41412b mediatek: filogic: fix memory node invalid length dtc warnings
Correct the dts memory reg property to fix the following dtc
warnings:

../dts/mt7986a-zyxel-ex5601-t0-stock.dts:19.3-33: Warning (reg_format): /memory@40000000:reg: property has invalid length (8 bytes) (#address-cells == 2, #size-cells == 2)
../dts/mt7986a-zyxel-ex5601-t0-ubootmod.dts:19.3-33: Warning (reg_format): /memory@40000000:reg: property has invalid length (8 bytes) (#address-cells == 2, #size-cells == 2)

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
2025-05-19 20:01:00 +08:00
Shiji Yang
ac5561906e mediatek: filogic: fix unit name leading 0s dtc warnings
Trim unnecessary 0s to fix the following dtc warnings:

../dts/mt7981b-cudy-re3000-v1.dts:135.20-139.6: Warning (unit_address_format): /soc/spi@11009000/flash@0/partitions/partition@00000: unit name should not have leading 0s
../dts/mt7981b-cudy-wr3000-v1.dts:153.20-157.6: Warning (unit_address_format): /soc/spi@11009000/flash@0/partitions/partition@00000: unit name should not have leading 0s
../dts/mt7981b-gatonetworks-gdsp.dts:276.20-280.6: Warning (unit_address_format): /soc/spi@11009000/flash@0/partitions/partition@00000: unit name should not have leading 0s
mt7988a-rfb-spim-nor.dtso:36.21-39.7: Warning (unit_address_format): /fragment@0/__overlay__/flash@0/partition@00000: unit name should not have leading 0s
../dts/mt7981a-ubnt-unifi-6-plus.dts:113.28-131.6: Warning (unit_address_format): /soc/spi@11009000/flash@0/partitions/partition@00000: unit name should not have leading 0s
../dts/mt7981b-wavlink-wl-wn586x3.dts:147.20-151.6: Warning (unit_address_format): /soc/spi@11009000/flash@0/partitions/partition@00000: unit name should not have leading 0s
../dts/mt7981b-wavlink-wl-wn573hx3.dts:102.20-106.6: Warning (unit_address_format): /soc/spi@11009000/flash@0/partitions/partition@00000: unit name should not have leading 0s
../dts/mt7981b-yuncore-ax835.dts:161.20-165.6: Warning (unit_address_format): /soc/spi@11009000/flash@0/partitions/partition@00000: unit name should not have leading 0s
../dts/mt7986a-zyxel-ex5601-t0-stock.dts:57.39-61.6: Warning (unit_address_format): /soc/spi@1100a000/spi_nand@0/partitions/partition@180000/nvmem-layout/macaddr@0004: unit name should not have leading 0s
../dts/mt7986a-zyxel-ex5601-t0-stock.dts:63.39-67.6: Warning (unit_address_format): /soc/spi@1100a000/spi_nand@0/partitions/partition@180000/nvmem-layout/macaddr@0024: unit name should not have leading 0s
../dts/mt7986a-zyxel-ex5601-t0-stock.dts:69.39-73.6: Warning (unit_address_format): /soc/spi@1100a000/spi_nand@0/partitions/partition@180000/nvmem-layout/macaddr@002a: unit name should not have leading 0s
../dts/mt7986a-zyxel-ex5601-t0-ubootmod.dts:56.39-60.6: Warning (unit_address_format): /soc/spi@1100a000/spi_nand@0/partitions/partition@180000/nvmem-layout/macaddr@0004: unit name should not have leading 0s
../dts/mt7986a-zyxel-ex5601-t0-ubootmod.dts:62.39-66.6: Warning (unit_address_format): /soc/spi@1100a000/spi_nand@0/partitions/partition@180000/nvmem-layout/macaddr@0024: unit name should not have leading 0s
../dts/mt7986a-zyxel-ex5601-t0-ubootmod.dts:68.39-72.6: Warning (unit_address_format): /soc/spi@1100a000/spi_nand@0/partitions/partition@180000/nvmem-layout/macaddr@002a: unit name should not have leading 0s

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
2025-05-19 20:01:00 +08:00
Shiji Yang
bc0be15e8d mediatek: filogic: fix flash node name dtc warnings
Correct dts node name based on reg property to fix the
following dtc warnings:

mt7981-rfb-spim-nand.dtso:20.25-67.6: Warning (spi_bus_reg): /fragment@1/__overlay__/spi_nand@0: SPI bus unit address format error, expected "1"
mt7986a-rfb-spim-nand.dts:41.23-76.4: Warning (spi_bus_reg): /soc/spi@1100a000/spi_nand@0: SPI bus unit address format error, expected "1"
../dts/mt7981a-comfast-cf-e393ax.dts:135.23-206.4: Warning (spi_bus_reg): /soc/spi@1100a000/spi_nand@0: SPI bus unit address format error, expected "1"
../dts/mt7981b-openwrt-one.dts:305.10-342.4: Warning (spi_bus_reg): /soc/spi@1100a000/flash@0: SPI bus unit address format error, expected "1"
../dts/mt7986a-zyxel-ex5601-t0-common.dtsi:166.30-180.4: Warning (spi_bus_reg): /soc/spi@1100a000/spi_nand@0: SPI bus unit address format error, expected "1"

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
2025-05-19 20:01:00 +08:00
Shiji Yang
1adb0a8928 mediatek: filogic: fix mmc dtc warnings
Add missing #address-cells and #size-cells to fix the
following dtc warnings:

../dts/mt7986a-smartrg-bonanza-peak.dtsi:310.3-13: Warning (reg_format): /soc/mmc@11230000/card@0:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
mt7986a-bananapi-bpi-r3-emmc.dtso:29.5-15: Warning (reg_format): /fragment@0/__overlay__/card@0:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
mt7986a-bananapi-bpi-r3-sd.dtso:23.5-15: Warning (reg_format): /fragment@0/__overlay__/card@0:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7986a-bananapi-bpi-r3-mini.dts:274.3-13: Warning (reg_format): /soc/mmc@11230000/card@0:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7981b-cmcc-rax3000m-emmc.dtso:48.5-15: Warning (reg_format): /fragment@3/__overlay__/card@0:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7981b-glinet-gl-mt2500.dts:158.3-13: Warning (reg_format): /soc/mmc@11230000/card@0:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7986a-glinet-gl-mt6000.dts:319.3-13: Warning (reg_format): /soc/mmc@11230000/card@0:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7981a-glinet-gl-x3000-xe3000-common.dtsi:142.3-13: Warning (reg_format): /soc/mmc@11230000/card@0:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7981b-huasifei-wh3000.dts:118.3-13: Warning (reg_format): /soc/mmc@11230000/card@0:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7986a-jdcloud-re-cp-03.dts:171.3-13: Warning (reg_format): /soc/mmc@11230000/card@0:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7981b-nradio-c8-668gl.dts:110.3-13: Warning (reg_format): /soc/mmc@11230000/card@0:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7981b-unielec-u7981-01-emmc.dts:26.3-13: Warning (reg_format): /soc/mmc@11230000/card@0:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
2025-05-19 20:00:59 +08:00
Shiji Yang
13a02c9832 mediatek: filogic: fix "srg,sysled" dtc warnings
Add missing #address-cells and #size-cells to fix the
following dtc warnings:

../dts/mt7986a-smartrg-bonanza-peak.dtsi:562.4-14: Warning (reg_format): /soc/i2c@11008000/system-leds/led@1:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7986a-smartrg-bonanza-peak.dtsi:568.4-14: Warning (reg_format): /soc/i2c@11008000/system-leds/led@2:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7986a-smartrg-bonanza-peak.dtsi:574.4-14: Warning (reg_format): /soc/i2c@11008000/system-leds/led@3:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7986a-smartrg-bonanza-peak.dtsi:580.4-14: Warning (reg_format): /soc/i2c@11008000/system-leds/led@4:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7988a-smartrg-mt-stuart.dtsi:394.4-14: Warning (reg_format): /soc/i2c@11004000/system-leds/system_red:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7988a-smartrg-mt-stuart.dtsi:399.4-14: Warning (reg_format): /soc/i2c@11004000/system-leds/system_green:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7988a-smartrg-mt-stuart.dtsi:404.4-14: Warning (reg_format): /soc/i2c@11004000/system-leds/system_blue:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7988a-smartrg-mt-stuart.dtsi:409.4-14: Warning (reg_format): /soc/i2c@11004000/system-leds/system_white:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/mt7986a-smartrg-bonanza-peak.dtsi:559.14-588.4: Warning (i2c_bus_reg): /soc/i2c@11008000/system-leds: I2C bus unit address format error, expected "30"
../dts/mt7988a-smartrg-mt-stuart.dtsi:388.14-413.4: Warning (i2c_bus_reg): /soc/i2c@11004000/system-leds: I2C bus unit address format error, expected "30"

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
2025-05-19 20:00:59 +08:00
Shiji Yang
7193539c98 treewide: dts: trim "#size-cells" from "gpio-export" node
The "gpio-export" driver doesn't require a "reg" property in the
device tree, hence we don't need to use the "#size-cells" property
to describe the size of "reg".

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/18290
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-18 19:35:00 +02:00
Alex Thompson
75c69935fd qualcommax: TP-Link EAP620HD fix factory data
The re-factoring of the preinit factory partition mount script used the
incorrect mtd name for the EAP620HD and (I assume incorrect) for EAP660HD.
This corrects it to "factory_data".

Signed-off-by: Alex Thompson <thompson.alex.c@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18834
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-18 16:18:42 +02:00
Mieczyslaw Nalewaj
dcc21427f1 generic: refresh patches
Made: 'make target/linux/refresh'

Fixes: fbd31da840 ("generic: make xhci-pci-renesas a proper modular driver")

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/18832
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-18 10:02:09 +02:00
Shiji Yang
a6822d5980 mvebu: replace kmod-usb3 with kmod-usb-xhci-pci-renesas
The dependency of kmod-usb3 and kmod-usb-xhci-pci-renesas have
been reversed. Now we need to select kmod-usb-xhci-pci-renesas
instead of kmod-usb3.

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/18768
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-05-17 20:14:27 +02:00
Shiji Yang
b2d356909d lantiq: replace kmod-usb3 with kmod-usb-xhci-pci-renesas
The dependency of kmod-usb3 and kmod-usb-xhci-pci-renesas have
been reversed. Now we need to select kmod-usb-xhci-pci-renesas
instead of kmod-usb3.

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/18768
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-05-17 20:14:27 +02:00
Shiji Yang
c1780adbf2 apm821xx: replace kmod-usb3 with kmod-usb-xhci-pci-renesas
The dependency of kmod-usb3 and kmod-usb-xhci-pci-renesas have
been reversed. Now we need to select kmod-usb-xhci-pci-renesas
instead of kmod-usb3.

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/18768
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-05-17 20:14:27 +02:00
Shiji Yang
fbd31da840 generic: make xhci-pci-renesas a proper modular driver
In the new 6.12 kernel, the dependencies of kmod-usb3 and
kmod-usb-xhci-pci-renesas have been reversed. To address the
issue of package recursive dependencies, we need to backport
this patchset to make the dependencies consistent between the
6.6 and 6.12 kernels.

Links:
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-6.10.y&id=d6b2b694dd536d16566424c395d5642783ed6f34
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-6.11.y&id=9fdce69f674e49be669e97919d24b1ab5d2c9684
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-6.12.y&id=25f51b76f90f10f9bf2fbc05fc51cf685da7ccad
Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/18768
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-05-17 20:14:27 +02:00
Shiji Yang
803070e07f generic: fix disable common USB quirks patch
Remove modifications for codes guarded by CONFIG_USB_PCI_AMD.
This kernel symbol is only visible on desktop level platform,
e.g. x86. They are not sensitive to firmware image size. This
patch also fixes function redefinition build errors:

drivers/usb/host/pci-quirks.c:621:6: error: redefinition of 'usb_asmedia_modifyflowcontrol'
  621 | void usb_asmedia_modifyflowcontrol(struct pci_dev *pdev)
      |      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from drivers/usb/host/pci-quirks.c:22:
drivers/usb/host/pci-quirks.h:49:20: note: previous definition of 'usb_asmedia_modifyflowcontrol' with type 'void(struct pci_dev *)'
   49 | static inline void usb_asmedia_modifyflowcontrol(struct pci_dev *pdev) {}
      |                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Fixes: be6753dda0 ("generic: 6.12: manually rebuild pending patches")
Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/18637
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-05-17 19:46:52 +02:00
Robert Marko
2809d9502f x86: generic: add missing CONFIG_DRM_ACCEL_QAIC
CONFIG_DRM_ACCEL_QAIC was not added to x86 generic config, but it needs to
be added as CONFIG_DRM_ACCEL_QAIC does not depend on x86_64 like others.

Fixes: 51b78aa ("kernel: package intel_vpu driver")
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-17 11:39:06 +02:00
Chukun Pan
6b99c5d21e rockchip: backport PCIe MSI fixes for RK356x SoC
Backport GIC ITS support for RK356x SoC, which fixes long-standing
MSI/MSI-X bug. (Previously MSI-X could only work on one PCIe node)

e.g. [    7.250882] r8125 0002:01:00.0: no MSI/MSI-X. Back to INTx.

Tested on Radxa E25 with kmod-r8125-rss driver.

Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
Link: https://github.com/openwrt/openwrt/pull/18800
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-17 11:30:20 +02:00
Chukun Pan
cca80986b5 rockchip: replace RK356x RNG patch with upstream
Replace RK356x RNG patch with upstream version to
add the tag flag them as upstreamed.

Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
Link: https://github.com/openwrt/openwrt/pull/18800
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-17 11:30:20 +02:00
Chukun Pan
e66437a1ea rockchip: armv8: Refresh kernel config
Run 'make kernel_oldconfig' to get an up-to-date config.

Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
Link: https://github.com/openwrt/openwrt/pull/18800
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-17 11:30:20 +02:00
Robert Marko
fb90296c32 qualcommax: ipq50xx: spi-qpic-snand: default to 4-bit ECC
There are NAND IC-s that define 1-bit ECC as the minimal strength,
however that is unsupported by QPIC-SNAND as it only supports 4 or 8 bit
ECC.

Since most of these chips also support 4-bit ECC just fine, instead of
erroring out if 1-bit ECC is requested lets instead default to 4-bit ECC.

Fixes: 01b72ce61e ("qualcommax: ipq50xx: remove ECC user config from board files")
Signed-off-by: George Moussalem <george.moussalem@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/18795
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-16 17:57:40 +02:00
Robert Marko
91e9a1d221 qualcommax: add 6.12 as testing kernel
Allow testing 6.12 as the testing kernel.

Link: https://github.com/openwrt/openwrt/pull/18795
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-16 17:57:40 +02:00
Robert Marko
fc4eaa34f8 qualcommax: 6.12: MPD: add missing <linux/of_platform.h>
It seems that kernel cleaned up its kernels so we need to include
<linux/of_platform.h> for of_platform_device_create().

Link: https://github.com/openwrt/openwrt/pull/18795
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-16 17:57:40 +02:00
Robert Marko
2018a61211 qualcommax: 6.12: pwm: use devm_clk_get_enabled()
Using devm_clk_get_enabled() allows simplification of the driver and
dropping of the .remove OP as well.

Link: https://github.com/openwrt/openwrt/pull/18795
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-16 17:57:40 +02:00
Robert Marko
93697be03c qualcommax: 6.12: pwm: fixup for 6.12
6.12 PWM core introduced a bunch of incompatible changes, namely removal
of manual module owner assignment, complete PWM struct allocation and usage
refactor, etc.

So, update the driver to follow other drivers in 6.12 so it compiles.

Link: https://github.com/openwrt/openwrt/pull/18795
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-16 17:57:40 +02:00
Robert Marko
427522d1de qualcommax: 6.12: cpr: update for 6.12
Remove op is now of a void type and strlcpy was removed.

Link: https://github.com/openwrt/openwrt/pull/18795
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-16 17:57:40 +02:00
Robert Marko
b152f7ba22 qualcommax: 6.12: apm: change remove to void
Remove op is now of a void type, update APM.

Link: https://github.com/openwrt/openwrt/pull/18795
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-16 17:57:40 +02:00
Robert Marko
d2774a55c3 qualcommax: 6.12: refresh config
Refresh kernel config by running kernel_menuconfig.

Manually enable CONFIG_HW_RANDOM and CONFIG_CRYPTO_DEV_QCOM_RNG as these
got somehow disabled by the refresh.

Link: https://github.com/openwrt/openwrt/pull/18795
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-16 17:57:40 +02:00
Robert Marko
a2de324e14 qualcommax: 6.12: refresh patches
Refresh 6.12 patches, those that failed automatic refresh were refreshed
manually.

DT bindings patches that failed were dropped as we dont use them in practice.

Link: https://github.com/openwrt/openwrt/pull/18795
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-16 17:57:40 +02:00
Robert Marko
dbf9c83e7a qualcommax: 6.12: drop upstreamed patches
Drop patches that are already present in kernel 6.12.

Link: https://github.com/openwrt/openwrt/pull/18795
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-16 17:57:40 +02:00
Robert Marko
6d1f4b2077 kernel/qualcommax: Restore kernel files for v6.6
This is an automatically generated commit which aids following Kernel patch
history, as git will see the move and copy as a rename thus defeating the
purpose.

For the original discussion see:
https://lists.openwrt.org/pipermail/openwrt-devel/2023-October/041673.html

Link: https://github.com/openwrt/openwrt/pull/18795
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-16 17:57:40 +02:00
Robert Marko
e40daa5b99 kernel/qualcommax: Create kernel files for v6.12 (from v6.6)
This is an automatically generated commit.

When doing `git bisect`, consider `git bisect --skip`.

Link: https://github.com/openwrt/openwrt/pull/18795
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-16 17:57:40 +02:00
Robert Marko
0d4eda6237 generic: 6.12: add CONFIG_IDPF
CONFIG_IDPF is Intel(R) Infrastructure Data Path Function Support and it
should be disabled by default, if needed it can be packaged as a kmod.

Disable to prevent spreading out through target configs.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-15 19:37:48 +02:00
Robert Marko
1e46a391df generic: 6.12: add CONFIG_HISILICON_ERRATUM_162100801
Noticed that CONFIG_HISILICON_ERRATUM_162100801 was being added to
qualcommax 6.12 config.

Since we dont support any Hisilicon chips, disable it in generic config
before it starts spreading in target configs.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-15 19:29:37 +02:00
Robert Marko
f160a017ac x86: add missing DRM_ACCEL symbols
DRM_ACCEL symbols were not added to geode and legacy thus making the kernel
prompt for them on compilation.

Fixes: 51b78aaaae ("kernel: package intel_vpu driver")
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-15 19:22:23 +02:00
Linus Lüssing
64ad16993d realtek: fix flooding of unsnoopable multicast addresses
RFC4541, section 2.1.2 says:

  Packets with a destination IP (DIP) address in the 224.0.0.X range
  which are not IGMP must be forwarded on all ports.

And section 3 says:

  In IPv6, the data forwarding rules are more straight forward because
  MLD is mandated for addresses with scope 2 (link-scope) or greater.
  The only exception is the address FF02::1 which is the all hosts
  link-scope address for which MLD messages are never sent.  Packets
  with the all hosts link-scope address should be forwarded on all
  ports.

However, currently when a listener on FF12::1 or FF12:🔢0:1 for
example joins then not only packets to these addresses but also for
FF02::1 won't be flooded to all ports anymore, too. Which violates
RFC4541.

This happens because A): They all map to the same ethernet multicast
address, that is 33:33:00:00:00:01. And B) the VLAN profile L2
unknown MC flood setting will only apply flooding of 33:33:00:00:00:01
if there is no specific listener registered for it.

So to fix this, avoid registering an MDB entry in the switch for
33:33:00:00:00:01 at all.

The downside of this is that FF12::1, FF12:🔢0:1 etc.
will always be flooded, too. However fixing the handling of 224.0.0.X
and FF02::1 and adhering to RFC4541 must have priority to avoid
undesired packetloss, to avoid breaking IPv4/IPv6.

Tested-on: ZyXEL GS1900-24HP v1

Fixes: cde31976e3 ("realtek: Add support for Layer 2 Multicast")
Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
Link: https://github.com/openwrt/openwrt/pull/18769
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-15 19:01:22 +02:00
Paweł Owoc
86a6c550b9 qualcommax: dts: fix missing or empty reg property warning
Remove property 'status = "disabled"' for partitions in Zyxel NBG7815.
This option is mainly used for NAND memory and here we have SPI memory.

Signed-off-by: Paweł Owoc <frut3k7@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18787
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-15 18:29:00 +02:00
Paweł Owoc
af021c1285 qualcommax: dts: fix property has invalid length warning
Fix "property has invalid length" warning for two devices:
- TP-Link EAP620 HD v1
- Zyxel NBG7815

Signed-off-by: Paweł Owoc <frut3k7@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18787
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-15 18:29:00 +02:00
Felix Fietkau
610dd871aa kernel: fix warning on retrying page pool release
Fixes the following warning:
[  180.314652] NOHZ tick-stop error: local softirq work is pending, handler #08!!!

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2025-05-15 15:41:59 +02:00
Robert Marko
ca51f7aaf5 qualcommax: ipq60xx: fix EAP625-Outdoor HD BDF package name
Currently, non existing ipq-wifi package name is selected for
EAP625-Outdoor HD, so correct the name.

Fixes: 51c1ea08d0 ("qualcommax: ipq60xx: add TP-Link EAP625-Outdoor HD v1 support")
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-15 14:57:14 +02:00
Joe Zheng
51b78aaaae kernel: package intel_vpu driver
Add package for linux intel_vpu driver for Intel NPU/VPU

Signed-off-by: Joe Zheng <joe.zheng@intel.com>
Link: https://github.com/openwrt/openwrt/pull/17904
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-15 10:09:40 +02:00
Zoltan HERPAI
95341cc9c5 generic: 6.12: add missing symbols
Add missing symbols found during moving sifiveu and d1 to 6.12.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2025-05-14 23:27:03 +02:00
Alexandru Gagniuc
51c1ea08d0 qualcommax: ipq60xx: add TP-Link EAP625-Outdoor HD v1 support
TP-Link EAP625-Outdoor HD is a 802.11ax AP claiming AX1800 support.
It is wall or pole mountable, and rated for outdoor use. It can only
be powered via PoE.

Hardware-wise, it is very similar to the older EAP610-Outdoor model.
Software-wise, I couldn't find a difference other than the board
data files, and device name. For this reason, the majority of the
devicetree from the EAP610-Outdoor is reused.

This device currently comes in a "v1", and "v1.6" version. The
"support-list" of the vendor firmware does not have a distinction
between these versions. This commit was tested on a 'V1.6" device.

Specifications:
---------------
* CPU: Qualcomm IPQ6018 Quad core Cortex-A53
* RAM: 512 MB
* Storage: 128MB NAND
* Ethernet:
  * Gigabit RJ45 port with PoE input
* WLAN:
  * 2.4GHz/5GHz
* LEDs:
  * Multi-color System LED (Green/Amber)
* Buttons:
  * 1x Reset
* UART: 4-pin unpopulated header
  * 1.8 V level, Pinout 1 - TX, 2 - RX, 3 - GND, 4 - 1.8V

Installation:
=============

Web UI method
-------------

Set up the device using the vendor's web UI. After that go to
Management->SSH and enable the "SSH Login" checkbox. Select "Save".
The connect to the machine via SSH:

ssh -o hostkeyalgorithms=ssh-rsa <ip_of_device>

Disable signature verification:

cliclientd stopcs

Rename the "-web-ui-factory" image to something less than 63
characters, maintaining the ".bin" suffix.
 * Go to System -> Firmware Update.
 * Under "New Firmware File", click "Browse" and select the image
 * Select "Update" and confirm by clicking "OK".

If the update fails, the web UI should show an error message.
Otherwise, the device should reboot into OpenWRT.

NOTE: If ssh continues to complain that "no matching host key type
found. Their offer: ssh-rsa,ssh-dss" it likely means that yor distro
has completely disabled deprecated siphers in ssh. In that case, run
the ssh command from a docker container of an older distro.

TFTP method
-----------

To flash via tftp, first place the initramfs image on the TFTP server.

setenv serverip <ip of tftp server>
setenv ipaddr <ip in same subnet as tftp server>
tftpboot tplink_eap625-outdoor-hd-v1-initramfs-uImage.itb
bootm

This should boot OpenWRT. Once booted, flash the sysupgrade.bin image
using either luci or the commandline.

Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18584
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-14 19:38:25 +02:00
Alexandru Gagniuc
c75223338f qualcommax: ipq60xx: eap6xx-outdoor: add PHY reset pinctrl
It was suggested that the pinctrl property of the mdio node should
include the PHY reset GPIO. Add them in.

Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18584
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-14 19:38:25 +02:00
Alexandru Gagniuc
7be36c20f1 qualcommax: ipq60xx: split eap610-outdoor devicetree
I have an EAP625-Outdoor HD v1 that is very similar with the EAP610
Outdoor. It works with the EAP610 initramfs, without any obvious loss
of functionality. In order to prepare for supporting the EAP625, move
the common parts into a shared .dtsi.

Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18584
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-14 19:38:25 +02:00
David Bauer
eea4689654 ramips: pad EX400 kernel partition to retain web recovery
The web-recovery of the Genexis EX400 validates uploaded images to fit
in the rootf_0 partition.

With OpenWrt, only the kernel is stored in this partition, leaving the
partition very small. Currently, the first factory release image won't
be accepted by the recovery interface after the OpenWrt installation.

Pad the image of the ubifs to 10MB. This allows the 24.10 release image
to be uploaded, enabling device recovery.

Signed-off-by: David Bauer <mail@david-bauer.net>
2025-05-14 18:39:56 +02:00
David Bauer
d97c01a11f ramips: clean UBI tempdir before image creation
Clean the temporary directory the UBI image is generated from before
generation.

Currently it is removed after the image generation, which leads to files
possibly not being cleared after a build failure in this step.

Signed-off-by: David Bauer <mail@david-bauer.net>
2025-05-14 18:39:56 +02:00
Álvaro Fernández Rojas
61da745817 bmips: add missing NAND config symbol
bcm6328, bcm6362 and bcm6368 targets are missing a key config symbol which
prevents the NAND from working.

Fixes: f6c02b014d ("bmips: 6.1: refresh config and add missing symbols")
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-05-14 11:37:51 +02:00
Robert Marko
d02071c24f generic: config-filter: filter out CONFIG_PAHOLE_HAS_LANG_EXCLUDE
CONFIG_PAHOLE_HAS_LANG_EXCLUDE is set depending on the pahole version
present, so it must be filtered out.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-14 11:28:01 +02:00
Mieczyslaw Nalewaj
4d18c41a6c kernel: mtk_bmt: counteracting calloc-transposed-args compiler warning
For kernel 6.12 there is a warning causing an error:
drivers/mtd/nand/mtk_bmt_v2.c: In function 'mtk_bmt_get_mapping_mask':
drivers/mtd/nand/mtk_bmt_v2.c:307:31: error: 'kmalloc_array_noprof' sizes specified with 'sizeof' in the earlier argument and not in the later argument [-Werror=calloc-transposed-args]
  307 |         used = kcalloc(sizeof(unsigned long), BIT_WORD(bmtd.bmt_blk_idx) + 1, GFP_KERNEL);
      |                               ^~~~~~~~

Swapping the arguments solves the problem.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/18701
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-13 22:07:11 +02:00
INAGAKI Hiroshi
dcc440c7c9 ramips: mt7621: relocate kernel for ELECOM WRC-X1800GS
Relocate the kernel in the firmware images for WRC-X1800GS when booting,
to fix the LZMA error while extraction by U-Boot with the following
messages.

log (official initramfs image (ffde9a9fe9)):

```
=> bootm
   Using 'config-1' configuration
   Trying 'kernel-1' kernel subimage
     Description:  MIPS OpenWrt Linux-6.6.89
     Type:         Kernel Image
     Compression:  lzma compressed
     Data Start:   0x800100e4
     Data Size:    7365490 Bytes = 7 MiB
     Architecture: MIPS
     OS:           Linux
     Load Address: 0x80001000
     Entry Point:  0x80001000
     Hash algo:    crc32
     Hash value:   f27303e3
     Hash algo:    sha1
     Hash value:   7715e6d2d27eeef34ea88ad7ae0c6f73b6748ba4
   Verifying Hash Integrity ... crc32+ sha1+ OK
   Using 'config-1' configuration
   Trying 'fdt-1' fdt subimage
     Description:  MIPS OpenWrt elecom_wrc-x1800gs device tree blob
     Type:         Flat Device Tree
     Compression:  uncompressed
     Data Start:   0x8071659c
     Data Size:    13578 Bytes = 13.3 KiB
     Architecture: MIPS
     Hash algo:    crc32
     Hash value:   d37ef67f
     Hash algo:    sha1
     Hash value:   e66ac0a2e8024a276bf9b3712dffa2192d7a70dc
   Verifying Hash Integrity ... crc32+ sha1+ OK
   Booting using the fdt blob at 0x8071659c
   Uncompressing Kernel Image ... lzma compressed: uncompress error 1
Must RESET board to recover

===================================================================
                MT7621   stage1 code Dec 16 2019 17:45:55 (ASIC)
                CPU=500000000 HZ BUS=166666666 HZ
==================================================================
...

```

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18781
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-13 21:59:07 +02:00
Markus Stockhausen
70f10e2210 realtek: phy: remove unneeded usage of genphy_loopback()
Kernel does

  if (phydev->drv->set_loopback)
    ret = phydev->drv->set_loopback(phydev, enable, speed);
  else
    ret = genphy_loopback(phydev, enable, speed);

So no need to explicitly set genphy_loopback() in phy_driver. Drop
references to let kernel do its work.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/18782
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-13 21:53:28 +02:00
Shiji Yang
01d5026239 kernel: bump 6.6 to 6.6.90
Remove upstreamed patches:
  bcm27xx/patches-6.6/950-0481-xhci-Use-more-event-ring-segment-table-entries.patch [1]
  pending-6.6/691-net-ipv6-fix-UDPv6-GSO-segmentation-with-NAT.patch [2]

Manually rebased patches:
  generic/hack-6.6/781-usb-net-rndis-support-asr.patch [3]

[1] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.90&id=f377434945f528217e65fc5b18781caeba19ce72
[2] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.90&id=e0272844995aff8cbf2cc88b78c2b35ca51eda43
[3] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.90&id=222b6685efe0d8c1cdb078a67bbe806f56d18f94
Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/18775
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-05-13 21:43:34 +02:00
Robert Marko
9d15c1a020 qualcommax: ipq50xx: add PCI path migration script
PCI paths of IPQ50xx devices have changed now that linux,pci-domain is set
in the DTSI, so add a migration script for wireless config.

Link: https://github.com/openwrt/openwrt/pull/18789
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-13 19:58:22 +02:00
Robert Marko
cfbfdd9ca6 qualcommax: ipq50xx: update PCI path for caldata
Now that IPQ50xx PCIe nodes have linux,pci-domain property defined
it changed the PCI path, but its now predictable and fixed.

So, update the caldata script accordingly.

Link: https://github.com/openwrt/openwrt/pull/18789
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-13 19:58:22 +02:00
Robert Marko
1e20f7b6c6 qualcommax: fix PCIe card wifi node address
Unlike other buses, for PCIe child nodes we should not use "wifi@1,0" as
the bus adress since for PCI devices the actual device adress on the bus is
actually set via the "reg" property and the node name is unused completely.

Though, it will cause DTC to throw warnings, so after investigation and
similar issue upstream[1] simply set the nodes to "wifi@0,0" instead.

[1] https://lists.infradead.org/pipermail/linux-arm-kernel/2021-August/680846.html

Link: https://github.com/openwrt/openwrt/pull/18789
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-13 19:58:22 +02:00
Robert Marko
487fc2ec96 qualcommax: remove PCIe bridge nodes
PCIe bridge nodes are now present in the SoC DTSI, so drop our downstream
ones as otherwise ath1*k BDF matching will fail.

Link: https://github.com/openwrt/openwrt/pull/18789
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-13 19:58:22 +02:00
Robert Marko
5e0bbd3670 qualcommax: ipq50xx: add missing bus-range to PCIe bridges
It seems that bus-range property was missed for the PCIe bridges on
IPQ50xx, thus causing DTC to warn on any bus adress used on nodes
under the PCIe bridges.

Link: https://github.com/openwrt/openwrt/pull/18789
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-13 19:58:22 +02:00
Robert Marko
8aad4cd43d qualcommax: ipq50xx: use latest v9 PCIe DTS patch
Use the latest v9 PCIe DTS patch that is pending upstream, notable change
being that it includes PCIe bridge nodes.

Link: https://github.com/openwrt/openwrt/pull/18789
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-13 19:58:22 +02:00
Robert Marko
2c2808a71a qualcommax: ipq807x, ipq60xx: backport DTS PCIe bridge node
Currently, we manually define PCI bridge nodes in devices that use
PCI cards, etc.

But since we will need to rework this for 6.12 anyway since upstream added
the PCIe bridge nodes[1][2] lets backport it now.

[1] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/arch/arm64/boot/dts/qcom/ipq8074.dtsi?h=v6.12.28&id=ed3893f6f9b800ca774f63810c5f8838bc7cee78
[2] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/arch/arm64/boot/dts/qcom/ipq6018.dtsi?h=v6.12.28&id=52358c64937e982d3cdcf64be58f08f30d8e518c

Link: https://github.com/openwrt/openwrt/pull/18789
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-13 19:58:22 +02:00
Christoph Krapp
0d6ba33181 mediatek: filogic: fix wifi on ASUS RT-AX52
Add missing kmod-7915e package to get both wireless interfaces working.

Link: https://github.com/openwrt/openwrt/issues/18690

Reviewed-by: Steffen Förster <nemesis@chemnitz.freifunk.net>
Signed-off-by: Christoph Krapp <achterin@gmail.com>
2025-05-13 03:32:26 +02:00
Mieczyslaw Nalewaj
269a62b217 kernel: bump 6.12 to 6.12.28
Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.12.28

Removed upstreamed:
        generic/pending-6.12/691-net-ipv6-fix-UDPv6-GSO-segmentation-with-NAT.patch[1]

Manually rebased:
        generic/pending-6.12/737-net-ethernet-mtk_eth_soc-add-paths-and-SerDes-modes-.patch[2]
        generic/hack-6.12/781-usb-net-rndis-support-asr.patch[3]

1. https://web.git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-6.12.y&id=6effe1c0fa823d9923f3b77547f201a5bab6c1e5
2. https://web.git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-6.12.y&id=aea3ca60fafbdf0da5c930ff2f4105587deb6753
3. https://web.git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-6.12.y&id=222b6685efe0d8c1cdb078a67bbe806f56d18f94

All other patches automatically rebased.

Build system: x86/64
Build-tested: x86/64
Run-tested: x86/64

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/18756
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-12 18:10:03 +02:00
Robert Marko
1c1026eeac generic: 6.12: add CONFIG_EC_LENOVO_YOGA_C630
CONFIG_EC_LENOVO_YOGA_C630 popped up while doing 6.12 for qualcommax.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-12 17:05:04 +02:00
Markus Stockhausen
55287c9fbe realtek: decouple MDIO and ethernet devices
We are lucky to have a working realtek environment. But some things where mixed
heavily. To say it clear a bus is a bus and an ethernet is an ethernet. With
the new naming conventions and defines this becomes even more obvious.

Decouple it by moving the bus specific parts out of the ethernet device. To
make the code more readable rename bus_priv variables to priv and sort variable
definitions in inverse tree order (length descending) where it makes sense.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/18402
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2025-05-12 16:09:19 +03:00
Markus Stockhausen
47de87eb23 realtek: harden MDIO driver
At least since 2022 there is a major bug in the MDIO driver that
produces out-of-bound reads and erratic behaviour during initialization.

- mdiobus_scan_bus_c22() scans the bus for 64 devices (PHY_MAX_ADDR)
- private bus structure only supports 57 entry arrays (MAX_PORTS)

All the bus/reader writer functions accept calls with addr>=57 and will
silently read beyond their limits. This can lead to ghost SERDES like
https://github.com/openwrt/openwrt/issues/18665#issuecomment-2846053813

Add proper boundary checks and end the functions with -ENODEV that is
the only accepted error code from the bus scan function.

Fixes: 0536c582e6 ("realtek: Fix RTL931X Ethernet driver") etc ...

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/18402
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2025-05-12 16:09:19 +03:00
Markus Stockhausen
96ce4855bc realtek: resize mdio bus private arrays
These two arrays have been fixed to some sane size (= 64 ports). Now
that everything is in place reuse the global RTMDIO_MAX_PORT define.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/18402
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2025-05-12 16:09:19 +03:00
Markus Stockhausen
0c9e91a60c realtek: move private bus structure closer to the bus
Relocate the bus structure definition into the MDIO source code area
of the ethernet driver. So if the real bus driver is forked from the
rest of the code only one area needs to be removed. Rename it to make
clear it belongs to the bus.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/18402
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2025-05-12 16:09:19 +03:00
Markus Stockhausen
10519db579 realtek: reuse RTMDIO_MAX_SMI_BUS define
Although a dfine is used to set the maxiumum number of SMI
busses (=4) it is not used at all appropriate places in the code.
Replace hard coded constants with that define.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/18402
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2025-05-12 16:09:19 +03:00
Markus Stockhausen
7f16a379f6 realtek: add mdio prefix to defines
Inside the ethernet driver lives the mdio bus. It is not always clear
what belongs where. Prefix some leftovers from the kernel 6.6 refactor
to clearly state what belongs to the bus. Group all defines together
in one place. This commit has no functional changes.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/18402
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2025-05-12 16:09:19 +03:00
Alexandru Gagniuc
bd808cf3ca qualcommbe: ipq95xx: fix ipq-uniphy crash on IPQ9554
IPQ9554 does not have uniphy1. The "gcc_uniphy1_sys_clk" cannot be
enabled. This causes the ipq-uniphy driver to crash on .probe().
Add a patch to resolve the crash.

Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18779
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-12 15:06:24 +02:00
Tianling Shen
4044ce7109 kernel: add missing Kconfig symbols
Found when building rockchip target (with kernel 6.12).

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
Link: https://github.com/openwrt/openwrt/pull/18685
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-11 13:11:46 +02:00
Aleksander Jan Bajkowski
a3da25c62b lantiq: xrx200_legacy: rename TP-LINK to TP-Link
Keep the name consistent with other places.

Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
2025-05-10 21:28:40 +02:00
Aleksander Jan Bajkowski
e4b8279b7e lantiq: xrx200_legacy: rename PHY LEDs
This commit corrects led phy names. This has been discussed
at link [1] and corrected in the mediatek target in the
commit a51fd20e0d. Now it's time
to do the same thing in the lantiq target.

Link: https://github.com/openwrt/openwrt/pull/18265
Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
2025-05-10 21:28:40 +02:00
David DeGraw
75403dd1d0 ramips: add support for Cudy R700
This is the same hardware as the Cudy WR2100 that's
had support for some time now, just without the WLAN
hardware.

This PR is mostly copied from the commit that added
support for the WR2100, here: 3501db9

Specifications:
SoC: MT7621
CPU: 880 MHz
Flash: 16 MiB
RAM: 128 MiB
Ethernet: 5x Gbit ports

Installation:
There are two known options:

The Luci-based UI.
Press and hold the reset button during power up.
The router will request 'recovery.bin' from a TFTP server at
192.168.1.88.

Both options require a signed firmware binary.
A signed firmware can be found in GitHub PR #18532.

R4 & R5 need to be shorted (0-100Ω) for the UART to work.

Link: https://github.com/openwrt/openwrt/pull/18532

Signed-off-by: David DeGraw <degraw@fastmail.com>
2025-05-10 21:26:08 +02:00
David Bauer
f828be4d10 ramips: use i2c-gpio driver for EX400
Configure the i2c pins as GPIO outputs and use the i2c-gpio driver to
control the Semtech SX9512 touch controller.

This fixes spurious errors in i2c transactions even at 1kHz with the
native i2c driver.

leds green:wan: Setting an LED's brightness failed (-6)

Signed-off-by: David Bauer <mail@david-bauer.net>
2025-05-10 21:26:08 +02:00
David Bauer
49a1781d74 ramips: support Genexis EX400 touch controller
Add the necessary package dependencies as well as device-tree properties
to support the touch-inputs as well as missing LEDs on the Genexis Pulse
EX400 range extender.

Signed-off-by: David Bauer <mail@david-bauer.net>
2025-05-10 21:26:08 +02:00
David Bauer
0842e79338 ramips: add Semtech SX9512 touch input driver
This driver is required for the touch-inputs as well as some LEDs on the
Genexis Pulse EX400.

The driver was also sent upstream. As the EX400 is currently the only
consumer, the driver is added target-specific for ramips.

Once the driver has been accepted upstream and is provided in a kernel
release used by OpenWrt, the package should be moved to the global input
drivers.

Link: https://www.spinics.net/lists/kernel/msg5669349.html

Signed-off-by: David Bauer <mail@david-bauer.net>
2025-05-10 21:26:08 +02:00
David Bauer
ff55daf1eb ramips: drop ALT0 name from Pulse EX400 dts model
The alternative model name does not need to be represented in the DTS.

Signed-off-by: David Bauer <mail@david-bauer.net>
2025-05-10 21:26:08 +02:00
Rosen Penev
b5fba20351 linux: remove of_match_ptr from OF only drivers
There's no need for it. Kernel update to 6.12 found that it now needs
linux/of.h explicitly included.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18763
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-10 20:00:59 +02:00
INAGAKI Hiroshi
8fb46725cf qualcommax: ipq50xx: fix NAND ECC for ELECOM WRC-X3000GS2
Specify 4-bit ECC strength instead of 8-bit, to resolve NAND I/O errors
on ELECOM WRC-X3000GS2.

ELECOM WRC-X3000GS2 has a Macronix MX35UF1G24AD SPI-NAND chip as a flash
storage. That chip is registered as a chip that has 128 bytes OOB and
requires 8-bit ECC, and described as the same in the Macronix's datasheet.

But on WRC-X3000GS2, 8-bit ECC breaks NAND I/O on mtdblock devices with
the following errors and 4-bit ECC needs to be used to resolve this issue.

current (ECC strength=8):

```
[    1.401566] 0x000000480000-0x000000500000 : "0:appsblenv"
[    1.407128] 1 fixed-partitions partitions found on MTD device 0:appsblenv
[    1.410663] Creating 1 MTD partitions on "0:appsblenv":
[    1.417359] 0x000000000000-0x000000040000 : "env-data"
[    1.479865] u-boot-env-layout: probe of 79b0000.qpic-nand:flash@0:partitions:partition-0-appsblenv:partition@0:nvmem-layout failed with error -74

root@OpenWrt:~# strings /dev/mtdblock10
[   55.693754] mtdblock: MTD device '0:appsblenv' is NAND, please consider using UBI block devices instead.
[   55.694660] I/O error, dev mtdblock10, sector 0 op 0x0:(READ) flags 0x80700 phys_seg 4 prio class 2
[   55.703147] I/O error, dev mtdblock10, sector 8 op 0x0:(READ) flags 0x80700 phys_seg 3 prio class 2
[   55.711884] I/O error, dev mtdblock10, sector 16 op 0x0:(READ) flags 0x80700 phys_seg 2 prio class 2
[   55.720778] I/O error, dev mtdblock10, sector 24 op 0x0:(READ) flags 0x80700 phys_seg 1 prio class 2
[   55.730310] I/O error, dev mtdblock10, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 2
[   55.738607] Buffer I/O error on dev mtdblock10, logical block 0, async page read
```

after fixing (ECC strength=4):

```
[    1.402301] 0x000000480000-0x000000500000 : "0:appsblenv"
[    1.407909] 1 fixed-partitions partitions found on MTD device 0:appsblenv
[    1.411370] Creating 1 MTD partitions on "0:appsblenv":
[    1.418075] 0x000000000000-0x000000040000 : "env-data"
(no error)

root@OpenWrt:~# strings /dev/mtdblock10
[   39.131008] mtdblock: MTD device '0:appsblenv' is NAND, please consider using UBI block devices instead.
bootcmd=bootipq
baudrate=115200
wifi2=7C:F8:54:01:BD:F3
CRASH_COUNT=0
...

```

Fixes: 01b72ce61e ("qualcommax: ipq50xx: remove ECC user config from board files")
Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18770
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-10 12:14:18 +02:00
Álvaro Fernández Rojas
5017ecac84 bmips: sercomm-msp430: fix include
Include <linux/of.h> instead of <linux/of_device.h>.
This problem arised when adding support for 6.12, but it can be fixed on
older kernels too.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-05-10 09:02:25 +02:00
Álvaro Fernández Rojas
9ffbef7e19 bcm27xx: fix kmod-drm-rp1 modules dependencies
kmod-drm-rp1-dsi, kmod-drm-rp1-dpi and kmod-drm-rp1-vec should depend on
kmod-drm-dma-helper and kmod-drm-vram-helper in order to fix dependency errors
when all kernel modules are selected.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-05-10 07:58:12 +02:00
Shiji Yang
ffde9a9fe9 realtek rtl931x: mark subtarget as source-only
There are no supported devices on this sub-target. It can be
considered that it is still under development. Therefore,
there is no need to make the buildbot build it every day.

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/18757
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-09 16:38:19 +02:00
Robert Marko
9a3c6df21b generic: config-filter: filter out CONFIG_RUSTC_SUPPORTS_* symbols
CONFIG_RUSTC_SUPPORTS_* is set based on rustc presence and version,
so we need to filter it out.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-09 14:13:19 +02:00
Álvaro Fernández Rojas
538efe5d6b bmips: sercomm-msp430: fix duplicated definition
This problem arised when adding support for 6.12, but it should be fixed on
older kernels too.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-05-09 12:51:44 +02:00
Álvaro Fernández Rojas
59764a7079 bmips: add missing PCI drivers include
These drivers should include <linux/platform_device.h>, but this wasn't an
issue on kernels < 6.12.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-05-09 12:51:44 +02:00
Shiji Yang
9daca55916 ramips: rt288x: remove default build barriers
This sub-target is source only now. We don't need to disable build
for specific devices.

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/18745
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-09 11:31:20 +02:00
Shiji Yang
0144df6ca2 ramips: rt288x: mark subtarget as source-only
Due to RAM/ROM size limitations, this sub-target has been unable
to generate usable images for a long time. Mark them as source-only
to save some resource for the buildbot.

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/18745
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-09 11:31:20 +02:00
Shiji Yang
551497f823 lantig: xway_legacy: remove default build barriers
This sub-target is source only now. We don't need to disable build
for specific devices.

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/18745
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-09 11:31:20 +02:00
Shiji Yang
37ce497e5b lantig: xway_legacy: mark subtarget as source-only
Due to RAM/ROM size limitations, this sub-target has been unable
to generate usable images for a long time. Mark them as source-only
to save some resource for the buildbot.

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/18745
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-09 11:31:20 +02:00
Shiji Yang
9952345a0a lantig: ase: remove default build barriers
This sub-target is source only now. We don't need to disable build
for specific devices.

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/18745
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-09 11:31:20 +02:00
Shiji Yang
447c62588a lantig: ase: mark subtarget as source-only
Due to RAM/ROM size limitations, this sub-target has been unable
to generate usable images for a long time. Mark them as source-only
to save some resource for the buildbot.

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/18745
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-09 11:31:20 +02:00
Markus Stockhausen
4cfd1c4501 realtek: proper RTL8214FC fibre/copper detection
The RTL8214FC currently uses generic PHY functions. That makes it look like a copper
device. Switching to/from fibre works fortunately but the autonegotiation handling
still works on MII_LPA (PHY register 5) as if a copper link is used. Fix that by

- advertising a superset of TP/FIBRE features
- using clause 37 functions when on fibre

Additionally enhance the code of the driver to assist further development.

- log the speed of the inserted module to detect wrongly inserted 10gbase-r modules
- order phy driver functions alphabetically (keep match/name on top)
- remove genphy_loopback as the kernel uses it if not provided

Remark! The driver internally uses PORT_MII for the TP port. Align with that and
report MII to ethtool instead of TP. Other drivers do the same and it can be
changed in the future if needed.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/18724
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-09 10:24:16 +02:00
Aleksander Jan Bajkowski
a1da2f8465 mediatek: filogic: increase spi flash memory speed on ZyXEL EX5601
Reduces boot time by 3s on a freshly installed image. This device
has a large flash and the gain can be higher with more packages
installed. According to the datasheet, this is the maximum frequency
supported by the Micron and Macronix chips that are installed in
these devices. Tested on three units over a two month period.

Before:
$ dd if=/dev/mtd5 of=/dev/null bs=10M count=1 status=progress
1+0 records in
1+0 records out
10485760 bytes (10 MB, 10 MiB) copied, 1.51901 s, 6.9 MB/s

After:
$ dd if=/dev/mtd5 of=/dev/null bs=10M count=1 status=progress
1+0 records in
1+0 records out
10485760 bytes (10 MB, 10 MiB) copied, 0.899474 s, 11.7 MB/s

Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
Link: https://github.com/openwrt/openwrt/pull/18694
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-05-08 22:38:13 +02:00
Robert Marko
b2fa7e4b9d qualcommax: use upstreamed IPQ5018 PCI support
Instead of downstream patch, use the upstreamed version.
Makes it easy to update to 6.12.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-08 21:03:47 +02:00
Lech Perczak
d932d884b2 ath79: support Mikrotik RouterBOARD 2011-UiAS-2HnD
Mikrotik RouterBOARD 2011 series are AR9344-based wired routers, with
optional 2,4GHz 802.11n 2x2:2 Wi-Fi radio, with desktop or rack-mount
capability, featuring 5 gigabit Ethernet ports and 5 fast Ethernet
ports. Different variants of the board are supported using a single
image.
Bare-bones RouterBOARD 2011LS is supported using the same image.

Specification:
- Power: 10-28V input via 5,5/2,1 DC barrel jack, or terminal block on
  some boards
- CPU: AR9344 at 600 to 750MHz (configurable)
- RAM: 128MB (64MB in early versions) DDR2
- Flash: 128MB (64MB in early versions) NAND flash
- Gigabit Ethernet: 5 ports via AR8327 switch (eth1 to eth5)
- Fast Ethernet: 5 ports via AR9344 built-in switch (eth6 to eth10)
- SFP: single port through AR8327 switch (SGMII at port 6)
- PoE in: passive input up to 28V at eth1
- PoE out: passive output up to 28V at eth10
- USB: optional micro-AB host port or type-A host port
- Console: optional Cisco-style RS232 console at the back of the device,
  on budget devices available as 3.3V UART via testpoints
- LCD: 2" touchscreen-equipped LCD (unsupported)

Installation:
- perform TFTP boot of initramfs image as for netinstall procedure
  typical for Mikrotik devices
- when initramfs image boots, use sysupgrade to perform final
  installation.

If upgrading from ar71xx, clean installation should be performed, as the
devices now uses yafut to handle kernel image.

TODO:
- 64MB NAND variant using K9F1208U0C isn't yet supported, because it
  needs disabling subpage write support for that chip. A proper solution
  would be to fix that in kernel, but I don't have this variant to test
  with currently.
- The same is true for GD9FU1G8F3A NAND, which isn't ONFI compliant and
  needs definition in kernel for proper geometry.
- SFP port probes over I²C and gigabit link is possible, but currently
  the drivers lack support of handling link status information to
  userspace, including swconfig. Link will appear as always up.
  Currently, link status logging can detect something, but status both
  for ports 0 and 6 is logged simultaneously,
  but "swconfig dev switch0 show" will always show link up on port 6.
- Not yet fully known connection to display and touch panel, but some
  documentation is available (seemingly connected via SPI, according to
  Mikrotik's open source code at [1])

[1] https://github.com/robimarko/routeros-GPL

Signed-off-by: Lech Perczak <lech.perczak@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17617
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-05-08 20:32:51 +02:00
Álvaro Fernández Rojas
3b309e41cf generic: 6.12: add new config symbols
Add new config symbols to 6.12 kernel config and move common symbols from x86.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-05-08 19:05:48 +02:00
Robert Marko
5337627ca4 qualcommax: use upstream QMP pipe patch
Passing QMP pipe clocks was upstreamed, but it requires conversion single
QMP node, so backport both of those instead of our downstream patch.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-08 18:53:34 +02:00
Robert Marko
e9f1024779 generic: 6.12: add Qualcomm PBS symbol
Qualcomm PBS symbols popped up during 6.12 work.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-08 18:07:29 +02:00
Robert Marko
bdad7c1aba generic: 6.12: add Qualcomm PM8916 symbols
Qualcomm PM8916 PMIC symbols popped up while doing 6.12 for qualcommax.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-08 18:07:24 +02:00
Robert Marko
0b07da92f5 qualcommax: renumber upstreamed patches
In order to free up some more number space, simply renumber existing
upstreamed patches starting from 0 again.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-08 17:53:37 +02:00