Commit Graph

31424 Commits

Author SHA1 Message Date
Mieczyslaw Nalewaj
0991d2f06d generic: rename backport patches to names containing version
Rename 770-net-introduce-napi_is_scheduled-helper.patch
to 770-v6.7-net-introduce-napi_is_scheduled-helper.patch
because it is used since kernel 6.7 (https://lore.kernel.org/lkml/20231028011741.2400327-1-kuba@kernel.org/).
Link: https://web.git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-6.7.y&id=7f3eb2174512fe6c9c0f062e96eccb0d3cc6d5cd

Rename 751-01-STABLE-net-ethernet-mediatek-split-tx-and-rx-fields-in-mtk_.patch
to 751-01-v6.8-net-ethernet-mediatek-split-tx-and-rx-fields-in-mtk_.patch
because it is used since kernel 6.8.12 (https://lore.kernel.org/lkml/2024053036-matron-confess-13e0@gregkh/).
Link: https://web.git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-6.8.y&id=b411384df5814fe6fd861d4869607577bcec73a1

Rename 751-02-STABLE-net-ethernet-mediatek-use-QDMA-instead-of-ADMAv2-on-.patch
to 751-02-v6.8-net-ethernet-mediatek-use-QDMA-instead-of-ADMAv2-on-.patch
because it is used since kernel 6.8.12 (https://lore.kernel.org/lkml/2024053036-matron-confess-13e0@gregkh/).
Link: https://web.git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-6.8.y&id=0849f56b5146b70f2da328b1d178d0a3c53d6846

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/18253
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-03-30 18:19:58 +02:00
Daniel Golle
8b27e60c58 mediatek: filogic: add build for ASUS ZenWiFi BT8 with OpenWrt's U-Boot
Add 'ubootmod' variant for the ASUS ZenWiFi BT8.
An out-of-tree installer will be provided in Github to allow users an easy
transition from the stock loader to OpenWrt's bootchain which is built from
source.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2025-03-30 02:02:58 +01:00
Daniel Golle
6f59e969e2 mediatek: filogic: prepare for ubootmod build of ASUS ZenWiFi BT8
Break out all flash-layout dependent parts from device tree into separate
dtsi file to be used by both, stock layout and upcoming ubootmod variant.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2025-03-30 02:02:58 +01:00
John Crispin
2cd79733cc mediatek: filogic: add Asus ZenWiFi BT8
Hardware
--------
MediaTek MT7988D SoC (3x Cortex-A73 @1.8 GHz max)
1GB DDR4 RAM
128MB SPI-NAND (Winbond)
MediaTek MT7996 BE14000 Tri-Band Wi-Fi 7
3x LAN (2x 1GE MT7988 built-in, 1x 2.5GE MaxLinear GPY211C)
1x WAN (2.5GE MT7988 built-in)
LED: RGB PWM (supported as 3x PWM LED)
USB: 1x USB 3
Buttons: RESET, WPS
UART: 115200 8N1 3.3V

Installation
------------
1. Hold down RESET button and power on the device until
   LED pulses red.

2. Assign IP 192.168.1.70/24 to your computer's Ethernet port

3. Connect Ethernet to one of the 1GE LAN ports

4. Open browser and visit http://192.168.1.1

5. Upload openwrt-mediatek-filogic-asus_zenwifi-bt8-factory.bin

6. Once OpenWrt initramfs system comes up, do sysupgrade using
   openwrt-mediatek-filogic-asus_zenwifi-bt8-squashfs-sysupgrade.bin

Signed-off-by: John Crispin <john@phrozen.org>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2025-03-30 02:02:58 +01:00
Rui Salvaterra
4d48690cd7 kernel: move accepted patch from pending-6.6 to backport-6.6
792-igc-enable-HW-vlan-tag-insertion-stripping-by-defaul.patch has been
accepted for Linux 6.16.

Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
2025-03-28 16:09:00 +00:00
Daniel Golle
2b9c81d1cb generic: fitblk: close block device if mapping image failed
In case a broken fit image is present on flash the fitblk driver would
not map any /dev/fit* devices, but also not always close the block device
the image resides on. In case of ubiblock devices this is fatal as one
then cannot remove the ubiblock device (-EBUSY), and hence cannot replace
the broken image.
Always close the block device in case no sub-image was mapped.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2025-03-28 15:42:41 +00:00
Weikai Kong
a1bf306bb7 qualcommax: ipq60xx: add Linksys MR7500 support
Codename: Divo

Hardware specification:
========
SoC: Qualcomm IPQ6018
RAM: 512MB (2x ESMT 256MB DDR3L M15T2G16128A–DEBG2R)
NAND Flash: 512MB (Macronix MX30UF4G18AC or SK Hynix H27S4G8F2EDA-BC)
Ethernet: 1x 10/100/1000/2500/5000Mbps (Marvell AQR114C-B0)
Ethernet: 4x 10/100/1000Mbps (Qualcomm QCA8075)
WiFi1: 6GHz ax 4x4@20/40/160 MHz (Qualcomm QCN9024 + Skyworks SKY85784-11) - channels 33-229
WiFi2: 5GHz ax 2x2@20/40/80 MHz (Qualcomm QCN5052 + Skyworks SKY85755-11) - channels 36-177
WiFi3: 2.4GHz ax 2x2@20/40 MHz (Qualcomm QCN5022 + Skyworks SKY8340-11)
IoT: Bluetooth 5 (CSR8811) - not implemented
LED: 1x RGB status + USB Blue (PWM)
USB: 1x USB 3.0
Button: WPS, Reset

Flash instructions (Without Serial):
========
Open Linksys Web UI - http://192.168.1.1/ca or http://linksysxxxxx.lan/ca depending on your setup.
  xxxxx is the last 5 digits from the SN found on a sticker under the device.
Click on the Linksys Logo to by-pass smart app registration.
Login with your admin password. The default password can be found on the same sticker.
To enter into the support mode, click on the “CA” link and the bottom of the page.
Open the “Connectivity” menu and upload the squash-factory image with the “Choose file” button.
Click start. Ignore all the prompts and warnings by click “yes” in all the popups.

Flash instructions (With Serial):
========
1. Installation using serial connection from OEM firmware (default login: root, password: admin):
- fw_printenv -n boot_part
In case of 2:
- flash_erase /dev/mtd13 0 0
- nandwrite -p /dev/mtd13 openwrt-qualcommax-ipq60xx-linksys_mr7500-squashfs-factory.bin
or in case of 1:
- flash_erase /dev/mtd15 0 0
- nandwrite -p /dev/mtd15 openwrt-qualcommax-ipq60xx-linksys_mr7500-squashfs-factory.bin
After first boot install firmware on second partition:
- mtd -r -e kernel -n write openwrt-qualcommax-ipq60xx-linksys_mr7500-squashfs-factory.bin kernel
or:
- mtd -r -e alt_kernel -n write openwrt-qualcommax-ipq60xx-linksys_mr7500-squashfs-factory.bin alt_kernel

2. Installation from initramfs image using USB drive:
Put the initramfs image on the USB drive:
- dd bs=1M if=openwrt-qualcommax-ipq60xx-linksys_mr7500-initramfs-uImage.itb of=/dev/sda
Stop u-boot and run:
- usb start && usbboot $loadaddr 0 && bootm $loadaddr
Write firmware to the flash from initramfs:
- mtd -e kernel -n write openwrt-qualcommax-ipq60xx-linksys_mr7500-squashfs-factory.bin kernel
and:
- mtd -r -e alt_kernel -n write openwrt-qualcommax-ipq60xx-linksys_mr7500-squashfs-factory.bin alt_kernel

3. Back to the OEM firmware:
- mtd -e kernel -n write FW_MR7500_1.1.12.211919_prod.img kernel
and:
- mtd -r -e alt_kernel -n write FW_MR7500_1.1.12.211919_prod.img alt_kernel

4. USB recovery:
Put the initramfs image on the USB:
- dd bs=1M if=openwrt-qualcommax-ipq60xx-linksys_mr7500-initramfs-uImage.itb of=/dev/sda
Set u-boot env:
- fw_setenv bootusb 'usb start && usbboot $loadaddr 0 && bootm $loadaddr'
- fw_setenv bootcmd 'run bootusb; if test $auto_recovery = no; then bootipq; elif test $boot_part = 1; then run bootpart1; else run bootpart2; fi'

AQR firmware:
========
0. Firmware extracting:
To extract the firmware, use unblob (unblob.org)
1. Firmware loading:
To properly load the firmware and initialize AQR PHY, we must use the u-boot aq_load_fw function.
To do this, you need to modify u-boot env:
With USB recovery:
- fw_setenv bootcmd 'aq_load_fw; run bootusb; if test $auto_recovery = no; then bootipq; elif test $boot_part = 1; then run bootpart1; else run bootpart2; fi'
and without:
- fw_setenv bootcmd 'aq_load_fw; if test $auto_recovery = no; then bootipq; elif test $boot_part = 1; then run bootpart1; else run bootpart2; fi'
2. Firmware updating:
Newer firmware (AQR114C.cld) is available in the latest OEM firmware (https://downloads.linksys.com/support/assets/firmware/FW_MR7500_1.1.12.211919_prod.img).
Copy AQR114C.cld to /lib/firmware/marvell

Link: openwrt#17428

Signed-off-by: Weikai Kong <priv@pppig236.com>
Link: https://github.com/openwrt/openwrt/pull/18185
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-03-28 12:38:33 +01:00
Weikai Kong
284f37ed80 ipq60xx: define common Linksys MR devices configuration
ipq60xx series MR devices share some common attributes such as LED for
USB port.

Signed-off-by: Weikai Kong <priv@pppig236.com>
Link: https://github.com/openwrt/openwrt/pull/18185
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-03-28 12:38:33 +01:00
Weikai Kong
8e6c49766d ipq6018-ess: Add dp5-syn node
Linksys MR7500 features 4x QSGMII QCA8075 and 1x USXGMII (1/2.5/5 GbE)

Signed-off-by: Weikai Kong <priv@pppig236.com>
Link: https://github.com/openwrt/openwrt/pull/18185
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-03-28 12:38:32 +01:00
Shymon Samsel
8a15a75e94 qualcommax: ipq807x: Create working factory images for EAP620 HD v1 and EAP660 HD v1
Create factory tar for EAP620 HD v1 and EAP660 HD v1 which is accepted by the stock UI.
Fix bug in ipq807x and ipq60xx makefiles so TPLINK_SUPPORT_STRING is handled properly.
Modify tplink-mkimage-2022 script and relevant makefiles to allow spaces in support strings (required for EAP620 HD v1 and EAP660 HD v1).

Installation steps are identical to EAP610-Outdoor:
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.

Signed-off-by: Shymon Samsel <ssamsel@umass.edu>
Link: https://github.com/openwrt/openwrt/pull/18340
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-03-27 17:42:04 +01:00
Mieczyslaw Nalewaj
2b5fea0e16 generic: reorder settings
Move "# CONFIG_NVMEM_LAYOUT_ASCII_ENV is not set" to the correct location.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/18335
Signed-off-by: Nick Hainke <vincent@systemli.org>
2025-03-27 16:37:23 +01:00
Marius Durbaca
7aa3dfdbda rampis: fix tplink_mr200v1 wan interface
RNDIS interface name change from usb0 to eth1

Signed-off-by: Marius Durbaca <mariusd84@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18298
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-03-26 11:40:42 +01:00
John Audia
314ca03877 kernel: bump 6.6 to 6.6.84
Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.84

All patches automatically rebased.

Build system: x86/64
Build-tested: flogic/xiaomi_redmi-router-ax6000-ubootmod, x86/64
Run-tested: flogic/xiaomi_redmi-router-ax6000-ubootmod, x86/64

Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/18326
Signed-off-by: Nick Hainke <vincent@systemli.org>
2025-03-26 11:10:12 +01:00
Weikai Kong
c5e86c3195 qualcommax: mr7350: switch to ascii-eq-delim-env
Using the pending ascii-eq-delim-env4 driver is a better way to read mac addresses since no
extra config is required

The change is like eacc4d8c9b, except for using smem for devinfo

thanks to @musashino205 for pointing out the simplification that removes
the extra partition

Signed-off-by: Weikai Kong <priv@pppig236.com>
Link: https://github.com/openwrt/openwrt/pull/18186
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-03-26 10:12:02 +01:00
Christoph Krapp
66f38834d6 mediatek: filogic: fix device sorting
arcadyan_mozart was incorrectly placed below asus devices

Signed-off-by: Christoph Krapp <achterin@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18331
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-03-26 09:57:23 +01:00
Erik Servili
2758eebc76 qualcommax: ipq807x: Create working factory tar for WAX620 and WAX630.
Create factory tar for WAX620 and WAX630 which is accepted by the stock UI.
Must use 'Boot up Backup Firmware' button on stock upgrade page after install and reboot to swap partitions.

Signed-off-by: Erik Servili <serverror@serverror.com>
Link: https://github.com/openwrt/openwrt/pull/18334
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-03-26 09:52:41 +01:00
Shiji Yang
8940cc3919 ramips: dts: remove redundant console bootargs
`bootargs = "console=ttyS0,57600";` is already defined on all
ramips target SoCs' dtsi. We don't need to override it with the
same value.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
Link: https://github.com/openwrt/openwrt/pull/18303
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-03-26 09:50:42 +01:00
Martin Schiller
1bb9592fc7 mediatek: filogic: bpi-r3-mini: add kmod-eeprom-at24
The bpi-r3-mini has an eeprom onboard. Add the related driver to be
able to access this memory.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2025-03-25 07:48:53 +01:00
Chukun Pan
c3f2bb7afc qualcommax: ipq60xx: add GL.iNet GL-AX1800/AXT1800 support
Specifications:
  SoC:     Qualcomm IPQ6000
  RAM:     512 MiB
  Flash:   128 MiB NAND
  ETH:     Qualcomm QCA8075
  WLAN1:   2.4GHz 802.11b/g/n/ax 2x2
  WLAN2:   5GHz 802.11a/n/ac/ax 2x2
  Button:  Reset, Switch
  USB:     1x 3.0
  SD slot: 1 in GL-AXT1800

Install via stock firmware:
  Upload factory.bin in stock firmware's upgrade page,
  do not preserve settings.

Install via uboot web failsafe:
  Push the reset button for 5 seconds, then use broswer
  to access http://192.168.1.1, and upload factory.ubi.

Afterwards upgrade can use sysupgrade image.

Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
Link: https://github.com/openwrt/openwrt/pull/14950
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-03-24 10:16:00 +01:00
Chukun Pan
0b33bbc0e6 qualcommax: backport cpufreq patch for ipq60xx
Make cpufreq work on different IPQ60xx SoC.
Also rebase ipq6018-cp-cpu.dtsi for mp5496.

Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
Link: https://github.com/openwrt/openwrt/pull/14950
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-03-24 10:16:00 +01:00
Chukun Pan
af6cf5d8c0 qualcommax: backport sdhci patches for ipq60xx
Refresh device tree, remove the useless sdhc2 aliases.

Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
Link: https://github.com/openwrt/openwrt/pull/14950
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-03-24 10:15:59 +01:00
Chukun Pan
eb9e0f2cff qualcommax: backport some upstream dts changes
This is the minimal change for the upcoming patches.
Refresh the device tree of ipq807x at the same time.

Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
Link: https://github.com/openwrt/openwrt/pull/14950
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-03-24 10:15:59 +01:00
Chukun Pan
227222f357 qualcommax: backport unmerged ipq60xx pwm support
Because of the dt-bindings error, these patches have not
been merged yet, and the driver part is fine.

Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
Link: https://github.com/openwrt/openwrt/pull/14950
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-03-24 10:15:59 +01:00
Chukun Pan
ddc4f216c6 filogic: move append-gl-metadata to image-commands.mk
This can be used by GL.iNet devices from other target.

Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
Link: https://github.com/openwrt/openwrt/pull/14950
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-03-24 10:15:59 +01:00
Daniel Golle
696ad7b1aa mediatek: filogic: fix case statement in 01_leds
Remove a stray '|' character from 01_leds which has accidentally
been added.

Reported-by: Chukun Pan <amadeus@jmu.edu.cn>
Fixes: 63d56af6c6 ("mediatek: filogic: migrate Netgate N60 to upstream PHY LED control")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2025-03-21 11:40:40 +00:00
Rui Salvaterra
6fa39900b6 kernel: igc: enable HW vlan tag insertion/stripping by default
Add a pending patch [1] in order to do so. This will be moved to the backports
section as soon as we know on which Linux version it will be merged.

[1] https://lore.kernel.org/netdev/20250313093615.8037-1-rsalvaterra@gmail.com/

Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
2025-03-21 10:21:07 +00:00
Daniel Golle
a51fd20e0d mediatek: filogic: PHY LEDs do have an address, gpio-leds don't
Other than GPIO LEDs, PHY LEDs do have an address.

Fix node names such that all gpio-leds do *not* contain an '@' sign and
PHY leds which do have an address also do contain the '@' sign.

This is done to prevent more copy&paste'ry of non-complaint DT
fragments.

Fixes: 7cbe34170e ("mediatek: add support for the GL.iNet GL-MT3000")
Fixes: fe10f97439 ("filogic: add support for GL.iNet GL-MT6000")
Fixes: e8f7597317 ("mediatek: filogic: add support for Cudy RE3000 v1")
Fixes: c9cb6411c1 ("mediatek: add support for Cudy WR3000 v1")
Fixes: 7560af7647 ("mediatek: filogic: migrate ASUS TUF AX6000 to upstream PHY LED control")
Fixes: 25ea7ff393 ("mediatek: filogic: migrate Acer W6/W6d to upstream PHY LED control")
Fixes: d50d51d74e ("mediatek: filogic: migrate Zyxel NWA50AX Pro to upstream PHY LED control")
Fixes: b88de5d507 ("mediatek: filogic: migrate Zyxel EX5700 to upstream PHY LED control")
Fixes: 63d56af6c6 ("mediatek: filogic: migrate Netgate N60 to upstream PHY LED control")
Fixes: fd76a38190 ("mediatek: filogic: migrate SmartRG Bonanza to upstream PHY LED control")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2025-03-21 01:19:19 +00:00
Daniel Golle
c1d5b9a26a Revert "mediatek: rename PHY LEDs to match upstream bindings"
This reverts commit 7103a1554a.
It was merged by accident.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2025-03-21 00:53:23 +00:00
Aleksander Jan Bajkowski
7103a1554a mediatek: rename PHY LEDs to match upstream bindings
Kernel docs recommends the following pattern "(^led-[0-9a-f]$|led)"[1].

1. https://elixir.bootlin.com/linux/v6.14-rc6/source/Documentation/devicetree/bindings/leds/leds-gpio.yaml#L24

Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
2025-03-21 00:50:14 +00:00
Aleksander Jan Bajkowski
5016c960bc kernel: drop Maxlinear PHY LED control hack
All devices have already been migrated to the upstream PHY LED
API. This prevents users from adding new devices using this hack.

Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
2025-03-21 00:47:38 +00:00
Aleksander Jan Bajkowski
fd76a38190 mediatek: filogic: migrate SmartRG Bonanza to upstream PHY LED control
This commit switches the control of the leds connected to the Maxlinear
GPY211C PHY to an upstream solution. There should be no functional changes.

Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
2025-03-21 00:43:26 +00:00
Aleksander Jan Bajkowski
63d56af6c6 mediatek: filogic: migrate Netgate N60 to upstream PHY LED control
This commit switches the control of the leds connected to the Maxlinear
GPY211C PHY to an upstream solution. There should be no functional changes.

Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
2025-03-21 00:42:04 +00:00
Aleksander Jan Bajkowski
b88de5d507 mediatek: filogic: migrate Zyxel EX5700 to upstream PHY LED control
This commit switches the control of the leds connected to the Maxlinear
GPY211C PHY to an upstream solution. There should be no functional changes.

Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
2025-03-21 00:39:08 +00:00
Daniel Golle
7a303d861a kernel: move accepted patch from pending-6.6 to backport-6.6
742-net-phy-air_en8811h-reset-netdev-rules-when-LED-is-s.patch has been
accepted a while ago as
https://git.kernel.org/torvalds/linux/c/87bfdbbb1992

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2025-03-18 17:25:39 +00:00
Tomas Lara
f86476b18b rockchip: fix missing ".patch" file extension
Fixes missing .patch file extension in:
- de9ad11dac
- 2e7d060fd1

Signed-off-by: Tomas Lara <tl849670@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18281
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-03-18 10:30:23 +01:00
Rosen Penev
16b58c278f ath79: om2p-v1: fix compatible string
This device uses AR9285, and not AR9280.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18271
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-03-17 21:34:33 +01:00
Coia Prant
612bedaf5b ramips: Fix Hongdian H8922 v30 pinctrl default state
According to the MT7620A hardware datasheet, GPIO/14 was originally used for RIN of UARTF, but is now used as the WPS LED.

Corrected pinctrl to ensure it works properly in the future.

Signed-off-by: Coia Prant <coiaprant@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18278
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-03-17 21:31:37 +01:00
Lech Perczak
ffad196537 ath79: support switch LEDs on TL-WR1043ND v2/v3
Add switch LED definitions for TP-Link TL-WR1043ND family, based on data
extracted from ar71xx board file. Update the LED labels to match current
pattern, i.e. drop the "tp-link:" prefix.

Signed-off-by: Lech Perczak <lech.perczak@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/12487
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-03-17 16:40:46 +01:00
Lech Perczak
af64c180b3 ath79: TP-link TL-WR1043ND v2/v3: use fixed-link for AR8327 switch connection
Attaching PHY driver to the switch, while adding LEDs binding causes the
PHY driver to create additional LED instances, handled incorrectly by
the PHY driver, which are non-functional. Use fixed-link to attach the
switch driver, instead of PHY driver, to prevent that.

This has a side effect of not logging switch port up/down events in the kernel
log.

Signed-off-by: Lech Perczak <lech.perczak@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/12487
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-03-17 16:40:46 +01:00
Lech Perczak
a6bde79c91 ath79: support switch LEDs on Archer C7 family
Add switch LED definitions for TP-Link Archer C7 v1/2/3 family, based on data
extracted from ar71xx board file. Update the LED labels to match current
pattern, i.e. drop the "tp-link:" prefix.

Signed-off-by: Lech Perczak <lech.perczak@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/12487
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-03-17 16:40:46 +01:00
Lech Perczak
c61a6efdf5 ath79: TP-link Archer C7v2: use fixed-link for AR8327 switch connection
Attaching PHY driver to the switch, while adding LEDs binding causes the
PHY driver to create additional LED instances, handled incorrectly by
the PHY driver, which are non-functional. Use fixed-link to attach the
switch driver, instead of PHY driver, to prevent that.

This has a side effect of not logging switch port up/down events in the kernel
log.

Signed-off-by: Lech Perczak <lech.perczak@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/12487
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-03-17 16:40:46 +01:00
Lech Perczak
b5367180b9 ath79: support switch LEDs on TL-WDR4300 family
Add switch LED definitions for TP-Link TL-WDR4300 family, based on data
extracted from ar71xx board file. Update the LED labels to match current
pattern, i.e. drop the "tp-link:" prefix.

Signed-off-by: Lech Perczak <lech.perczak@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/12487
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-03-17 16:40:46 +01:00
Lech Perczak
acd6f48e87 ath79: TP-link TL-WDR4300: use fixed-link for AR8327 switch connection
Attaching PHY driver to the switch, while adding LEDs binding causes the
PHY driver to create additional LED instances, handled incorrectly by
the PHY driver, which are non-functional. Use fixed-link to attach the
switch driver, instead of PHY driver, to prevent that.

This has a side effect of not logging switch port up/down events in the kernel
log.

Signed-off-by: Lech Perczak <lech.perczak@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/12487
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-03-17 16:40:46 +01:00
Lech Perczak
3ba4a4e32c kernel: ar8327: support LED device tree bindings
The ar8216 switch driver supports exposing configuration of AR8327 and
AR8337 switch LEDs to the userspace, however it is only configurable
through platform data, causing the devices ported from ar71xx target to
lack the support.
Since there is still a long way to go until we can migrate the target to
qca8k, an interim solution is needed.
Extend ar8327_hw_config_of function to parse a "leds"
subnode, which will populate the missing platform data based on device
tree contents, and restore the existing support for the LEDs.
Standard bindings apply, mapping "reg" property to LED index, with
addition of "qca,led-mode" property, which selects HW (0) or SW (1)
mode, defaulting to HW mode.

Signed-off-by: Lech Perczak <lech.perczak@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/12487
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-03-17 16:40:46 +01:00
Lech Perczak
5a4f8b26f0 kernel: ar8327: fix active-low LED initialization
Switch LEDs configured as active-low remain low instead of high upon
initialization, because in ar8327_leds_init, no distinction is made with
regards to LED pattern based on active_low property - only whether HW
mode is active. Select the proper initial pattern based also on
active_low to fix that.

While at that, simplify the equation ruling pattern selection for
setting brightness, avoiding unnecessary binary XOR operation, not
really valid for 'bool' type.

Signed-off-by: Lech Perczak <lech.perczak@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/12487
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-03-17 16:40:46 +01:00
Simonas Tamošaitis
9f1f918aed ath79: fix chipidea usb controller detection
Devices with chipidea usb controller does not detect usb hub after
phy-names change to "usb", revert it back to "usb-phy"

Fixes: 787cb9d87e ("ath79: change phy-names to only usb")
Signed-off-by: Simonas Tamošaitis <simsasss@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18230
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-03-17 15:23:45 +01:00
Henrik Ginstmark
929b3d0e52 ramips: add missing LEDs and modem control for ASUS 4G-AX56
Add missing LEDs and modem control for ASUS 4G-AX56
 - wifi2.4G white
 - wifi5G   white
 - wan      two-coloured, white and red
 - modem    four-coloured white, blue, yellow and red
   change
      label = "xxxx:modem";
   to
      color = <LED_COLOR_ID_xxxx>;
      function = LED_FUNCTION_MOBILE;
 - rssi-1   white
 - rssi-2   white
 - rssi-3   white

and modem reboot and reset

Combined into one commit

Signed-off-by: Henrik Ginstmark <henrik@ginstmark.se>
Link: https://github.com/openwrt/openwrt/pull/17927
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-03-17 15:13:42 +01:00
Tomasz Maciej Nowak
adc4d95c74 mediatek: u7623: fix network switch enumeration
With upstream changes hitting kernel 6.4 the dtb for u7623 ends up with
both mac (gmac) disabled, since this is now the default status in
mt7623.dtsi. Fix this by including mt7623a.dtsi (which already has all
necessary bits) and enabling all revlevant ports. This will also do
a side hustle of assigning proper clocks for power controller and
specifying proper power domain for few devices.

Link: https://lore.kernel.org/all/20230210182505.24597-1-arinc.unal@arinc9.com
Signed-off-by: Tomasz Maciej Nowak <tmn505@gmail.com>
Link: https://patchwork.ozlabs.org/project/openwrt/patch/20250304164507.60511-2-tmn505@terefe.re/
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-03-16 22:43:02 +01:00
J. S. Seldenthuis
4fed462454 ramips: use openwrt,netdev-name to fix port name conflict on TP-Link Deco M4R v4
Since 24.10.0, eth0, used for the WAN interface, does not work. From dmesg:

...
[    1.831126] mt7530-mdio mdio-bus:1f: MT7530 adapts as multi-chip module
[    1.846204] mtk_soc_eth 1e100000.ethernet eth0: mediatek frame engine at 0xbe100000, irq 19
...
[    1.933969] mt7530-mdio mdio-bus:1f: MT7530 adapts as multi-chip module
[    1.967668] mt7530-mdio mdio-bus:1f: configuring for fixed/rgmii link mode
[    1.975999] mt7530-mdio mdio-bus:1f eth0 (uninitialized): PHY [mt7530-0:00] driver [MediaTek MT7530 PHY] (irq=21)
[    1.986907] mt7530-mdio mdio-bus:1f: Link is Up - 1Gbps/Full - flow control rx/tx
[    1.987149] mtk_soc_eth 1e100000.ethernet eth0: error -17 registering interface eth0
[    2.004157] mt7530-mdio mdio-bus:1f eth1 (uninitialized): PHY [mt7530-0:01] driver [MediaTek MT7530 PHY] (irq=22)
[    2.017698] mtk_soc_eth 1e100000.ethernet eth0: entered promiscuous mode
[    2.024849] DSA: tree 0 setup
...
[    4.249680] mtk_soc_eth 1e100000.ethernet dsa: renamed from eth0
...

Like #15865, it seems that gmac0 does not rename eth0 to dsa until after the
switch ports are initialized, leading to a name collision (error -17 = EEXIST).

This patch follows #17062 by using openwrt,netdev-name to fix the collision.

Signed-off-by: J. S. Seldenthuis <jseldenthuis@lely.com>
Link: https://github.com/openwrt/openwrt/pull/18082
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-03-16 22:26:20 +01:00
Rosen Penev
148f82ad45 ipq806x: use nvmem for wifi mac
Userspace handling is deprecated.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16229
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-03-16 22:19:46 +01:00
Til Kaiser
86a691cd25 x86: add Supermicro SuperServer E302-9D
This adds a default network configuration for the
Supermicro SuperServer SYS-E302-9D by adding all
onboard network ports to the default `lan` interface.

The network ports `eth0` till `eth3` use the `igb`
driver, whereas `eth4` till `eth7` use `i40e`.

--- Hardware Highlights ---
CPU: Intel Xeon D-2123IT, 2.20GHz, 4 cores
RAM: Up to 256GB in 4 DIMM Slots
Ports: 4x 1GbE, 2x 10GBase-T, 2x 10G SFP+, 1x IPMI 2.0
Video: 1x VGA
USB: 2x 3.0

Signed-off-by: Til Kaiser <mail@tk154.de>
Link: https://github.com/openwrt/openwrt/pull/17990
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-03-16 22:14:29 +01:00
Lech Perczak
8951ac6f65 ath79: ZTE MF281: use specific board definition file for qca9888
Using board definition file extracted from stock firmware yields 50%
throughput improvement in RX direction under iperf3 test.
Make the device use temporary files from firmware_qca-wireless.git
temporarily, as well as select the specific variant in the device tree
files. The device uses same board file as the MF286C.

Signed-off-by: Lech Perczak <lech.perczak@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17620
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-03-16 22:10:05 +01:00
Lech Perczak
5ac6f56dbe ath79: support ZTE MF286C
ZTE MF286 is an indoor LTE category 12 CPE router with simultaneous
dual-band 802.11ac plus 802.11n Wi-Fi radios and quad-port gigabit
Ethernet switch, FXS and external USB 2.0 port.

Software-wise it's compatible with previous MF286A, save for different
5GHz Wi-Fi board definition file, requiring a separate image.

Hardware highlights:
- CPU: QCA9563 SoC at 775MHz,
- RAM: 128MB DDR2,
- NOR Flash: MX25L1606E 2MB SPI Flash, for U-boot only,
- NAND Flash: W25N01GV 128MB SPI NAND-Flash, for all other data,
- Wi-Fi 5GHz: QCA9886 2x2 MIMO 802.11ac Wave2 radio,
- WI-Fi 2.4GHz: QCA9563 3x3 MIMO 802.11n radio,
- Switch: QCA8337v2 4-port gigabit Ethernet, with single SGMII CPU port,
- WWAN: MDM9250-based category 12 internal LTE modem
  in extended  mini-PCIE form factor, with 5 internal antennas and
  2 external antenna connections, single mini-SIM slot.
- FXS: one external ATA port (handled entirely by modem part) with two
  physical connections in parallel,
- USB: Single external USB 2.0 port,
- Switches: power switch, WPS, Wi-Fi and reset buttons,
- LEDs: Wi-Fi, Test (internal). Rest of LEDs (Phone, WWAN, Battery,
  Signal state) handled entirely by modem. 4 link status LEDs handled by
  the switch on the backside.
- Label MAC device: eth0

Internal modem of MF286C is supported via uqmi.

Console connection: connector X2 is the console port, with the following
pinout, starting from pin 1, which is the topmost pin when the board is
upright:
- VCC (3.3V). Do not use unless you need to source power for the
  converer from it.
- TX
- RX
- GND
Default port configuration in U-boot as well as in stock firmware is
115200-8-N-1.

Installation:
Due to different flash layout from stock firmware, sysupgrade from
within stock firmware is impossible, despite it's based on QSDK which
itself is based on OpenWrt.

STEP 0: Stock firmware update:
As installing OpenWrt cuts you off from official firmware updates for
the modem part, it is recommended to update the stock firmware to latest
ath79: support ZTE MF286C

STEP 1: Booting initramfs image:

Method 1: using serial console (RECOMMENDED):
- Have TFTP server running, exposing the OpenWrt initramfs image, and
  set your computer's IP address as 192.168.0.22. This is the default
  expected by U-boot. You may wish to change that, and alter later
  commands accordingly.
- Connect the serial console if you haven't done so already,
- Interrupt boot sequence by pressing any key in U-boot when prompted
- Use the following commands to boot OpenWrt initramfs through TFTP:

  setenv serverip 192.168.0.22
  setenv ipaddr 192.168.0.1
  tftpboot 0x81000000 openwrt-ath79-nand-zte_mf286c-initramfs-kernel.bin
  bootm 0x81000000

  (Replace server IP and router IP as needed). There is no  emergency
  TFTP boot sequence triggered by buttons, contrary to MF283+.
- When OpenWrt initramfs finishes booting, proceed to actual
  installation.

STEP 2: Backing up original software:
As the stock firmware may be customized by the carrier and is not
officially available in the Internet, IT IS IMPERATIVE to back up the
stock firmware, if you ever plan to returning to stock firmware.
It is highly recommended to perform backup using both methods, to avoid
hassle of reassembling firmware images in future, if a restore is
needed.

Method 1: after booting OpenWrt initramfs image via TFTP:
- Connect your USB-UART adapter
- Dump stock firmware located on stock kernel and ubi partitions:

  ssh root@192.168.1.1: cat /dev/mtd9 > mtd3_ubiconcat0.bin
  ssh root@192.168.1.1: cat /dev/mtd4 > mtd4_kernel.bin
  ssh root@192.168.1.1: cat /dev/mtd9 > mtd5_ubiconcat1.bin

And keep them in a safe place, should a restore be needed in future.

Method 2: using stock firmware:
- Connect an external USB drive formatted with FAT or ext4 to the USB
  port.
- The drive will be auto-mounted to /var/usb_disk
- Check the flash layout of the device:

  cat /proc/mtd

  It should show the following:
  mtd0: 000a0000 00010000 "u-boot"
  mtd1: 00020000 00010000 "u-boot-env"
  mtd2: 00140000 00010000 "reserved1"
  mtd3: 000a0000 00020000 "fota-flag"
  mtd4: 00080000 00020000 "art"
  mtd5: 00080000 00020000 "mac"
  mtd6: 000c0000 00020000 "reserved2"
  mtd7: 00400000 00020000 "cfg-param"
  mtd8: 00400000 00020000 "log"
  mtd9: 000a0000 00020000 "oops"
  mtd10: 00500000 00020000 "reserved3"
  mtd11: 00800000 00020000 "web"
  mtd12: 00300000 00020000 "kernel"
  mtd13: 01a00000 00020000 "rootfs"
  mtd14: 01900000 00020000 "data"
  mtd15: 03200000 00020000 "fota"
  mtd16: 01d00000 00020000 "firmware"

  Differences might indicate that this is NOT a MF286C device but
  one of other variants.
- Copy over all MTD partitions, for example by executing the following:

  for i in 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15; do cat /dev/mtd$i > \
  /var/usb_disk/mtd$i; done

  "Firmware" partition can be skipped, it is a concatenation
  of "kernel" and "rootfs".

- If the count of MTD partitions is different, this might indicate that
  this is not a MF286C device, but one of its other variants.
- (optionally) rename the files according to MTD partition names from
  /proc/mtd
- Unmount the filesystem:

  umount /var/usb_disk; sync

  and then remove the drive.
- Store the files in safe place if you ever plan to return to stock
  firmware. This is especially important, because stock firmware for
  this device is not available officially, and is usually customized by
  the mobile providers.

STEP 3: Actual installation:
- Set your computer IP to 192.168.1.22/24
- scp the sysupgrade image to the device:

  scp -O openwrt-ath79-nand-zte_mf286a-squashfs-sysupgrade.bin \
  root@192.168.1.1:/tmp/

- ssh into the device and execute sysupgrade:

  sysupgrade -n /tmp/openwrt-ath79-nand-zte_mf286a-squashfs-sysupgrade.bin

- Wait for router to reboot to full OpenWrt.

STEP 4: WAN connection establishment
Since the router is equipped with LTE modem as its main WAN interface, it
might be useful to connect to the Internet right away after
installation. To do so, please put the following entries in
/etc/config/network, replacing the specific configuration entries with
one needed for your ISP:

config interface 'wan'
        option proto 'qmi'
        option device '/dev/cdc-wdm0'
        option auth '<auth>' # As required, usually 'none'
        option pincode '<pin>' # If required by SIM
        option apn '<apn>' # As required by ISP
        option pdptype '<pdp>' # Typically 'ipv4', or 'ipv4v6' or 'ipv6'

For example, the following works for most polish ISPs
config interface 'wan'
        option proto 'qmi'
        option device '/dev/cdc-wdm0'
        option auth 'none'
        option apn 'internet'
        option pdptype 'ipv4'

The required minimum is:
config interface 'wan'
        option proto 'qmi'
        option device '/dev/cdc-wdm0'
In this case, the modem will use last configured APN from stock
firmware - this should work out of the box, unless your SIM requires
PIN which can't be switched off.

If you have build with LuCI, installing luci-proto-qmi helps with this
task.

Restoring the stock firmware:

- Boot to initramfs as in step 3:
- Completely detach ubi0 partition using ubidetach /dev/ubi0_0
- Copy over the stock kernel image using scp to /tmp
- Erase kernel and restore stock kernel:
  (scp mtd4_kernel.bin root@192.168.1.1:/tmp/)
  mtd write kernel /tmp/mtd4_kernel.bin
  rm /tmp/mtd4_kernel.bin
- Copy over the stock partition backups one-by-one using scp to /tmp, and
  restore them individually. Otherwise you might run out of space in
  tmpfs:

  (scp -O mtd3_ubiconcat0.bin root@192.168.1.1:/tmp/)

  mtd write ubiconcat0 /tmp/mtd3_ubiconcat0.bin
  rm /tmp/mtd3_ubiconcat0.bin

  (scp -O mtd5_ubiconcat1.bin root@192.168.1.1:/tmp/)

  mtd write ubiconcat1 /tmp/mtd5_ubiconcat1.bin
  rm /tmp/mtd5_ubiconcat1.bin

- If the write was correct, force a device reboot with

  reboot -f

Quirks and known issues
- It was observed, that CH340-based USB-UART converters output garbage
  during U-boot phase of system boot. At least CP2102 is known to work
  properly.
- Kernel partition size is increased to 4MB compared to stock 3MB, to
  accomodate future kernel updates - at this moment OpenWrt 5.10 kernel
  image is at 2.5MB which is dangerously close to the limit. This has no
  effect on booting the system - but keep that in mind when reassembling
  an image to restore stock firmware.
- uqmi seems to be unable to change APN manually, so please use the one
  you used before in stock firmware first. If you need to change it,
  please use protocok '3g' to establish connection once, or use the
  following command to change APN (and optionally IP type) manually:
  echo -ne 'AT+CGDCONT=1,"IP","<apn>' > /dev/ttyUSB0
- The only usable LED as a "system LED" is the blue debug LED hidden
  inside the case. All other LEDs are controlled by modem, on which the
  router part has some influence only on Wi-Fi LED.
- GPIO5 used for modem reset is a suicide switch, causing a hardware
  reset of whole board, not only the modem. It is attached to
  gpio-restart driver, to restart the modem on reboot as well, to ensure
  QMI connectivity after reboot, which tends to fail otherwise.
- Modem, as in MF283+, exposes root shell over ADB - while not needed
  for OpenWrt operation at all - have fun lurking around.
  The same modem module is used as in older MF286.

Signed-off-by: Lech Perczak <lech.perczak@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17620
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-03-16 22:10:04 +01:00
Lech Perczak
b60d241f2d ath79: ZTE MF286A: use specific board definition file for qca9888
Using board definition file extracted from stock firmware yields 50%
throughput improvement in RX direction under iperf3 test.
Make the device use temporary files from firmware_qca-wireless.git
temporarily, as well as select the specific variant in the device tree
files.

Signed-off-by: Lech Perczak <lech.perczak@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17620
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-03-16 22:09:20 +01:00
Chukun Pan
3a1bc14733 generic: silence led set_brightness error message
Currently, if the phy driver does not implement the led_brightness_set
function, setting the LED will result in the following error message:

leds mdio-bus:*:green:lan: Setting an LED's brightness failed (-524)

Backport a patch to silence this error message.

Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
Link: https://github.com/openwrt/openwrt/pull/18080
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-03-16 19:50:21 +01:00
Mikhail Zhilkin
043df82cea mediatek: Xiaomi AX3000t: enable SPI calibration
Xiaomi enabled SPI calibration in new firmware:
- 1.0.84 and newer (rd03 model)
- 1.0.76 and newer (rd23 model)

This enables SPI calibration routines in OpenWrt too.

Tested-by: Aleksandr Danilov <sc16me@gmail.com>
Signed-off-by: Mikhail Zhilkin <csharper2005@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17976
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-03-16 19:21:49 +01:00
Andrew LaMarche
054b870196 generic: import rtl8261n patches from mediatek
RTL8261N is used on some Airoha and Realtek devices. Move the driver
from Mediatek to generic so it can be used everywhere.

Signed-off-by: Andrew LaMarche <andrewjlamarche@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18163
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-03-16 19:05:56 +01:00
Simon Etzlstorfer
06142cc1e7 ramips: mt7621: add support for Maginon MC-1200AC
This commit adds support for Maginon MC-1200AC.

Hardware specifications:

SoC: MediaTek MT7621
Flash: 16 MB SPI Flash
RAM: 128 MB RAM
Ethernet:
2x 1G RJ45 ports
WLAN:
2.4GHz: MediaTek MT7603E
5GHz: MediaTek MT7613BE
LEDs: Red and blue status lights
Power: 12V DC
UART: 3.3V, 115200 baud, 8N1, like printed on silkscreen (GND,TX,RX,3.3V)

MAC addresses
-------------
+---------+-------------------+
|         | MAC example       |
+---------+-------------------+
| LAN     | 80:3F:5D:xx:xx:72 |
| WAN     | 80:3F:5D:xx:xx:73 |
| WLAN 2g | 80:3F:5D:xx:xx:74 |
| WLAN 5g | 80:3F:5D:xx:xx:75 |
+---------+-------------------+

Installation:

The firmware can be flashed via the U-Boot recovery web interface.
To access it, hold the reset button while powering on the device.
U-Boot recovery web interface is then avaiable at 192.168.10.1.

Alternatively, the image can be loaded using the U-Boot serial interface and TFTP.

Signed-off-by: Simon Etzlstorfer <simon@etzi.at>
Link: https://github.com/openwrt/openwrt/pull/17671
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-03-16 18:24:08 +01:00
Álvaro Fernández Rojas
1f20752be0 bcm27xx: refresh kernel configs
Refresh kernel config for all bcm27xx subtargets.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-03-16 15:48:10 +01:00
Álvaro Fernández Rojas
251f76c1c6 bcm27xx: pull 6.6 patches from RPi repo
Adds latest 6.6 patches from the Raspberry Pi repository.

These patches were generated from:
https://github.com/raspberrypi/linux/commits/rpi-6.6.y/
With the following command:
git format-patch -N v6.6.83..HEAD
(HEAD -> 08d4e8f52256bd422d8a1f876411603f627d0a82)

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-03-16 08:04:48 +01:00
Hauke Mehrtens
abd0418684 kernel: Activate CONFIG_NET_SWITCHDEV in generic config
The CONFIG_NET_SWITCHDEV option is needed by CONFIG_DSA and some other
options. It is boolean, we have to compile it into the kernel it self.
Activate it for all targets in the generic configuration, it is already
activated for most of them. This allows to install DSA drivers as a
module.

On the ramips/mt7620 target the kernel would grown by 4.5kB.

For some small targets which do not support a DSA switch by default the
option is deactivated.

Link: https://github.com/openwrt/openwrt/pull/17668
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-03-15 13:54:59 +01:00
Aleksander Jan Bajkowski
a18d95f35b lantiq-gphy-firmware: add package
This has several advantages:
* reduction in the size of the kernel and the complete image. Individual
devices only need two of the four binaries. In combination with the second
commit it reduces kernel size by 64.2 kB and image size by 22.8 kB,
* the option to extend this package with firmware for future SoCs,
* combining the kernel and binary blobs with another licence may not be
fully compatible with the licence used by Linux. The current PHY firmware
is built into the kernel. This comit converts it to a package.

Tested on AVM 5490 and BT Home Hub 5A.

Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
Link: https://github.com/openwrt/openwrt/pull/17669
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-03-15 13:52:40 +01:00
Aleksander Jan Bajkowski
62bf028732 lantiq: xrx200: convert switch driver to package
The next commit converts the firmware used by this driver
to a package. Due to the fact that the driver is shipped
as a package the firmware is already available.

Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
Link: https://github.com/openwrt/openwrt/pull/17669
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-03-15 13:52:40 +01:00
Boyang Sun
f4ba980f15 mediatek: Update mt7622-reyee-ax3200-e5.dts
fixed wrong reg.
The original commit assumed the size part was the end of the reg.

Fixes: 7dbac3433f ("mediatek: add support for reyee AX3200-E5")
Signed-off-by: Boyang Sun <boyinthesun@163.com>
Link: https://github.com/openwrt/openwrt/pull/18074
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-03-15 13:48:00 +01:00
Eric Schäfer
f3eca7cbc1 ramips: add support for Zyxel LTE7490-M904
The Zyxel LTE7490-M904 is an 802.3at PoE powered LTE outdoor (IP68) CPE
with integrated directional antennas.

Specifications:

- SoC: MediaTek MT7621AT
- RAM: 256 MB
- Flash: 128 MB MB NAND (MX30LF1G18AC)
- WiFi: MediaTek MT7603E 802.11b/g/n
- Switch: 1 LAN port (1 Gbps)
- LTE/3G/2G: Quectel EG18-EA LTE-A Cat. 18 connected by USB3 to SoC
- SIM: 1 micro-SIM slots under transparent cover
- Buttons: Reset, WLAN under same cover
- LEDs: Multicolour green/red/amber under same cover (visible)
- Power: 802.3at PoE via LAN port

The device is built as an outdoor ethernet to LTE bridge or router.
The wifi interface is intended for installation and/or temporary
management purposes only.

UART Serial:

57600N1, located on populated 5 pin header J5:

 [o] GND
 [ ] key - no pin
 [o] RX
 [o] TX
 [o] 3.3V Vcc

Remove the SIM/button/LED cover and 12 screws holding the back plate
and antenna cover together. Be careful with the cables.

Installation from OEM web GUI:

- Log in as "admin" on OEM web GUI
- Upload OpenWrt initramfs-recovery.bin image on the
  Maintenance -> Firmware page
- Wait for OpenWrt to boot and ssh to root@192.168.1.1
- Sysupgrade to the OpenWrt sysupgrade image and reboot

For more details about flashing see:
2449a63208 (ramips: mt7621: Add support for ZyXEL NR7101, 2021-04-19)

Main porting work done by Ernesto Castellotti <ernesto@castellotti.net>:
bf1c12f68b (ramips: add support for ZyXEL LTE7490-M904, 2023-12-20)

Signed-off-by: Eric Schäfer <eric@es86.de>
Link: https://github.com/openwrt/openwrt/pull/17485
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-03-15 13:39:41 +01:00
Roy H
3961b71776 ath79: add support for Longdata APS256
Forum discussion : https://forum.openwrt.org/t/aps-256va-help-for-identification/143653/52

Specification:
Power: 12-36V input via 5,5/2,1 DC barrel jack, or 5V Micro USB-B
CPU: Atheros AR9344 rev 2
RAM: 128MB
Flash: 16MB
WI-Fi: 2.4GHz
Fast Ethernet: 1 WAN and 2 LAN
USB: 2 x USB-A, 1 x micro-USB-B (for power input)
WWAN: 3G modem via extended mini-PCIE form factor (can be replaced with Wifi 5GHz card)

The device come with custom openwrt BB an CC.

Because of limited LAN port, I disable GMAC0, so the WAN port can be connected to GMAC1 and function as LAN port as well.

Enable ssh access and Backup:

1.  open router admin page via LAN cable
2.  browse 192.168.111.1:8000
3.  login with password 123456
4.  click wifi icon on top menu
5.  change the path at the end of the url (after random hash) with /admin/system/flashops
        it will looks like this:
        http://192.168.111.1:8000/cgi-bin/luci/;stok=29698152cf64c980177a04f86c99ea0d/admin/system/flashops
        (the hash after "stok=" will be different)
6.  restore the config with this modified backup (can be created manually by changing dropbear config to allow ssh)
        https://drive.google.com/file/d/1Vs-k7DHBSRZFfkxv1cMOmgAPZfB-RUen/view?usp=sharing
7.  now you can login to ssh with root user and 123456 password, and backup all partition and upgrade firmware

!!! BACKUP EVERY PARTITION !!!

Flashing instructions:
- Flash directly from factory web interface accessed from "Enable ssh access" step 5

Signed-off-by: Roy H <roy@altbytes.com>
Link: https://github.com/openwrt/openwrt/pull/17939
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-03-15 13:35:41 +01:00
Roland Reinl
c13a050d5a ramips: Add support for Cudy M1200 v1
The M1200 v1 is similar to the TR1200 series from Cudy. Differences:
- Only 1 LAN port
- No USB

Specifications:
- MT7628
- MT7628AN (2.4G b/g/n) and MT7613BE (5G ac/n) wifi
- 128 MB RAM
- 16 MB flash

MAC Addresses:
- There is one on the label, e.g. xx:xx:xx:xx:xx:A4
- LAN (bottom connector) is the same as the label, e.g. xx:xx:xx:xx:xx:A4
- WAN (top connector) is label + 1, e.g. xx:xx:xx:xx:xx:A5
- WLAN (2.4G) is the same as the label, e.g. xx:xx:xx:xx:xx:A4
- WLAN (5G) is label + 2, e.g. xx:xx:xx:xx:xx:A6

UART:
- is available via the pin holes on the board
- The pinout is printed to the board: P: VCC, G: GND, R: RX, T:TX
- RX and TX require solder bridges to be installed
- Do NOT connect VCC
- Settings: 3.3V, 115200, 8N1

GPIO:
- There are two LEDs: Red (GPIO 4) and White (GPIO 0)
- There are two buttons: Reset (GPIO 11) and WPS (GPIO 5)

Migration to OpenWrt:
- Download the migration image from the Cudy website (it should be available as soon as OpenWrt officially supports the device)
- Connect computer to LAN (bottom connector) and flash the migration image via OEM web interface
- OpenWrt is now accessible via 192.168.1.1

Revert back to OEM firmware:
- Set up a TFTP server on IP 192.168.1.88 and connect to the WAN port (upper port)
- Provide the Cudy firmware as recovery.bin in the TFTP server
- Press the reset button while powering on the device
- Recovery process is started now
- When recovery process is done, OEM firmware is accessible via 192.168.10.1 again

General information:
- No possibility to load a initramfs image via U-Boot because there is no option to interrupt U-Boot

Signed-off-by: Roland Reinl <reinlroland+github@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18233
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-03-15 10:54:32 +01:00
Shiji Yang
4efb4a26d2 stm32: modules: fix stm32-hash package build
* Remove misplaced backslash to fix the build warning:

WARNING: can't parse line: FILES:=/drivers/crypto/stm32/stm32-hash.ko

* Add missing dependency package kmod-crypto-engine:

Package kmod-stm32-hash is missing dependencies for the following libraries:
crypto_engine.ko

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
Link: https://github.com/openwrt/openwrt/pull/18241
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-03-15 10:44:30 +01:00
Michel Lespinasse
59215154a0 rockchip: set network IRQ affinity to fast CPU cores
The nanopi R6S, R6C and nanopc T6 platforms are based on rk3588(s) SoC,
which has fast and slow CPU cores. Set up network interrupt affinity to be
on the fast CPU cores by default. This is similar to the way this was
already configured on nanopi R4S.

Signed-off-by: Michel Lespinasse <michel@lespinasse.org>
Link: https://github.com/openwrt/openwrt/pull/17638
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-03-15 10:37:59 +01:00
Michel Lespinasse
2e7d060fd1 rockchip: configure reset button on nanopi R6
Set up openwrt to handle the reset button appropriately (so that it
can trigger the various recovery modes) on the nanopi R6S and R6C models.

Signed-off-by: Michel Lespinasse <michel@lespinasse.org>
Link: https://github.com/openwrt/openwrt/pull/17638
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-03-15 10:37:59 +01:00
Michel Lespinasse
de9ad11dac rockchip: show boot stages on nanopi R6 system LED
Set up openwrt to show boot progress on the nanopi R6S or R6C system LED.

The LED blinking states indicate the boot stage. The LED is defined as
a power LED, but can still be set to heartbeat in /etc/config/system
after the system is done booting.

Signed-off-by: Michel Lespinasse <michel@lespinasse.org>
Link: https://github.com/openwrt/openwrt/pull/17638
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-03-15 10:37:59 +01:00
John Audia
748682e855 kernel: bump 6.6 to 6.6.83
Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.83

Removed upstreamed:
	bcm27xx/patches-6.6/950-0483-usb-xhci-borrow-upstream-TRB_FETCH-quirk-on-VL805-ho.patch[1]

Manually rebased:
	bcm27xx/patches-6.6/950-0061-Revert-Revert-xhci-add-quirk-for-host-controllers-th.patch
	bcm27xx/patches-6.6/950-0485-usb-xhci-add-XHCI_VLI_HUB_TT_QUIRK.patch
	bcm27xx/patches-6.6/950-0519-usb-dwc3-Set-DMA-and-coherent-masks-early.patch

All other patches automatically rebased.

1. https://web.git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/drivers/usb/host/xhci-pci.c?h=linux-6.6.y&id=c401b1b4b835d66792e884b76264d742a20d931d

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

Signed-off-by: John Audia <therealgraysky@proton.me>
[fixed issues with bcm27xx patches]
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-03-15 10:25:57 +01:00
Mieczyslaw Nalewaj
bdd5587b6b generic: rename backport patch 852
Rename 852-stable-bus-mhi-host-pci_generic-constify-modem_telit_fn980_.patch
to 852-v6.9-stable-bus-mhi-host-pci_generic-constify-modem_telit_fn980.patch
because it is used since kernel 6.9-rc1 (https://lore.kernel.org/lkml/Zfwv2y7P7BneKqMZ@kroah.com/).

Link: https://web.git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-6.9.y&id=2ec11b5d6d900b17c7d001fbee4751fd2aa58917
Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/18237
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-03-15 10:22:22 +01:00
Mauri Sandberg
a53417cc30 ramips: Cleanup Genexis EX400 upgrade script
The code can be made more efficient by not extracting the sysupgrade.tar but
rather just querying for the filesize within the archive. Resorting to
manual update of UBI volume is extra work too, setting CI_KERNPART=rootfs_0
is enough.

Suggested-by: Andreas Gnau <andreas.gnau@iopsys.eu>
Signed-off-by: Mauri Sandberg <maukka@ext.kapsi.fi>
Link: https://github.com/openwrt/openwrt/pull/17806
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-03-15 10:18:50 +01:00
Daniel Golle
6c8cc86295 mediatek: filogic: openwrt-one: drop kmod-nvme
The OpenWrt One is the only board listing kmod-nvme as part of it's
default package set.

Remove kmod-nvme from the default package set as the board is sold
without an NVMe SSD and the M.2 slot can also be used for other
purposes.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2025-03-14 11:23:57 +00:00
Andreas Gnau
4e3342f5f1 ramips: mt7621: Reduce hardcoded metadata for Inteno Y3 imgs
Instead of hardcoded metadata, put some sensible data instead.

Signed-off-by: Andreas Gnau <andreas.gnau@iopsys.eu>
Link: https://github.com/openwrt/openwrt/pull/17551
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-03-13 21:33:47 +01:00
Andreas Gnau
3e7337feea ramips: Add support for Genexis / Inteno Pulse EX400
Add support for Genexis Pulse EX400 / Inteno Pulse EX400. A branded
variant for the Finnish ISP DNA has already been added in fea2264d9f
(ramips: mt7621: Add DNA Valokuitu Plus EX400, 2023-07-31). This commit
adds support for the generic variants with Inteno and Genexis branding.
Inteno changed its name to Genexis and both brandings exist.

In terms of electronics, there is no difference between the DNA-branded
version and other brandings. LED markings on the case are different,
though. While the DNA-version has a "software-update" LED, the other
versions have a WPS LED. To reduce user confusion, create a separate
image.

Add the different device-tree with the different LED and rename things
to work the same way for both variants.

Specifications:
- Device: Genexis Pulse EX400 / Inteno Pulse EX400
- SoC: MT7621A
- Flash: 256 MB NAND
- RAM: 256 MB
- Ethernet: Built-in, 2 x 1 GbE
- Wifi: MT7603 2.4 GHz 2x2 MIMO, MT7615 5 GHz 4x4 MU-MIMO
- USB: 1x 2.0
- LEDs (GPIO): green/red status, green WPS
- LEDs (SX9512, unsupported): Broadband, Wi-Fi 2.4G, Wi-Fi 5G
- Buttons (GPIO): Reset
- Buttons (SX9512, unsupported): Wi-Fi 2.4G, Wi-Fi 5G, WPS

MAC addresses:
- LAN:     U-Boot 'ethaddr' (label)
- WAN:     label + 1
- 2.4 GHz: label + 6
- 5 GHz:   label + 7

Serial:
 There is a black block connector next to the red ethernet connector. It
 is accessible also through holes in the casing.

Pinout (TTL 3.3V)
 +---+---+
 |Tx |Rx |
 +---+---+
 |Vcc|Gnd|
 +---+---+

Firmware:
 The vendor firmware is a fork of OpenWrt (Reboot) with a kernel version
 4.4.93. The flash is arranged as below and there is a dual boot
 mechanism alternating between rootfs_0 and rootfs_1.

 +-------+------+------+-----------+-----------+
 |       | env1 | env2 | rootfs_0  |  rootfs_1 |
 |       +------+------+-----------+-----------+
 |       |         UBI volumes                 |
 +-------+-------------------------------------+
 |U-Boot |             UBI                     |
 +-------+-------------------------------------+
 |mtd0   |             mtd1                    |
 +-------+-------------------------------------+
 |                     NAND                    |
 +---------------------------------------------+

 In OpenWrt rootfs_0 will be used as a boot partition that will contain the
 kernel and the dtb. The squashfs rootfs and overlay are standard OpenWrt
 behaviour.

 +-------+------+------+-----------+--------+------------+
 |       | env1 | env2 | rootfs_0  | rootfs | rootfs_data|
 |       +------+------+-----------+--------+------------+
 |       |         UBI volumes                           |
 +-------+-----------------------------------------------+
 |U-Boot |             UBI                               |
 +-------+-----------------------------------------------+
 |mtd0   |             mtd1                              |
 +-------+-----------------------------------------------+
 |                     NAND                              |
 +-------------------------------------------------------+

U-boot:
 With proper serial access, booting can be halted to U-boot by pressing
 any key. TFTP and flash writes are available, but only the first one has
 been tested.

 NOTE: Recovery mode can be accessed by holding down the reset button while
 powering on the device. The led 'Update' will show a solid green light
 once ready. A web server will be running at 192.168.1.1:80 and it will
 allow flashing a firmware package. You can cycle between rootfs_0 and
 rootfs_1 by pressing the reset button once.

Root password:
 With the vendor web UI create a backup of your settings and download the
 archive to your computer. Within the archive in the file
 /etc/shadow replace the password hash for root with that of a password you
 know. Restore the configuration with the vendor web UI and you will have
 changed the root password.

SSH access:
 You might need to enable the SSH service for LAN interface as by default
 it's enabled for WAN only.

Installing OpenWrt:
 With the vendor web UI, or from the U-Boot recovery UI, install the
 OpenWrt factory image. Alternatively, ssh to the device and use
 sysupgrade -n from cli.

 Finalize by installing the OpenWrt sysupgrade image to get a fully
 functioning system.

Reverting to the vendor firmware:

 Boot with OpenWrt initramfs image
  - Remove volumes rootfs_0, rootfs and rootfs_data and create vendor
    volumes.

    ubirmvol /dev/ubi0 -n 2
    ubirmvol /dev/ubi0 -n 3
    ubirmvol /dev/ubi0 -n 4
    ubimkvol /dev/ubi0 -N rootfs_0 -S 990
    ubimkvol /dev/ubi0 -N rootfs_1 -S 990

    Power off and enter to the U-boot recovery to install the vendor
    firmware.

Signed-off-by: Andreas Gnau <andreas.gnau@iopsys.eu>
Link: https://github.com/openwrt/openwrt/pull/17551
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-03-13 21:33:46 +01:00
Andreas Gnau
e8603f3b5a ramips: mt7621: Move common DNA EX400 defs to dtsi
Move common definitions for DNA Valokuitu Plus EX400 to a dtsi include.
This is in preparation of adding the non-branded variant of the device
produced by Genexis / Inteno in the next commit. The device with DNA
branding differs in the LED labling on the device.

Signed-off-by: Andreas Gnau <andreas.gnau@iopsys.eu>
Link: https://github.com/openwrt/openwrt/pull/17551
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-03-13 21:33:46 +01:00
John Audia
7cf8f61eb2 kernel: bump 6.6 to 6.6.82
Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.82

All patches automatically rebased.

Added CONFIG_MICROCODE_INITRD32=y to x86: config-6.6[1]

1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/diff/arch/x86/Kconfig?id=v6.6.82&id2=v6.6.81

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

Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/18188
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-03-13 00:08:36 +01:00
John Audia
aabc61d93f kernel: bump 6.6 to 6.6.81
Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.81

All patches automatically rebased.

For x86, CONFIG_MICROCODE_LATE_FORCE_MINREV was introduced in this bump
with hrecommendation to enable it[1].

1. https://web.git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/diff/arch/x86/Kconfig?id=v6.6.81&id2=v6.6.80

Build system: x86/64
Build-tested: bcm27xx/bcm2712, flogic/xiaomi_redmi-router-ax6000-ubootmod, ramips/tplink_archer-a6-v3
Run-tested: bcm27xx/bcm2712, 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/18188
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-03-13 00:08:36 +01:00
Hauke Mehrtens
8d69613125 armsr: Fix kmod-fsl-dpaa2-net build
The build failed because the CONFIG_FSL_DPAA2_ETH_DCB option was not
set. Activate this option to build the driver with DCB support when it
is available.

Fixes: 40f1db9cb1 ("kernel: Add KERNEL_DCB (Data Center Bridging)")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-03-12 23:56:09 +01:00
Martin Schiller
843e50f4fa mediatek: bpi-r4: create additional emmc gpt artifact
This makes it possible to initialize the eMMC from scratch like it is
done for the BPI-R3 mini (without an SD card).

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2025-03-12 12:04:08 +01:00
Martin Schiller
bbe58f9830 generic: net: phy: sfp: backport some FS copper SFP fixes
This fixes the handling of some FS copper SFP modules using the RollBall
protocol and needing some extra treatment.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2025-03-12 12:01:53 +01:00
Rui Salvaterra
17cfcaa754 generic: enable CONFIG_USB_NET_DRIVERS
This is only relevant for devices with USB support, and in itself changes
nothing in the kernel build. However, it is useful to further simplify the
dependencies of some USB network devices.

Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
2025-03-10 12:39:42 +00:00
Rosen Penev
0cdcba238f ramips: use regulator for USB
The DWC2 driver used here supports a vbus-supply property to control
the GPIO. Use it instead of the local gpio,exports solution.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17357
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-03-10 10:42:13 +01:00
Coia Prant
6a1bdcf545 ramips: add support for Hongdian H8922 v30
This is an industrial 4G router equipped with OpenWrt 14.07 OEM
customized version

WARNING: The original firmware device tree is common to multiple
boards, and the device tree name is H9350. This submitted device
tree is a modified version, which deletes the non-this-device parts
and adds GPIO watchdog.

Specification:
- SoC: MediaTek MT7620A
- Flash: 16 MB
- RAM: 128 MB
- Power: DC 5V-36V 1.5A
- Ethernet: 1x WAN, 4x LAN (10/100 Mbps)
- Wireless radio: 802.11n 2.4g-only
- LED:
  System/Power (RUN): GPIO/26 active-low
  Ethernet: 1x WAN, 4x LAN
  Modem 1: GPIO/66 active-low
  RF 1 (Modem 1 Signal): GPIO/67 active-low
  Modem 2: GPIO 71 active-low
  RF 2 (Modem 2 Signal): GPIO/24 active-low
  WLAN: GPIO/72 active-low
  WPS: GPIO/12 active-low
- Button:
  WPS / RESET: GPIO/34 active-low
- UART: 1x UART on PCB - 115200 8N1
- GPIO Watchdog: GPIO/62 mode=toggle timeout=1s
- PCIe: 2x miniPCIe for modem
- SIM Slots: 2x SIM Slots

Issue:
- No factory partition, eeprom is located
 at /lib/firmware/mt7620a.eeprom

Flash instruction:
Using UART:
1. Configure PC with a static IP address and setup an TFTP server.
2. Put rootfs into the tftp directory.
3. Connect the UART line as described on the PCB.
4. Power up the device and press Ctrl+C to break auto boot.
5. Use `system 6` command and follow the instruction to set device
   and tftp server IP address and input the rootfs file name.
   U-boot will then load the rootfs and write it into
   the flash.
6. Use `system 1` command and follow the instruction to set device
   and tftp server IP address and input the firmware file name.
   U-boot will then load the firmware once.
7. Login to LuCI and use LuCI upgrade firmware.

Original Firmware Dump / More details:
https://blog.gov.cooking/archives/research-hongdian-h8922-and-flash.html

Signed-off-by: Coia Prant <coiaprant@gmail.com>
Tested-by: Coia Prant <coiaprant@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17472
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-03-10 00:42:44 +01:00
Bernardus Jansen
6da7352ebe ath79: add support for Fortinet FAP-221-C
FCC ID: TVE-121402

Fortinet FAP-221-C is an indoor access point with 1gb ethernet port,
dual-band wireless, internal antenna plates, and 802.3at PoE+.

Hardware and board design are from Senao. The device appears very
similar to the EnGenius EAP1200H, albeit with double the flash and RAM.

**Specifications:**

  - QCA9557 SOC
  - QCA9882 WLAN PCI card, 5 GHz, 2x2, 26dBm
  - AR8035-A PHY RGMII GbE with PoE+ IN
  - 40 MHz clock
  - 32 MB FLASH FL256SAIFR0
  - 2x 128 MB RAM NT5TU64M16HG
  - UART populated
  - 4 internal antenna plates
  - 5 LEDs, 1 button (power, 'warning', eth0, wifi1, wifi2) (reset)

  Amber LAN LED appears hardwired to ethernet port. Power LED is green
only. Other LEDs are amber/green.

**MAC addresses:**

1 MAC Address in flash at end of uboot
ASCII encoded, no delimiters
Labeled as "MAC Address" on case

**Serial Access:**

Pinout: (arrow) VCC GND RX TX

Pins are populated with a header and traces not blocked.
Bootloader is set to 9600 baud, 8 data, 1 stop.

**Console Access:**

Bootloader:

Interrupt boot with Ctrl+C
Press "k" and enter password "1"
OR
Hold reset button for 5 sec during power on
Interrupt the TFTP transfer with Ctrl+C

to print commands available, enter "help"

OEM:

default username is "admin", password blank
telnet is available at default address 192.168.1.2
serial is available with baud 9600

to print commands available, enter "help"
or tab-tab (busybox list of commands)

**Installation:**

Use factory.bin with OEM upgrade procedures
OR
Use initramfs.bin with uboot TFTP commands.
Then perform a sysupgrade with sysupgrade.bin

**TFTP Recovery:**

Using serial console, load initramfs.bin using TFTP
to boot openwrt without touching the flash.

**Return to OEM:**

The best way to return to OEM firmware
is to have a copy of the MTD partitions
before flashing Openwrt.

Backup copies should be made of partitions
"fwconcat0", "loader", and "fwconcat1"
which together is the same flash range
as OEM's "rootfs" and "uimage"
by loading an initramfs.bin
and using LuCI to download the mtdblocks.

It is also possible to extract from the
OEM firmware upgrade image by splitting it up
in parts of lengths that correspond
to the partitions in openwrt
and write them to flash,
after gzip decompression.

After writing to the firmware partitions,
erase the "reserved" partition and reboot.

Signed-off-by: Bernardus Jansen <bernardus@bajansen.nl>
Link: https://github.com/openwrt/openwrt/pull/18109
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-03-09 19:57:26 +01:00
Hauke Mehrtens
40f1db9cb1 kernel: Add KERNEL_DCB (Data Center Bridging)
The kmod-mlxsw-spectrum driver activated CONFIG_DCB indirectly already
on all targets which are building this driver. All other DCB capable
driver did not activate their DCB support.

CONFIG_DCB increases the uncompressed kernel size by about 7.8KB.

CONFIG_DCB is only needed some data center Ethernet cards and not used
on normal routers. Activate it only on the x86_64 and the armsr_arm64
target which are used on normal servers or in VMs.

Link: https://github.com/openwrt/openwrt/pull/17672
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-03-09 17:05:26 +01:00
Roland Reinl
8a78637670 ramips: Add support for Cudy M1300 v2
The M1300 v2 is similar to the WR1300 series from Cudy. Differences:
- Only 1 LAN port
- No USB

Specifications:
- MT7621
- MT7603E (2.4G b/g/n) and MT7613BE (5G ac/n) wifi
- 128 MB RAM
- 16 MB flash

MAC Addresses:
- There is one on the label, e.g. xx:xx:xx:xx:xx:1C
- LAN (bottom connector) is the same as the label, e.g. xx:xx:xx:xx:xx:1C
- WAN (top connector) is label +2, e.g. xx:xx:xx:xx:xx:1E
- WLAN (2.4G) is the same as the label, e.g. xx:xx:xx:xx:xx:1C
- WLAN (5G) is the same as WAN, e.g. xx:xx:xx:xx:xx:1E

UART:
- is available via the pin holes on the board
- From inner to outer pin: TX, RX, GND, VCC
- Do NOT connect VCC
- Settings: 3.3V, 115200, 8N1

GPIO:
- There are two LEDs: Red (GPIO 3) and White (GPIO 4)
- There are two buttons: Reset (GPIO 8) and WPS (GPIO 10)

Migration to OpenWrt:
- Download the migration image from the Cudy website (it should be available as soon as OpenWrt officially supports the device)
- The migration image is also available here until a image is provided by Cudy: https://github.com/RolandoMagico/openwrt-build/releases/tag/M1300_Build_20240222
- File: openwrt-ramips-mt7621-cudy_m1300-v2-squashfs-flash-signed.bin
- Connect computer to LAN (bottom connector) and flash the migration image via OEM web interface
- In the migration image, LAN and WAN are swapped. Computer must be connected to the other port after flashing
- OpenWrt is now accessible via 192.168.1.1
- After flashing an up to date OpenWrt image, LAN and WAN settings are again the same as in the OEM firmware
- So use the other connector again

Revert back to OEM firmware:
- Set up a TFTP server on IP 192.168.1.88 and connect to the LAN port (lower port)
- Provide the Cudy firmware as recovery.bin in the TFTP server
- Press the reset button while powering on the device
- Recovery process is started now
- When recovery process is done, OEM firmware is accessible via 192.168.10.1 again

General information:
- No possibility to load a initramfs image via U-Boot because there is no option to interrupt U-Boot

Signed-off-by: Roland Reinl <reinlroland+github@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18139
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-03-09 16:51:26 +01:00
Aleksander Jan Bajkowski
a2fd837e2e lantiq: xrx200_legacy: migrate ECI V-2FUb/R to upstream PHY LED control
This commit switches the control of the leds connected to the Lantiq PEF7071V
PHY to an upstream solution. There should be no functional changes.

Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
Link: https://github.com/openwrt/openwrt/pull/18153
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-03-08 20:26:03 +01:00
Tianling Shen
2091c29578 ramips: fix reading mac address for hiwifi hc5962
The spaces in variables have been stripped since commit 551e04f3c9
("base-files: strip space and tab characters from ASCII mac address"),
resulting "Vfac_mac " matches nothing. Fix the issue by removing the
space at end.

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
Link: https://github.com/openwrt/openwrt/pull/18150
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-03-08 20:12:11 +01:00
Mieczyslaw Nalewaj
a0449f8cf3 ramips: mt7621: 02_network optimization
Merging repeating blocks inside the ramips_setup_interfaces() function.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/18146
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-03-08 16:36:53 +01:00
Tianling Shen
96c6608346 mediatek: add support for CMCC A10
This board is also as known as SuperElectron ZN-M5 and ZN-M8. However,
for ZN-M5 and ZN-M8, there's another version uses ZX279128 as CPU
chip, which is unsupported.
You can check it in "高级设置" > "系统日志" > "内核日志" page from webUI.

Hardware specification:
  SoC: MediaTek MT7981B 2x A53
  Flash: 128 MB SPI-NAND
  RAM: 256MB
  Ethernet: 4x 10/100/1000 Mbps
  Switch: MediaTek MT7531AE
  WiFi: MediaTek MT7976C
  Button: Reset, WPS
  Power: DC 12V 1A

Stock layout flash instructions:
Login into webUI and upload sysupgrade firmware in "系统管理" > "升级固件" page.
Remember to unselect "保留配置" ("Keep configurations") first before doing that.

OpenWrt U-Boot layout flash instructions:
1. Flash stock layout firmware first.
2. Connect to the device via SSH, and backup everything,
   especially 'Factory' partition.
3. Unlock MTD partitions:
   apk update && apk add kmod-mtd-rw
   insmod mtd-rw i_want_a_brick=1
4. Write new BL2 and FIP:
   mtd write openwrt-mediatek-filogic-cmcc_a10-ubootmod-preloader.bin BL2
   mtd write openwrt-mediatek-filogic-cmcc_a10-ubootmod-bl31-uboot.fip FIP
5. Set static IP on your PC:
   IP 192.168.1.254/24, GW 192.168.1.1
6. Serve OpenWrt initramfs image using TFTP server.
7. Cut off the power and re-engage, wait for TFTP recovery to complete.
8. After OpenWrt has booted, perform sysupgrade.

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
Link: https://github.com/openwrt/openwrt/pull/18121
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-03-08 15:44:56 +01:00
Christian Marangi
ea6f3e49d6 generic: globally enable CONFIG_PCPU_DEV_REFCNT
Quoting the kconfig description for CONFIG_PCPU_DEV_REFCNT:

network device refcount are using per cpu variables if this option is
set. This can be forced to N to detect underflows (with a performance
drop).

This was introduced from kernel 5.13 and was wrongly set as disabled.
Some target actually enables it but this should be always enabled unless
refcount needs to be debugged (unlikely for production images)

Enable in generic and drop the entry in every other target.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18174
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-03-08 11:33:56 +01:00
Weikai Kong
213799e33e qualcommax: fap650: fix dtc warnings on partitions
This commit adds the missing properties to address the following warnings:
Warning (reg_format): /soc@0/spi@78b5000/flash@0/partitions/partition@x:reg: property has invalid length (8 bytes) (#address-cells == 2, #size-cells == 1)"

Signed-off-by: Weikai Kong <priv@pppig236.com>
Link: #18180
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-03-07 14:03:12 +01:00
Jiri Kastner
2f9ef8a256 mvebu/image/cortexa53.mk: add kmod-dsa-mv88e6xxx
all espressobins have topaz switch as same soc, so it is safe to add
kmod-dsa-mv88e6xxx to all

Signed-off-by: Jiri Kastner <cz172638@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18161
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-03-07 14:01:51 +01:00
Qingfang Deng
edddbaf79c kernel: Mediatek: set default EEE Tx LPI timer
Due to API changes during the backport, the default value of Tx LPI
timer is accidentally left unset, breaking the network if EEE is on.
Set the default timer to 1ms on init, and fix an incorrect condition.

Fixes: d8315d5358 ("kernel: backport Mediatek SoC EEE support")
Signed-off-by: Qingfang Deng <dqfext@gmail.com>
2025-03-07 20:39:13 +08:00
Martin Schiller
6af46a6984 mediatek: filogic: enable CONFIG_MITIGATE_SPECTRE_BRANCH_HISTORY
The Cortex-A73 in MediaTek Filogic 880 (MT7988A) is vulnerable to
multiple Spectre variants including Spectre-BHB.

Ref: https://developer.arm.com/Arm%20Security%20Center/Speculative%20Processor%20Vulnerability
Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2025-03-06 20:26:54 +01:00
Martin Schiller
5013efc4f9 mediatek: Refresh kernel configuration
I selected one subtarget after the other and refreshed their
configuration using this command:
  make kernel_oldconfig CONFIG_TARGET=subtarget

For MT7629 I had to re-add CONFIG_LEDS_SMARTRG_LED manually.
Otherwise, building MT7629 with ALL_KMODS we get prompted for
LEDS_SMARTRG_LED and this will break CI and in future buildbot
compilation. See commit 6bdea8c7bd ("mediatek: mt7629: 6.6: disable
LEDS_SMARTRG_LED by default") for more details.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2025-03-06 20:26:54 +01:00
Ahmed Naseef
ecd609f509 kernel: usbnet: Restore usb%d naming for cdc-ethernet devices with local MAC
Prior to commit 8a7d12d674,
cdc-ethernet USB LTE modems (e.g. Quectel EC200A) were consistently named
usb0. After 8a7d12d67, devices began renaming to eth1 due to an assumption
that local MAC addresses originate exclusively from the kernel. Some
devices provide driver-assigned local MACs, causing point-to-point
interfaces with driver-set MACs to adopt eth%d names instead of usb%d.

Restore the naming exception for point-to-point devices: interfaces
without driver MACs or with driver-provided local MACs will retain the
usb%d convention. This addresses issues reported in [1] and fixed in [2].

[1] https://lore.kernel.org/all/Z00udyMgW6XnAw6h@atmark-techno.com/
[2] https://lore.kernel.org/all/20241203130457.904325-1-asmadeus@codewreck.org/

Tested-by: Ahmed Naseef <naseefkm@gmail.com>
Signed-off-by: Ahmed Naseef <naseefkm@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17757
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-03-06 15:49:45 +01:00
Qingfang Deng
d8315d5358 kernel: backport Mediatek SoC EEE support
Backport Mediatek SoC EEE support from net-next upstream.

Signed-off-by: Qingfang Deng <dqfext@gmail.com>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
[refreshed patches]
2025-03-05 20:16:05 +00:00
Christian Marangi
90dee1ab30
airoha: drop MTD Airoha parser patch
Drop Airoha MTD parser patch as a better solution was agreed with a
fixed partition table.

Tested-by: Aleksander Jan Bajkowski <olek2@wp.pl> # tested on Quantum W1700k
Link: https://github.com/openwrt/openwrt/pull/18112
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2025-03-05 00:04:36 +01:00
Christian Marangi
7805100e15
airoha: an7581: cleanup kernel config
Cleanup kernel config and drop all unrelated configs. This have the side
effect of fixing the port not going up automatically due to Bridge VLAN
Filtering disabled.

Link: https://github.com/openwrt/openwrt/pull/18112
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2025-03-05 00:04:35 +01:00
George Moussalem
9a7192c08e qualcommax: ipq50xx: Add support for Linksys MR5500
Add support for Linksys MR5500 (Hydra 6 Pro).

Speficiations:
* SoC: Qualcomm IPQ5018 (64-bit dual-core ARM Cortex-A53 @ 1.0Ghz)
* Memory: Kingston D2516ECMDXGJD (512 MiB)
* Serial Port: 3v3 TTL 115200n8
* Wi-Fi: IPQ5018 (2x2 2.4 Ghz 802.11b/g/n/ax)
         QCN9024 (4x4:4 5 Ghz 802.11an/ac/ax)
* Ethernet: IPQ5018 integrated virtual switch connected to an external
            QCA8337 switch (4 Ports 10/100/1000 GBASE-T)
* Flash: Gigadevice GD5F2GQ5REYIH (256 MiB)
* LEDs: 1x multi-color PWM LED
        1x blue led for USB (GPIO 19 Active High)
* Buttons: 1x WPS (GPIO 27 Active Low)
           1x Reset (GPIO 28 Acive Low)
           5x ethernet port LEDs (amber for activity & green for link up)
* Peripherals: 1x USB2 (powered by GPIO 17 Active Low)
               support for USB3 will be added in a separate PR
* FCC ID: 2AYRA-03734

Flash instructions:
1. On OEM firmware, login to the device (typically at http://192.168.1.1) and click 'CA'
in the bottom right corner -> Connectivity -> Manual Upgrade. Alternatively, browse to
http://<router IP>/fwupdate.html.
Upgrade firmware using openwrt-qualcommax-ipq50xx-linksys_mr5500-squashfs-factory.bin image.
Optionally install on second partition, after first boot check actual partition:
fw_printenv -n boot_part
and install firmware on second partition using command in case of 2:
mtd -r -e kernel -n write openwrt-qualcommax-ipq50xx-linksys_mr5500-squashfs-factory.bin kernel
and in case of 1:
mtd -r -e alt_kernel -n write openwrt-qualcommax-ipq50xx-linksys_mr5500-squashfs-factory.bin alt_kernel
2. Installation using serial connection from OEM firmware (default login: root, password: admin):
fw_printenv -n boot_part
In case of 2:
flash_erase /dev/mtd12 0 0
nandwrite -p /dev/mtd12 openwrt-qualcommax-ipq50xx-linksys_mr5500-squashfs-factory.bin
or in case of 1:
flash_erase /dev/mtd14 0 0
nandwrite -p /dev/mtd14 openwrt-qualcommax-ipq50xx-linksys_mr5500-squashfs-factory.bin
After first boot install firmware on second partition:
mtd -r -e kernel -n write openwrt-qualcommax-ipq50xx-linksys_mr5500-squashfs-factory.bin kernel
or:
mtd -r -e alt_kernel -n write openwrt-qualcommax-ipq50xx-linksys_mr5500-squashfs-factory.bin alt_kernel
3. Back to the OEM firmware.
Download firmware from OEM website:
MR5500: https://support.linksys.com/kb/article/207-en/
From serial or SSH:
fw_printenv boot_part
in case of 1:
mtd -r -e alt_kernel -n write FW_MR5500_1.1.2.209598_prod.img alt_kernel
else in case of 2:
mtd -r -e kernel -n write FW_MR5500_1.1.2.209598_prod.img kernel
4. Boot from USB
This allows you loading an OpenWrt image into RAM and is meant for recovery scenarios only.
Enable loading image from USB in u-boot. From serial or SSH:
fw_setenv bootusb 'usb start && usbboot &loadaddr && bootm $loadaddr'
fw_setenv bootcmd 'run bootusb; if test $auto_recovery = no; then bootipq; elif test $boot_part = 1; then run bootpart1; else run bootpart2; fi'
Copy OpenWrt initramfs image to USB:
dd bs=1M if=openwrt-qualcommax-ipq50xx-linksys_mr5500-initramfs-uImage.itb of=/dev/sda

Signed-off-by: George Moussalem <george.moussalem@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/17958
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-03-02 11:42:48 +01:00
John Audia
86fd00b0fb kernel: bump 6.6 to 6.6.80
Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.80

Removed upstreamed:
	generic/backport-6.6/819-v6.8-0002-nvmem-Create-a-header-for-internal-sharing.patch[1]
	generic/backport-6.6/819-v6.8-0003-nvmem-Simplify-the-add_cells-hook.patch[2]
	generic/backport-6.6/819-v6.8-0004-nvmem-Move-and-rename-fixup_cell_info.patch[3]

All other patches automatically rebased.

1. https://web.git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.80&id=39dfc17a38f77b14f7cb2619bd3488a18d797d5d
2. https://web.git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.80&id=276dae17ad9757c3813d9e736a0210f05ccdf8b7
3. https://web.git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.80&id=a0ee898a5024f12572e4ce45202df9b149dadc05

Build system: x86/64
Build-tested: bcm27xx/bcm2712, flogic/xiaomi_redmi-router-ax6000-ubootmod, ramips/tplink_archer-a6-v3
Run-tested: bcm27xx/bcm2712, 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/18140
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-03-02 11:39:59 +01:00
Aleksander Jan Bajkowski
7560af7647 mediatek: filogic: migrate ASUS TUF AX6000 to upstream PHY LED control
This commit switches the control of the leds connected to the Maxlinear
GPY211C PHY to an upstream solution. There should be no functional changes.

Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
2025-03-01 03:05:18 +00:00
Aleksander Jan Bajkowski
25ea7ff393 mediatek: filogic: migrate Acer W6/W6d to upstream PHY LED control
This commit switches the control of the leds connected to the Maxlinear
GPY211C PHY to an upstream solution. There should be no functional changes.

Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
2025-03-01 03:04:18 +00:00
Aleksander Jan Bajkowski
d50d51d74e mediatek: filogic: migrate Zyxel NWA50AX Pro to upstream PHY LED control
This commit switches the control of the leds connected to the Maxlinear
GPY211C PHY to an upstream solution. There should be no functional changes.

Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
2025-03-01 03:03:02 +00:00
Sander Vanheule
04ecccf3e9 realtek: Drop redundant LED labels
Some devices have both the color/function and label property defined.
The label can be constructed from the former properties, making it
redundant.

Signed-off-by: Sander Vanheule <sander@svanheule.net>
2025-02-28 16:30:29 +01:00
Sander Vanheule
13a5e02e28 realtek: Add status LED for Netgear GS310TP
Power LED is identical to GS308T.

Link: https://forum.openwrt.org/t/222970/11
Signed-off-by: Sander Vanheule <sander@svanheule.net>
2025-02-28 14:15:17 +01:00
Bjørn Mork
be181cb3b3 realtek: add thermal zones for SFP sensors on SKS8300-8X
Create thermal zones for SFP internal sensors, enabling shutdown
on critical temperatures.

Signed-off-by: Bjørn Mork <bjorn@mork.no>
Link: https://github.com/openwrt/openwrt/pull/17967
Signed-off-by: Sander Vanheule <sander@svanheule.net>
2025-02-27 19:24:45 +01:00
Bjørn Mork
f29b57dc68 realtek: add thermal zones for SFP sensors on GS1900-10HP
Create thermal zones for SFP internal sensors, enabling shutdown
on critical temperatures.

Signed-off-by: Bjørn Mork <bjorn@mork.no>
Link: https://github.com/openwrt/openwrt/pull/17967
Signed-off-by: Sander Vanheule <sander@svanheule.net>
2025-02-27 19:24:45 +01:00
Bjørn Mork
864d6743ee realtek: thermal driver for rtl838x and rtl930x SoCs
Add simple driver reading the internal temperature sensor.

Signed-off-by: Bjørn Mork <bjorn@mork.no>
Link: https://github.com/openwrt/openwrt/pull/17967
Signed-off-by: Sander Vanheule <sander@svanheule.net>
2025-02-27 19:24:44 +01:00
Hauke Mehrtens
2389793edf kernel: kmod-btmtk: Extract btmtk.ko into own package
btmtk.ko is used by btusb.ko and btmtkuart.ko, add it into an own
package and make both packages depend on it.

Fixes: 1c42a0be36 ("kernel: modules: bluetooth: separating UART and USB drivers")
Link: https://github.com/openwrt/openwrt/pull/18110
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-02-26 23:31:36 +01:00
Bjørn Mork
d6977ab33a realtek: rtl930x: sgmii support
This makes sgmii work for 1000Base-T SFPs by stupidly adding the sgmii mode
wherever 1000base-x is accepted.  No intelligence has been used in the
process.  But it "works for me".

There is an obvious need for refactoring this code to make it more obvious
how and why we configure the mac/phy link like we do for different modes.

Signed-off-by: Bjørn Mork <bjorn@mork.no>
Link: https://github.com/openwrt/openwrt/pull/17950
Signed-off-by: Sander Vanheule <sander@svanheule.net>
2025-02-25 20:53:30 +01:00
Bjørn Mork
1fc19bc06e realtek: rtl93xx: mdio-smbus support for clause 45 and Rollball SFPs
These features have been added to the mdio-i2c driver and are now used by
the sfp driver. The support is required for some newer SFPs.

Signed-off-by: Bjørn Mork <bjorn@mork.no>
Link: https://github.com/openwrt/openwrt/pull/17950
Signed-off-by: Sander Vanheule <sander@svanheule.net>
2025-02-25 20:53:30 +01:00
Bjørn Mork
4457c1eee4 realtek: rtl93xx: support SFPs with phys
This driver use "phy-handle" as a placeholder for mac configuration
data.  Such handles are therefore required for all ports - even those
connected directly to SFP slots and having a managed property set to
"in-band-status".

The DSA core will register these nodes as if they are real phys. This
prevents later attachment of pluggable phys with errors like

   sfp sfp-p8: sfp_add_phy failed: -EBUSY

Replace the virtual SFP slot handles with "pseudo-phy-handle" to keep
the driver logic as-is but hide the node from the DSA core.

Signed-off-by: Bjørn Mork <bjorn@mork.no>
Link: https://github.com/openwrt/openwrt/pull/17950
Signed-off-by: Sander Vanheule <sander@svanheule.net>
2025-02-25 20:53:30 +01:00
Bjørn Mork
ccf54ca673 realtek: sfp: add mdio bus only for sfps with a phy
The SMBus patch broke the logic and caused the driver to always
register an mdio bus, regardless of the sfp.  Restore original
logic.

Signed-off-by: Bjørn Mork <bjorn@mork.no>
Link: https://github.com/openwrt/openwrt/pull/17950
Signed-off-by: Sander Vanheule <sander@svanheule.net>
2025-02-25 20:53:30 +01:00
Bjørn Mork
736229ba99 realtek: sfp: prevent duplicate hwmon devices when re-probing on interface up
Re-probing on interface up will register a new duplicate hwmon device. Skip
the hwmon probe if we already have a sensor device.

Signed-off-by: Bjørn Mork <bjorn@mork.no>
Link: https://github.com/openwrt/openwrt/pull/17950
Signed-off-by: Sander Vanheule <sander@svanheule.net>
2025-02-25 20:53:30 +01:00
Bjørn Mork
ef4b022150 realtek: i2c-rtl9300: fix crash on block transfers
Fix a typo which resulted in wrong .read hooks and unset .write
hooks.  This made I2C_SMBUS_BLOCK_DATA transfers dereference the
NULL .write hook and Oops.

Signed-off-by: Bjørn Mork <bjorn@mork.no>
Link: https://github.com/openwrt/openwrt/pull/17950
Signed-off-by: Sander Vanheule <sander@svanheule.net>
2025-02-25 20:53:30 +01:00
Bjørn Mork
d5dcb88906 realtek: dsa: silence debug log noise
The log noise emmitted by this driver is overwhelming, even for developers
looking at specific issues.  Demoting to debug allows individual messages
to be dynamically enabled instead.

Signed-off-by: Bjørn Mork <bjorn@mork.no>
Link: https://github.com/openwrt/openwrt/pull/17950
Signed-off-by: Sander Vanheule <sander@svanheule.net>
2025-02-25 20:53:30 +01:00
Bjørn Mork
024e9dbace realtek: dsa: silence log noise on route offload
Adding a static IPv4 route made the driver repeatedly print

 rtl83xx_l3_nexthop_update: Setting up fwding: ip 192.168.1.42, GW mac 0000001b21a7xxxx
 Route with id 3 to 192.168.99.0 / 24
 rtl83xx_l3_nexthop_update: total packets: 0
 Warning: TEMPLATE_FIELD_RANGE_CHK: not configured

These messages are only useful to developers while debugging offloading.
Demote to debug level, which in general is more useful for developers
by allowing precise dynamic control.

Signed-off-by: Bjørn Mork <bjorn@mork.no>
Link: https://github.com/openwrt/openwrt/pull/17950
Signed-off-by: Sander Vanheule <sander@svanheule.net>
2025-02-25 20:53:30 +01:00
Paweł Owoc
7b401a9d95 qualcommax: fix upgrade function for Linksys MX dual boot devices
Function remove_oem_ubi_volume was called before CI_UBIPART variable was defined.

Fixes: df1f6e1e18 (qualcommax: ipq807x: Remove OEM UBI volume before upgrade for Linksys MX devices)
Signed-off-by: Paweł Owoc <frut3k7@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18090
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-02-24 21:11:41 +01:00
Felix Fietkau
00e4b23e27 kernel: fix IPv6 TCP GSO segmentation with NAT
Add missing checksum update

Fixes: https://github.com/openwrt/openwrt/issues/15857
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2025-02-24 12:26:37 +01:00
Paweł Owoc
3b7a92754e linux: use packages kmod-hci-uart and kmod-btusb instead of kmod-bluetooth
Use Bluetooth UART and USB packages separetly.

Signed-off-by: Paweł Owoc <frut3k7@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/15118
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-02-24 00:08:42 +01:00
Bjørn Mork
8b3c845835 realtek: ONTi ONT-S508CL-8S is a relabeled XikeStor SKS8300-8X
Both hardware and firmware of these devices appears identical except for the
manufacturers logo and device name.  The documented XikeStor SKS8300-8X
installation method is verified to work on the ONTi ONT-S508CL-8S using
Openwrt images made for the XikeStor SKS8300-8X. This includes the OEM boot
loader magic password phrases.

Signed-off-by: Bjørn Mork <bjorn@mork.no>
Link: https://github.com/openwrt/openwrt/pull/18071
Signed-off-by: Sander Vanheule <sander@svanheule.net>
2025-02-23 17:23:35 +01:00
John Audia
d664d74669 kernel: bump 6.6 to 6.6.79
Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.79

Manually rebased:
	ramips/patches-6.6/810-uvc-add-iPassion-iP2970-support.patch

All other patches automatically rebased.

Build system: x86/64
Build-tested: bcm27xx/bcm2712, filogic/glinet_gl-mt6000, filogic/xiaomi_redmi-router-ax6000-ubootmod, ramips/tplink_archer-a6-v3, x86/64
Run-tested: bcm27xx/bcm2712, filogic/glinet_gl-mt6000, filogic/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/18066
Signed-off-by: Nick Hainke <vincent@systemli.org>
2025-02-23 12:17:38 +01:00
Chukun Pan
9df4a88e60 sunxi: enable usbgadget feature
The USB of most sunxi devices works in otg or peripheral mode.
Enable this feature to use usbgadget. Tested on OrangePi Zero3.

Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
Link: https://patchwork.ozlabs.org/project/openwrt/patch/20250221140105.250920-1-amadeus@jmu.edu.cn/
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-02-22 18:43:23 +01:00
Sander Vanheule
890293c13c realtek: add PoE enable line to Netgear GS310TP
By switching to the new RTL8231 driver in commit b7af54d5c1 ("realtek:
Simple conversions to RTL8231 MFD driver"), the bootloader state of the
RTL8231's pins is now maintained. As the bootloader de-asserts the PoE
enable signal, this means PoE output is no longer available.

Add a gpio-hog with high output, restoring the line value from when the
pin was configured (by default) as an input with a pull-up resistor.
This will hard-enable the PoE output, but the individual ports can still
be administratively disabled by realtek-poe or a similar tool.

Signed-off-by: Sander Vanheule <sander@svanheule.net>
2025-02-22 12:31:24 +01:00
Nick Hainke
70586f574d ipq40xx: convert GL.iNet GL-S1300 to DSA
Convert the router to DSA.

Co-Developed-by: Matt Beaumont <github@beaum.xyz>
Tested-by: Matt Beaumont <github@beaum.xyz>
Link: https://github.com/openwrt/openwrt/pull/12478
Signed-off-by: Nick Hainke <vincent@systemli.org>
2025-02-20 20:02:27 +01:00
John Audia
57b0304ce9 kernel: bump 6.6 to 6.6.78
Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.78

Removed upstreamed:
	bcm27xx/patches-6.6/950-0487-drivers-media-imx296-Add-standby-delay-during-probe.patch[1]
	mediatek/patches-6.6/256-clk-mediatek-mt2701-vdec-fix-conversion-to-mtk_clk_s.patch[2]
	mediatek/patches-6.6/257-clk-mediatek-mt2701-aud-fix-conversion-to-mtk_clk_si.patch[3]
	mediatek/patches-6.6/258-clk-mediatek-mt2701-bdp-add-missing-dummy-clk.patch[4]
	mediatek/patches-6.6/259-clk-mediatek-mt2701-mm-add-missing-dummy-clk.patch[5]
	mediatek/patches-6.6/260-clk-mediatek-mt2701-img-add-missing-dummy-clk.patch[6]

All other patches automatically rebased.

1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.78&id=25abffee5ceb6691ecd4f089be2bb28842e2d2fd
2. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.78&id=b6c5237ab7af82c9f1d8d772dbf309bb4aadfdbb
3. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.78&id=20210b5c775d2d96f706591c64bc2ad975c37eaf
4. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.78&id=a1fa3dda6bf0b7ecd95fa8f9125e5486b699a81f
5. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.78&id=fc60e9357f15372698da373ee76de8f52d22aac2
6. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.78&id=6f4868e6b2887b55531bc8e0a4106ef0150e6326

Build system: x86/64
Build-tested: bcm27xx/bcm2712, flogic/xiaomi_redmi-router-ax6000-ubootmod, ramips/tplink_archer-a6-v3, x86/64
Run-tested: bcm27xx/bcm2712, 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/18000
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-02-20 19:27:57 +01:00
George Moussalem
b790989dff qualcommax: ipq50xx: Linksys MX remove superfluous properties and fix indentation
On the ipq50xx platform, the internal GE PHY at phy address 7 on mdio0
must be enabled as it's used to detect the virtual switch in qca-ssdk.
This is a platform wide condition and is therefore part of the dtsi.
However, by enabling the mdio0 bus in board-specific dts files, the ge_phy
is implicitly enabled. So, let's remove the superfluous status property
in the dts files for Linksys MX2000 and MX5500.

While at it, remove the redundant phy-mode property as it's set to sgmii
by default in the ipq5018-ess.dtsi file and fix indentation in the
firmware property of the q5v6_wcss node.

Signed-off-by: George Moussalem <george.moussalem@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/18029
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-02-20 18:24:39 +01:00
George Moussalem
eacc4d8c9b qualcommax: ipq50xx: use ascii-env driver to set mac address for Linksys MX devices
The ascii-env driver enables reading name pair values from nand in ascii layout.
So, let's pick up and set the mac address accordingly.

Signed-off-by: George Moussalem <george.moussalem@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/18029
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-02-20 18:24:39 +01:00
George Moussalem
02481fb1d9
nvmem: layouts: ascii-env handle CRLF while parsing
Add validation and support for parsing of name/value pairs with CRLF line
endings.

Signed-off-by: George Moussalem <george.moussalem@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/17935
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2025-02-19 09:40:21 +01:00
Zoltan HERPAI
1152af3490 sunxi: add support for Merrii Hummingbird A31
Specifications:
 - SoC: Allwinner A31 @ 1GHz
 - DRAM: 1/2Gb DDR3
 - SD-card slot
 - NAND: 8/16Gb MLC
 - Ethernet: 1x 10/100/1000Mbps (RTL8211E)
 - Wireless: Ampak AP6210 (BCM43362)
 - 2x USB2.0
 - 1x mPCIe slot for 4G cards
 - 1x SIM slot
 - HDMI/VGA via simplefb
 - RTC with battery
 - Power via DC12V / 3A

Installation:
Use the standard sunxi installation to an SD-card. NAND is
not supported.

This is to re-add proper support for an older device.

Link: https://openwrt.org/toh/merrii/hummingbird
Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2025-02-18 22:50:16 +01:00
Daniel Golle
ef22d4af1f kernel: add missing patch description
Add missing patch description, so all generic patches can be applied
to a kernel tree using 'git am'.

Fixes: d23e0a0086 ("kernel: backport MHI patch required by an upcoming mac80211 update")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2025-02-18 19:32:52 +00:00
George Moussalem
92132bb9cc qualcommax: ipq50xx: sysupgrade: fix OEM UBI volume name for Linksys MX devices
The UBI volume name in OEM firmware for Linksys MX2000, MX5500, and
SPNMX56 is 'squashfs' instead of 'rootfs'. So let's update the volume
accordingly.

Signed-off-by: George Moussalem <george.moussalem@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/17968
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-02-18 09:37:25 +01:00
George Moussalem
fe379eb1c1 qualcommax: ipq50xx: add support for Linksys SPNMX56
The SPNMX56 is an ISP-branded and distributed device similar to the MX5500
with the same Wifi chips (IPQ5018 for 2.4G and QCN9074 for 5G) but has an
additional QCA8081 PHY providing a 2.5gbps ethernet WAN port.

Speficiations:
* SoC: Qualcomm IPQ5018 (64-bit dual-core ARM Cortex-A53 @ 1.0Ghz)
* Memory: Winbond W634GU6NB-11 (512 MiB DDR3-933)
* Serial Port: 3v3 TTL 115200n8
* Wi-Fi: IPQ5018 (2x2 2.4 Ghz 802.11b/g/n/ax)
         QCN9024 (4x4:4 5 Ghz 802.11an/ac/ax)
* Ethernet: IPQ5018 integrated virtual switch connected to an external
            QCA8337 switch (3 Ports 10/100/1000 GBASE-T) and a
            QCA8081 phy (up to 2.5 Gbps)
* Flash: Gigadevice GD5F2GM7RExxG (256 MiB)
* LEDs: 1x multi-color PWM LED
* Buttons: 1x WPS (GPIO 27 Active Low)
           1x Reset (GPIO 28 Acive Low)

Flash instructions:
1. On OEM firmware, login to the device (typically at http://192.168.1.1)
and click 'CA' in the bottom right corner -> Connectivity ->
Manual Upgrade. Alternatively, browse to http://<router IP>/fwupdate.html
Upload openwrt-qualcommax-ipq50xx-linksys_spnmx56-squashfs-factory.bin
Optionally flash 2nd partition, after first boot check actual partition:
fw_printenv -n boot_part
and install firmware on second partition using command in case of 2:
mtd -r -e kernel -n write openwrt-qualcommax-ipq50xx-linksys_spnmx56-squashfs-factory.bin kernel
and in case of 1:
mtd -r -e alt_kernel -n write openwrt-qualcommax-ipq50xx-linksys_spnmx56-squashfs-factory.bin alt_kernel
2. Installation using serial connection from OEM firmware
hit Enter once booted and enter credentials (login: root, password: admin)
fw_printenv -n boot_part
In case of 2:
flash_erase /dev/mtd12 0 0
nandwrite -p /dev/mtd12 openwrt-qualcommax-ipq50xx-linksys_spnmx56-squashfs-factory.bin
or in case of 1:
flash_erase /dev/mtd14 0 0
nandwrite -p /dev/mtd14 openwrt-qualcommax-ipq50xx-linksys_spnmx56-squashfs-factory.bin
After first boot install firmware on second partition:
mtd -r -e kernel -n write openwrt-qualcommax-ipq50xx-linksys_spnmx56-squashfs-factory.bin kernel
or:
mtd -r -e alt_kernel -n write openwrt-qualcommax-ipq50xx-linksys_spnmx56-squashfs-factory.bin alt_kernel
3. Back to the OEM firmware.
Download firmware from OEM website:
Firmware for this device cannot be searched for on the Linksys website.
Instead, we'd have to use serial to intercept the URL of the firmware
while it's trying to update. Firmware is ISP specific:
Toob (UK): http://download.linksys.com/updates/20241125t080737/FW_MX56TB_1.0.1.216218_prod.img

The intention is to collect URLs for different ISPs on a wiki page.

From serial or SSH:
fw_printenv boot_part
in case of 1:
mtd -r -e alt_kernel -n write FW_MX56TB_1.0.1.216218_prod.img alt_kernel
else in case of 2:
mtd -r -e kernel -n write FW_MX56TB_1.0.1.216218_prod.img kernel

Signed-off-by: George Moussalem <george.moussalem@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/17968
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-02-18 09:37:25 +01:00
Daniel Golle
31dc43daf5 generic: mtk_eth_soc: dump registers on forced reset
Import patch from MediaTek's SDK to hack-6.6 which dumps all relevant
registers of the Ethernet controller in case of a forced reset.
This can help to debug and find the cause for sporadic resets seen on
Filogic SoCs when used with OpenWrt's Linux 6.6.

Link: 73d44392b8
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2025-02-18 04:38:16 +00:00
Robert Senderek
f93367227e ramips: Add support for Mercusys MR1800X as alt name of MR70X
Both share the same OEM firmware but differ in product_name for safeloader
product_name:MR1800X,product_ver:1.0.0,special_id:45550000

Signed-off-by: Robert Senderek <robert.senderek@10g.pl>
Link: https://github.com/openwrt/openwrt/pull/17965
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-02-17 23:55:13 +01:00
Mieczyslaw Nalewaj
bb84c256e7 ramips: improve MT7621S core detection
The proposed detection method was based on reading the LAUNCH_FREADY core flag.
However, this method only works before the cores are launched.
For this reason, the core number detection method has been changed to a simpler one.
For mt6721s the 17th revision bit is zero, hence we know that it is this chip,
so the number of cores is 1.

Fixes: https://github.com/openwrt/openwrt/issues/17764
Tested-by: Enrico Mioso <mrkiko.rs@gmail.com>
Tested-by: Simon Etzlstorfer <simon@etzi.at>
Tested-by: Mauri Sandberg <maukka@ext.kapsi.fi>
Co-authored-by: Shiji Yang <yangshiji66@qq.com>
Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/17834
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-02-17 23:43:27 +01:00
Felix Fietkau
38c21271d2 kernel: receive all bridged multicast packets if IFF_ALLMULTI is set
Fixes issues with odhcpd, especially in relay mode

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2025-02-17 12:30:12 +01:00
Chukun Pan
51d485ef31 qualcommax: add support for Aliyun AP8220
Aliyun AP8220 is an AP manufactured by Edgecore.
(Very similar to Edgecore EAP102)

Hardware specifications:
  SoC: Qualcomm IPQ8071A
  RAM: 1GB of DDR4 600MHz
  Flash1: MX25U3235F 4MB
  Flash2: MX30UF1G18AC 128MB
  Ethernet: 2x 2.5G RJ45 port
  USB: 2x USB-A 2.0 port
  WiFi1: QCN5024 2.4GHz
  WiFi2: QCN5054 5GHz
  Power: DC 12V / PoE

Flash instructions:
  1. Connect the router via serial port
  2. Keep pressing @ until uboot is interrupted
  3. Download the initramfs image, rename it to
     initramfs.bin, host it with tftp server
  4. Run these commands:
     tftpboot initramfs.bin
     bootm
  5. After openwrt boots up, use scp or luci
     to upload sysupgrade.bin to upgrade.

Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
Link: https://github.com/openwrt/openwrt/pull/17970
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-02-17 10:21:21 +01:00
Chukun Pan
b6fa124bdf qualcommax: cleanup network script indent
Cleanup 02_network script indentation.

Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
Link: https://github.com/openwrt/openwrt/pull/17970
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-02-17 10:21:21 +01:00
Pietro Ameruoso
74f0c95154 mediatek: filogic: fix sysupgrade for ex5601-t0-stock
fix undesired red warning when upgrading in place ex5601-t0-stock model.

Signed-off-by: Pietro Ameruoso <p.ameruoso@live.it>
Link: https://github.com/openwrt/openwrt/pull/17973
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-02-16 22:48:12 +01:00
Anton Yu. Ivanusev
144e8199d0 ramips: fixes for Keenetic KN-1613,1711,1713,1910
Fixed the 5G mac address on KN-1910, rolled back the image size to stock
(there are no errors with loading large images in version 24.10.0),
minor spelling errors.

Signed-off-by: Anton Yu. Ivanusev <ivanusevanton@yandex.ru>
Link: https://github.com/openwrt/openwrt/pull/17946
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-02-16 22:37:27 +01:00
Raylynn Knight
de0e6a9501 ramips: Add alternate support for TP-Link FR205
This is a MT7621-based device with 128MB NAND flash, 256MB RAM, and a USB port.
It is identical hardware to the already supported TP-Link ER605 v2 right
down to the PCB ID.  The only differences are the color of the case and
the factory firmware features.

Signed-off-by: Raylynn Knight <rayknight@me.com>
Link: https://github.com/openwrt/openwrt/pull/17728
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-02-16 21:20:51 +01:00
Tim Harvey
5a124ff167 imx: cortexa53: fix sysupgrade image device support for venice
Set the SUPPORTED_DEVICES Device var so that sysupgrade images
are supported without a force.

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
Link: https://github.com/openwrt/openwrt/pull/17964
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-02-16 16:46:51 +01:00
Tim Harvey
ee73d35fbe imx: cortexa53: add 'gateworks,imx8m*' to sysupgrade board checks
The upstream device-tree files are now using 'gateworks' instead of 'gw'
for compatible. Add this pattern so that the newer boards support
sysupgrade.

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
Link: https://github.com/openwrt/openwrt/pull/17964
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-02-16 16:46:51 +01:00
Aleksander Jan Bajkowski
9772ca190e mediatek: filogic: upstream LEDs control on 2.5G ports on EX5601
This commit switches the control of the leds connected to the Maxlinear
GPY211C PHY to an upstream solution. The behaviour of LED1 is the same
as before. The behaviour of 2.5G-WAN LED has been changed. It is only
active when a 2.5G link is detected, which matches the stock software.
Additionally, the name of the WAN led has been changed to INTERNET.

Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
Link: https://github.com/openwrt/openwrt/pull/17952
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-02-16 16:31:05 +01:00