openwrt/openwrt.git
2 days agoqualcommax: ipq807x: mx4200v2: fix LED controller
Manuel Fombuena [Thu, 2 Jan 2025 18:28:16 +0000 (18:28 +0000)]
qualcommax: ipq807x: mx4200v2:  fix LED controller

The Linksys MX4200v2 doesn't have the same LED controller as the MX4200v1 or MX4300.  It comes with the STMicroelectronics LED1202 while the others come with the NXP PCA9633.

This LED controller has a driver under development which is currently being reviewed by the respective kernel maintainers. They are currently on v11.

Apart from the changes needed on the MX4200v2, this commit also amends the configuration of other devices affected by this change as the LED controller is no common to all of them as it was originally thought.

Signed-off-by: Manuel Fombuena <fombuena@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/17451
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 days agogeneric: add STMicroelectronics LED1202 driver
Manuel Fombuena [Wed, 1 Jan 2025 20:42:37 +0000 (20:42 +0000)]
generic: add STMicroelectronics LED1202 driver

This LED controller has a driver under development which is currently being reviewed by the respective kernel maintainers. They are currently on v11 which is included here.

The LED1202 is a 12-channel low quiescent current LED driver with:
  * Supply range from 2.6 V to 5 V
  * 20 mA current capability per channel
  * 1.8 V compatible I2C control interface
  * 8-bit analog dimming individual control
  * 12-bit local PWM resolution
  * 8 programmable patterns

If the led node is present in the controller then the channel is
set to active.

The output current can be adjusted separately for each channel by 8-bit
analog (current sink input) and 12-bit digital (PWM) dimming control. The
LED1202 implements 12 low-side current generators with independent dimming
control.

Internal volatile memory allows the user to store up to 8 different patterns,
each pattern is a particular output configuration in terms of PWM
duty-cycle (on 4096 steps). Analog dimming (on 256 steps) is per channel but
common to all patterns. Each device tree LED node will have a corresponding
entry in /sys/class/leds with the label name. The brightness property
corresponds to the per channel analog dimming, while the patterns[1-8] to the
PWM dimming control.

Signed-off-by: Manuel Fombuena <fombuena@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/17451
Signed-off-by: Robert Marko <robimarko@gmail.com>
3 days agomediatek: Fix U-Boot variables handling for D-Link M30 A1
Roland Reinl [Wed, 18 Dec 2024 14:45:37 +0000 (15:45 +0100)]
mediatek: Fix U-Boot variables handling for D-Link M30 A1

I think I implemented the U-Boot handling incorrectly on M30 (saw the issue while porting M60 to OpenWrt). Maybe someone with more U-Boot experience can have a look at it.
What I understood until now:

Before flashing, `sw_tryactive` must be set to 0 because OpenWrt runs on partition 0

During reset after flashing, U-Boot executes the following line:
`boot_rd_auto_sw_img=if itest.s ${sw_tryactive} == 2; then run boot_by_part; else run boot_by_tryactive; fi`

As `sw_tryactive` was set to 0 before flashing, `boot_by_tryactive` will be executed:
`boot_by_tryactive=if itest.s ${sw_tryactive} == 0; then setenv sw_tryactive 2; setenv sw_active 1; saveenv; run ub0; else setenv sw_tryactive 2; setenv sw_active 2; saveenv; run ub1; fi`

As `sw_tryactive` was set to 0 before flashing, `sw_active` will be set to 1 and `ub0` will be executed:
`ub0=setenv bootpart 0; mtkboardboot; run ub0to1; uip main; reset`

If the OpenWrt boot is successful, `ub0to1` and `uip` main will never be executed. Only in case OpenWrt cannot be loaded, `mtkboardboot` will return and the fallback `ub0to1` is executed.

Conclusion: It's sufficient to set `sw_tryacitve` to 0 before flashing, the added code in `target/linux/mediatek/filogic/base-files/etc/init.d/bootcount` is useless.
In the worst case (/proc/cmdline doesn't contain `bootpart=ubi0` as expected), the bootpart variable would be set to 1 and causes starting the firmware from the second partition instead of the one on the first partition.

Signed-off-by: Roland Reinl <reinlroland+github@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17298
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 days agomac80211: rt2x00: some improvements for rt5592
Shiji Yang [Wed, 25 Dec 2024 11:39:29 +0000 (19:39 +0800)]
mac80211: rt2x00: some improvements for rt5592

This patch contains some performance and stability improvements
for RT5592:

1. Fix RFCSR register init values for RT5592.
2. Fix BBP register init values for RT5592.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
Link: https://github.com/openwrt/openwrt/pull/16845
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 days agomac80211: rt2x00: some improvements for mt7620
Shiji Yang [Wed, 25 Dec 2024 11:39:29 +0000 (19:39 +0800)]
mac80211: rt2x00: some improvements for mt7620

This patch contains some performance and stability improvements
for MT7620:

1. Always calibrate MT7620 when switching channel.
2. Rework link tuner for MT7620.
3. Correct MT7620 SDM mode register value.
4. Fix register operation on RXIQ calibration.
5. Fix TX_PIN_CFG and TX_ALC_VGA3 init values.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
Link: https://github.com/openwrt/openwrt/pull/16845
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 days agomac80211: rt2x00: some improvements for rt2800 generic
Shiji Yang [Wed, 25 Dec 2024 11:39:29 +0000 (19:39 +0800)]
mac80211: rt2x00: some improvements for rt2800 generic

1. Respect the rt2800 hardware TX queue index.
2. Increase the watchdog sampling frequency.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
Link: https://github.com/openwrt/openwrt/pull/16845
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 days agorealtek: trim default package selection
Sander Vanheule [Wed, 1 Jan 2025 21:18:05 +0000 (22:18 +0100)]
realtek: trim default package selection

Images for certain devices are staring to become too large, as some
device only have 6MB available in their vendor partition layout for the
initial install. This is especially pressing for bootloaders only
supporting gzip compression.

Drop some packages from DEFAULT_PACKAGES that aren't strictly required
for a factory install. The user can always install more packages later
using opkg/apk, or via a sysupgrade to a custom build.

firewall4 is kept to ensure the most recent firewall package is selected
in builds including LuCI.
ethtool is kept as a frequently used diagnostics tool.

Link: https://github.com/openwrt/openwrt/pull/17450
Signed-off-by: Sander Vanheule <sander@svanheule.net>
3 days agoath79: Push MV88E6060 DSA switch into package
Linus Walleij [Thu, 2 Jan 2025 14:44:45 +0000 (15:44 +0100)]
ath79: Push MV88E6060 DSA switch into package

We can use a package for the MV88E6060 DSA switch on the single
ath79 device that uses it, saving around 600 KB of memory on
all other devices (for the DSA infrastructure, mainly).

As far as I can see the TP-Link TL WR941 v2 is the only device
using MV88E6060 and the only device with a DSA switch overall.

However the ath79 people should look at this so I'm not
mistaken.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Link: https://patchwork.ozlabs.org/project/openwrt/patch/20250102-ath79-mv88e6060-module-v1-1-c2a8e31e72fc@linaro.org/
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 days agobcm27xx: remove duplicated kmod-rp1-pio package
John Audia [Sat, 4 Jan 2025 15:36:20 +0000 (16:36 +0100)]
bcm27xx: remove duplicated kmod-rp1-pio package

Commit f105d1a9a9739267fb25612d039c392a397775bd added a duplicated
kmod-rp1-pio package.
Also remove unneeded blank lines added by the same commit.

Fixes: f105d1a9a973 ("bcm27xx/bcm2712: Fix-up RP1 modules")
Signed-off-by: John Audia <therealgraysky@proton.me>
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
3 days agomediatek: append metadata to factory-uboot.bin for WSR devices
INAGAKI Hiroshi [Sat, 28 Dec 2024 10:07:09 +0000 (19:07 +0900)]
mediatek: append metadata to factory-uboot.bin for WSR devices

Append metadata to factory-uboot.bin image to pass the image verification
on sysupgrade.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17408
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 days agomediatek: mt7622: sync buffalo.sh with ramips/mt7621
INAGAKI Hiroshi [Sat, 28 Dec 2024 08:48:02 +0000 (17:48 +0900)]
mediatek: mt7622: sync buffalo.sh with ramips/mt7621

Sync buffalo.sh with the one in ramips/mt7621 to improve handling of the
TRX magic numbers of Buffalo WSR devices and switching sysupgrade method
between buffalo_upgrade_ubinized() and nand_do_upgrade().

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17408
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 days agomediatek: mt7622: improve fixup of trx for Buffalo devices
INAGAKI Hiroshi [Sat, 28 Dec 2024 08:38:11 +0000 (17:38 +0900)]
mediatek: mt7622: improve fixup of trx for Buffalo devices

Unify the common part to the function and don't fixup trx when booting
with initramfs image.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17408
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 days agoramips: mt76x8: add support for Keenetic Extra (KN-1713)
Anton Yu. Ivanusev [Thu, 26 Dec 2024 04:42:53 +0000 (09:42 +0500)]
ramips: mt76x8: add support for Keenetic Extra (KN-1713)

Specification:
SoC: MediaTek MT7628AN
RAM: 128M DDR2, Etron Technology EM68C16CWQG-25H
Flash: 32M, cFeon EN25QH256A (Dual Boot, SPI)
Switch: MediaTek MT7628AN, 4 ports 100 Mbps
WiFi: MediaTek MT7628AN 2.4 GHz 802.11n and MediaTek MT7613BEN 5 GHz 802.11ac
USB: 1 port USB 2.0
GPIO: 3 buttons (Wi-Fi, Reset, FN), 4 LEDs (Power, Internet, FN, Wi-Fi), USB port power controls

Disassembly:
There are 2 screws at the bottom. After removing the screws, pry the gray plastic part around (it is secured with latches) and remove it.

UART Interface:
The UART interface can be connected to the 5 pin located between the WAN port and the RESET button.
Pins (from WAN port to Reset button): VCC, TX, RX, NC, GRD
Settings: 115200, 8N1

Flashing via OEM recovery software:
1. Download the OEM recovery software from the manufacturer's website
2. Download the firmware image (for OpenWRT it is *-squashfs-factory.bin), rename it to KN-1713_recovery.bin
3. Replace the file in the fw folder OEM recovery software with the file from step 2.
4. Run the OEM recovery software and follow the instructions.

Flashing via TFTP:
1. Connect your PC and router to port 1-3, configure PC interface using IP 192.168.1.2, mask 255.255.255.252
2. Serve the firmware image (for OpenWRT it is *-squashfs-factory.bin) renamed to KN-1713_recovery.bin via TFTP
3. Power up the router while pressing Reset button on the back
4. Release Restart button when Power LED starts blinking

To revert back to OEM firmware:
The return to the OEM firmware is carried out by using the methods described above with the help of the appropriate firmware image.

When using OEM bootloader, the firmware image size cannot exceed the size of one OEM «Firmware_x» partition or Kernel + rootFS size.

Signed-off-by: Anton Yu. Ivanusev <ivanusevanton@yandex.ru>
Link: https://github.com/openwrt/openwrt/pull/17382
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 days agoinclude/trusted-firmware-a.mk: unset CC before compiling
Thomas Richard [Fri, 3 Jan 2025 09:19:05 +0000 (10:19 +0100)]
include/trusted-firmware-a.mk: unset CC before compiling

If CC is explicitly set to a non default value, TF-A keeps this value.
Otherwise it assigns generic default value.
As the build bot set CC=/usr/bin/gcc-10, TF-A uses it which causes a
compile issue.
So unset CC before compiling.

It's a new behavior since v2.12. A part of the explanation is available in
this commit [1].

[1] https://github.com/ARM-software/arm-trusted-firmware/commit/e01c71266f9df46ac46dc72669449490d1c94419

Signed-off-by: Thomas Richard <thomas.richard@bootlin.com>
Link: https://github.com/openwrt/openwrt/pull/17465
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 days agobase-files: strip space and tab characters from ASCII mac address
Shiji Yang [Mon, 16 Dec 2024 07:09:50 +0000 (15:09 +0800)]
base-files: strip space and tab characters from ASCII mac address

Spaces and tabs are widely used in variable definitions. We have to
remove them to ensure that get_mac_ascii() works properly.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
Link: https://github.com/openwrt/openwrt/pull/17262
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 days agobase-files: enable get_mac_ascii() to handle redundant strings
Shiji Yang [Fri, 13 Dec 2024 05:30:38 +0000 (13:30 +0800)]
base-files: enable get_mac_ascii() to handle redundant strings

The function get_mac_ascii() will fail when there are two or more
same MAC address variable names in the mtd partition. Only retain
the first variable to workaround this rare situation.

Fixes: https://github.com/openwrt/openwrt/issues/17236
Signed-off-by: Shiji Yang <yangshiji66@qq.com>
Link: https://github.com/openwrt/openwrt/pull/17262
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 days agobcm53xx: backport nvmem mac for meraki mr26
Rosen Penev [Sun, 24 Nov 2024 20:43:07 +0000 (12:43 -0800)]
bcm53xx: backport nvmem mac for meraki mr26

Avoids having to set the MAC in userspace.

Also added a mac-base change to set the wifi MACs. It's not clear if
upstream would want it once mac-base is upstreamed.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17064
Signed-off-by: Robert Marko <robimarko@gmail.com>
3 days agolantiq: xrx200: add support for lan3 and lan4 on AVM 5490/5491
Aleksander Jan Bajkowski [Fri, 3 Jan 2025 18:59:22 +0000 (19:59 +0100)]
lantiq: xrx200: add support for lan3 and lan4 on AVM 5490/5491

On the AVM 5490/5491, lan1, lan2 and wan ports are connected directly
to the internal GSWIP switch. The lan3 and lan4 ports are connected via
an external QCA8334 switch. This commit adds the missing entries in dts
and adds the driver module.

Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
Link: https://github.com/openwrt/openwrt/pull/17473
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 days agoramips: mtk-mmc: remove nt76x8 pinctrl hack
Shiji Yang [Wed, 1 Jan 2025 08:17:53 +0000 (16:17 +0800)]
ramips: mtk-mmc: remove nt76x8 pinctrl hack

Now we can set the mt76x8 SDXC pinmux in device tree.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
Link: https://github.com/openwrt/openwrt/pull/17446
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 days agoramips: make package kmod-sdhci-mt7620 conflict with kmod-mmc-mtk
Shiji Yang [Wed, 1 Jan 2025 08:17:08 +0000 (16:17 +0800)]
ramips: make package kmod-sdhci-mt7620 conflict with kmod-mmc-mtk

These two packages are SDXC drivers for Mediatek mt762x series SoCs.
One is upstream implementation, and the other is downstream driver.
Installing them together will result in conflicts.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
Link: https://github.com/openwrt/openwrt/pull/17446
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 days agoramips: fix SDXC function for mt76x8 one eth port devices
Shiji Yang [Wed, 1 Jan 2025 08:16:29 +0000 (16:16 +0800)]
ramips: fix SDXC function for mt76x8 one eth port devices

There are only 5 devices in mt76x8 sub-target selected the MTK SDXC
driver package. And they are all single ethernet port routers or dev
boards:

* LinkIt Smart 7688
* Onion Omega2+
* RAVPower RP-WD009
* VoCore VoCore2
* VoCore VoCore2-Lite

For these devices, they are using the ephy p1 - p4 as the SDXC IO
pins. Therefore, these GPIO pads must be configured in "digital"
IO mode.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
Link: https://github.com/openwrt/openwrt/pull/17446
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 days agoramips: add back SDXC card reader support for HiWiFi HC5x61A
Shiji Yang [Wed, 1 Jan 2025 08:06:38 +0000 (16:06 +0800)]
ramips: add back SDXC card reader support for HiWiFi HC5x61A

After adding the correct package and pin group configurations,
the SDXC card slot can now function properly.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
Link: https://github.com/openwrt/openwrt/pull/17446
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 days agoramips: pinctrl: allow mux SDXC pins for mt76x8
Shiji Yang [Wed, 1 Jan 2025 08:06:10 +0000 (16:06 +0800)]
ramips: pinctrl: allow mux SDXC pins for mt76x8

The mt76x8 SDXC pin register definition is incompatible with the
mtmips generic pinctrl driver structure. This hack allows us to
mux the SDXC IO to different pin groups in device tree.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
Link: https://github.com/openwrt/openwrt/pull/17446
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 days agoramips: mmc-mtk: add more vendor driver register init values
Shiji Yang [Sat, 13 Jul 2024 03:32:45 +0000 (11:32 +0800)]
ramips: mmc-mtk: add more vendor driver register init values

In the MTK vendor driver, mt762x SDXC registers MSDC_PATCH_BIT and
MSDC_PATCH_BIT1 have different init values than upstream driver.
These magical values should have some help for the stability.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
Link: https://github.com/openwrt/openwrt/pull/17446
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 days agouboot-mediatek: add missing LED command for OpenWrt One
Shiji Yang [Sat, 21 Dec 2024 16:31:06 +0000 (00:31 +0800)]
uboot-mediatek: add missing LED command for OpenWrt One

The u-boot LED command "led_loop_done" is missing from the OpenWrt
One NAND flash u-boot. Copy it from the OpenWrt One NOR flash u-boot
default environment to fix this issue.

Fixes: https://github.com/openwrt/openwrt/issues/17310
Signed-off-by: Shiji Yang <yangshiji66@qq.com>
Link: https://github.com/openwrt/openwrt/pull/17338
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 days agouboot-mediatek: fix Routerich AX3000 support patch
Shiji Yang [Sat, 21 Dec 2024 16:30:43 +0000 (00:30 +0800)]
uboot-mediatek: fix Routerich AX3000 support patch

It seems that the original patch has been manually modified. The
newly added line number is incorrect.

Fixes: c0581520b1c5 ("uboot-mediatek: add Routerich AX3000 support")
Signed-off-by: Shiji Yang <yangshiji66@qq.com>
Link: https://github.com/openwrt/openwrt/pull/17338
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 days agobcm27xx/bcm2712: Fix-up RP1 modules
John Audia [Thu, 2 Jan 2025 12:50:26 +0000 (07:50 -0500)]
bcm27xx/bcm2712: Fix-up RP1 modules

Correct a few mistakes around dependencies and naming and unset
CONFIG_FIRMWARE_RP1 in RPi5B's config and instead of a builtin, build it
as a module.

Without this change, there are two entries for rp1.ko in
/lib/modules/$(uname -r)/modules.builtin due to how we strip the leading
directories when we generate it. See: package/kernel/linux/Makefile
around line 63.

  % grep rp1.ko /lib/modules/$(uname -r)/modules.builtin
  pwm-rp1.ko
  clk-rp1.ko
  rp1.ko
  rp1.ko

The kernel log gets spammed with tons of superfluous warnings as a
results of the double entry:

  daemon.warn modprobe: found duplicate builtin module rp1

Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/17461
Signed-off-by: Robert Marko <robimarko@gmail.com>
3 days agowifi-scripts: fix setting tx power on some drivers
Felix Fietkau [Sat, 4 Jan 2025 10:52:50 +0000 (11:52 +0100)]
wifi-scripts: fix setting tx power on some drivers

On some drivers, setting the tx power on the interface is not enough.
Set it for the phy as well.

Fixes: 04fb05914ea7 ("wifi-scripts: add multi-radio config support")
Signed-off-by: Felix Fietkau <nbd@nbd.name>
3 days agomt76: update to Git HEAD (2025-01-04)
Felix Fietkau [Sat, 4 Jan 2025 10:54:22 +0000 (11:54 +0100)]
mt76: update to Git HEAD (2025-01-04)

35bcf68a6297 wifi: mt76: scan: fix setting tx_info fields
4d8d6e2e7710 wifi: mt76: scan: set vif offchannel link for scanning/roc
e354436db440 wifi: mt76: mt7996: use the correct vif link for scanning/roc

Signed-off-by: Felix Fietkau <nbd@nbd.name>
4 days agorockchip: refresh patch
Álvaro Fernández Rojas [Fri, 3 Jan 2025 23:46:00 +0000 (00:46 +0100)]
rockchip: refresh patch

Commit 8a477bafb4637e3499f69f569133039ce060559e backported an upstream patch
without refreshing the patches.

Fixes: 8a477bafb463 ("rockchip: fix phy reset on rk356x")
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17474
Signed-off-by: Robert Marko <robimarko@gmail.com>
4 days agogeneric: 6.6: backport upstream r8169 patches
Álvaro Fernández Rojas [Mon, 30 Dec 2024 00:01:33 +0000 (01:01 +0100)]
generic: 6.6: backport upstream r8169 patches

7a3bcd39ae1f r8169: use helper r8169_mod_reg8_cond to simplify rtl_jumbo_config
e3e9e9039fa6 r8169: align WAKE_PHY handling with r8125/r8126 vendor drivers
330dc2297c82 r8169: improve rtl_set_d3_pll_down
c507e96b5763 r8169: improve __rtl8169_set_wol
83cb4b470c66 r8169: remove leftover locks after reverted change
2cd02f2fdd8a r8169: improve initialization of RSS registers on RTL8125/RTL8126
a3d8520e6a19 r8169: align RTL8126 EEE config with vendor driver
4af2f60bf737 r8169: align RTL8125/RTL8126 PHY config with vendor driver
eb90f876b796 r8169: align RTL8125 EEE config with vendor driver
b8bd8c44a266 r8169: fix inconsistent indenting in rtl8169_get_eth_mac_stats
f75d1fbe7809 r8169: add support for RTL8125D
c4e64095c00c r8169: enable EEE at 2.5G per default on RTL8125B
d64113c6bb5e r8169: remove rtl_dash_loop_wait_high/low
1c105bacb160 r8169: avoid duplicated messages if loading firmware fails and switch to warn level
ac48430368c1 r8169: don't take RTNL lock in rtl_task()
e3fc5139bd8f r8169: implement additional ethtool stats ops
b8bf38440ba9 r8169: enable SG/TSO on selected chip versions per default
854d71c555df r8169: remove original workaround for RTL8125 broken rx issue
1ffcc8d41306 r8169: add support for the temperature sensor being available from RTL8125B

The following patches require backporting additional linux patches:
e2015942e90a r8169: replace custom flag with disable_work() et al
e340bff27e63 r8169: copy vendor driver 2.5G/5G EEE advertisement constraints

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
4 days agogeneric: 6.6: backport upstream Realtek PHY patches
Álvaro Fernández Rojas [Mon, 30 Dec 2024 00:01:33 +0000 (01:01 +0100)]
generic: 6.6: backport upstream Realtek PHY patches

8989bad54113 net: phy: realtek: add RTL8125D-internal PHY
f87a17ed3b51 net: phy: realtek: merge the drivers for internal NBase-T PHY's

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
4 days agokernel: add workaround for page_pool_release warnings
Felix Fietkau [Fri, 3 Jan 2025 19:22:13 +0000 (20:22 +0100)]
kernel: add workaround for page_pool_release warnings

defer_list skbs held by NAPI can block releasing page pools.
Work around this by scheduling rx softirq on all CPUs while trying to release
a page pool.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
4 days agorockchip: fix phy reset on rk356x
Tianling Shen [Fri, 3 Jan 2025 12:37:41 +0000 (20:37 +0800)]
rockchip: fix phy reset on rk356x

The commit 7160820d742a ("phy: rockchip: naneng-combphy: fix phy reset")
was backported to kernel 6.6 branch by upstream, however the correspond
dtsi fixes was not, resulting the following error:
```
[    0.225521] rockchip-naneng-combphy fe830000.phy: error -ENOENT: failed to get phy reset
[    0.227467] rockchip-naneng-combphy fe840000.phy: error -ENOENT: failed to get phy reset
```

So backport the dtsi fixes here manually.

Fixes: 89b2356b8c2f ("kernel: bump 6.6 to 6.6.69")
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
Link: https://github.com/openwrt/openwrt/pull/17468
Signed-off-by: Robert Marko <robimarko@gmail.com>
4 days agoipq40xx: fix label MAC address for FritzBox 7520/7530
Florian Maurer [Fri, 3 Jan 2025 12:28:42 +0000 (13:28 +0100)]
ipq40xx: fix label MAC address for FritzBox 7520/7530

The MAC address of the GMAC is contained inside the CWMP-Account number on the label.

Similar fix as to the 4040 in b22d382ae4eaa1af42930115d91855f402314cac
Link #13240

Signed-off-by: Florian Maurer <f.maurer@outlook.de>
Link: https://github.com/openwrt/openwrt/pull/17467
Signed-off-by: Robert Marko <robimarko@gmail.com>
4 days agomt76: update to Git HEAD (2025-01-03)
Felix Fietkau [Fri, 3 Jan 2025 10:06:08 +0000 (11:06 +0100)]
mt76: update to Git HEAD (2025-01-03)

46715044ecd2 wifi: mt76: mt7996: implement driver specific get_txpower function
959a2d40007f wifi: mt76: mt7996: initialize phy txpower

Signed-off-by: Felix Fietkau <nbd@nbd.name>
5 days agorealtek: add 1920-24g-poe-180w to mac address
James Sweeney [Thu, 2 Jan 2025 13:06:09 +0000 (08:06 -0500)]
realtek: add 1920-24g-poe-180w to mac address

Add 1920-24g-poe-180w to the mac address retrieval part of 02_network to
properly set the device's port MAC addresses.

This piece was missed when this device was added.

Fixes: b948c1e39b9e ("realtek: add support for HPE 1920-24G PoE-180W (JG925A)")
Link: https://github.com/openwrt/openwrt/pull/17460
Signed-off-by: James Sweeney <code@swny.io>
5 days agokernel: bump 6.6 to 6.6.69
John Audia [Thu, 2 Jan 2025 11:34:15 +0000 (06:34 -0500)]
kernel: bump 6.6 to 6.6.69

Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.69

All patches automatically rebased.

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/17459
Signed-off-by: Nick Hainke <vincent@systemli.org>
5 days agostrace: Update to version 6.12
Tony Ambardar [Thu, 2 Jan 2025 08:47:14 +0000 (00:47 -0800)]
strace: Update to version 6.12

Release Notes:
https://github.com/strace/strace/releases/tag/v6.12

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/17457
Signed-off-by: Nick Hainke <vincent@systemli.org>
5 days agoubus: update to Git HEAD (2025-01-02)
Felix Fietkau [Thu, 2 Jan 2025 13:08:36 +0000 (14:08 +0100)]
ubus: update to Git HEAD (2025-01-02)

d996988ae55b libubus: close file descriptor after sending it from a request
afa57cce0aff libubus: add support for using channels

Signed-off-by: Felix Fietkau <nbd@nbd.name>
6 days agorealtek: drop extraneous ')' in 02_network
Sander Vanheule [Thu, 2 Jan 2025 08:31:44 +0000 (09:31 +0100)]
realtek: drop extraneous ')' in 02_network

The extraneous closing parenthesis inside the case matching breaks
syntax of the network initialization script 02_network.

/bin/board_detect: /etc/board.d/02_network:
    line 40: syntax error: unexpected newline (expecting ")")

Remove this character so board init is functional again.

Fixes: c8ea1aa970bf ("realtek: add support for HPE 1920-24G-PoE-370w")
Signed-off-by: Sander Vanheule <sander@svanheule.net>
6 days agoixp4xx: Break out mv88e6060 DSA switch to package
Linus Walleij [Fri, 27 Dec 2024 23:13:37 +0000 (00:13 +0100)]
ixp4xx: Break out mv88e6060 DSA switch to package

Just one of the devices uses the Marvell MV88E6060 DSA
switch so break this out from the generic kernel config
and into a package selected only by that single device
and probed at boot instead.

The big win is from being able to drop the dsa_core
(~600KB) kernel module out of the common kernel on
devices with no DSA switch.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
6 days agoixp4xx: Add LEDs to supported devices
Linus Walleij [Wed, 25 Dec 2024 00:11:00 +0000 (01:11 +0100)]
ixp4xx: Add LEDs to supported devices

This adds the OpenWrt-only LED aliases to the supported IXP4xx
devices.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
6 days agoixp4xx: Support single zcom_npe_esa hw address
Linus Walleij [Fri, 20 Dec 2024 23:59:27 +0000 (00:59 +0100)]
ixp4xx: Support single zcom_npe_esa hw address

Some ixp4xx platforms with a proper RedBoot config do not
contain the per-ethernet interface npe_eth0_esa, but rather
a single entry named zcom_npe_esa.

Let's use this if fconfig can't find the primary key.
This is needed on the Netgear WG302 v1.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
6 days agoixp4xx: Support sysupgrade on WG302 v1
Linus Walleij [Fri, 20 Dec 2024 18:50:26 +0000 (19:50 +0100)]
ixp4xx: Support sysupgrade on WG302 v1

The WG302 v1 have a separate rootfs partition that we
simply just upgrade with a new rootfs image. The kernel
need to be updated on the TFTP server.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
6 days agoixp4xx: Add back support for Netgear WG302 v1
Linus Walleij [Thu, 19 Dec 2024 23:59:50 +0000 (00:59 +0100)]
ixp4xx: Add back support for Netgear WG302 v1

The WG302 v1 has 32MB of RAM so it can easily run OpenWrt,
however it lacks much flash: only 8 MB.

By just using the flash for rootfs and booting a kernel over
TFTP it works just fine.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
6 days agorealtek: add support for HPE 1920-24G PoE-180W (JG925A)
James Sweeney [Wed, 1 Jan 2025 13:47:28 +0000 (08:47 -0500)]
realtek: add support for HPE 1920-24G PoE-180W (JG925A)

Hardware information: (largely copied from 11275be)
---------------------

The HPE 1920-24G-PoE+ (180W) (JG925A) is a switch that is
part of the 1920 family which has 180W nominal PoE+ support.

Common with HPE 1920-24G:
- RTL8382 SoC
- 24 Gigabit RJ45 ports (built-in RTL8218B, 2 external RTL8218D)
- 4 SFP ports (external RTL8214FC)
- RJ45 RS232 port on front panel
- 32 MiB NOR Flash
- 128 MiB DDR3 DRAM
- PT7A7514 watchdog

HPE 1920-24G-PoE+ (180W):
- PoE chip
- 2 fans (40mm)

Known issues:
---------------------
- PoE LEDs are uncontrolled.

(Manual taken from f2f09bc)
Booting initramfs image:
------------------------

- Prepare a FTP or TFTP server serving the OpenWrt initramfs image and
connect the server to a switch port.

- Connect to the console port of the device and enter the extended
boot menu by typing Ctrl+B when prompted.

- Choose the menu option "<3> Enter Ethernet SubMenu".

- Set network parameters via the option "<5> Modify Ethernet Parameter".
Enter the FTP/TFTP filename as "Load File Name" ("Target File Name"
can be left blank, it is not required for booting from RAM). Note that
the configuration is saved on flash, so it only needs to be done once.

- Select "<1> Download Application Program To SDRAM And Run".

Initial installation:
---------------------

- Boot an initramfs image as described above, then use sysupgrade to
install OpenWrt permanently. After initial installation, the
bootloader needs to be configured to load the correct image file

- Enter the extended boot menu again and choose "<4> File Control",
then select "<2> Set Application File type".

- Enter the number of the file "openwrt-kernel.bin" (should be 1), and
use the option "<1> +Main" to select it as boot image.

- Choose "<0> Exit To Main Menu" and then "<1> Boot System".

NOTE: The bootloader on these devices can only boot from the VFS
filesystem which normally spans most of the flash. With OpenWrt, only
the first part of the firmware partition contains a valid filesystem,
the rest is used for rootfs. As the bootloader does not know about this,
you must not do any file operations in the bootloader, as this may
corrupt the OpenWrt installation (selecting the boot image is an
exception, as it only stores a flag in the bootloader data, but doesn't
write to the filesystem).

Example PoE config file (/etc/config/poe):
---------------------
config global
        option budget   '180'

config port
        option enable   '1'
        option id       '1'
        option name     'lan8'
        option poe_plus '1'
        option priority '2'
config port
        option enable   '1'
        option id       '2'
        option name     'lan7'
        option poe_plus '1'
        option priority '2'
config port
        option enable   '1'
        option id       '3'
        option name     'lan6'
        option poe_plus '1'
        option priority '2'
config port
        option enable   '1'
        option id       '4'
        option name     'lan5'
        option poe_plus '1'
        option priority '2'
config port
        option enable   '1'
        option id       '5'
        option name     'lan4'
        option poe_plus '1'
        option priority '2'
config port
        option enable   '1'
        option id       '6'
        option name     'lan3'
        option poe_plus '1'
        option priority '2'
config port
        option enable   '1'
        option id       '7'
        option name     'lan2'
        option poe_plus '1'
        option priority '2'
config port
        option enable   '1'
        option id       '8'
        option name     'lan1'
        option poe_plus '1'
        option priority '2'
config port
        option enable   '1'
        option id       '9'
        option name     'lan16'
        option poe_plus '1'
        option priority '2'
config port
        option enable   '1'
        option id       '10'
        option name     'lan15'
        option poe_plus '1'
        option priority '2'
config port
        option enable   '1'
        option id       '11'
        option name     'lan14'
        option poe_plus '1'
        option priority '2'
config port
        option enable   '1'
        option id       '12'
        option name     'lan13'
        option poe_plus '1'
        option priority '2'
config port
        option enable   '1'
        option id       '13'
        option name     'lan12'
        option poe_plus '1'
        option priority '2'
config port
        option enable   '1'
        option id       '14'
        option name     'lan11'
        option poe_plus '1'
        option priority '2'
config port
        option enable   '1'
        option id       '15'
        option name     'lan10'
        option poe_plus '1'
        option priority '2'
config port
        option enable   '1'
        option id       '16'
        option name     'lan9'
        option poe_plus '1'
        option priority '2'

config port
        option enable   '1'
        option id       '17'
        option name     'lan24'
        option poe_plus '1'
        option priority '2'
config port
        option enable   '1'
        option id       '18'
        option name     'lan23'
        option poe_plus '1'
        option priority '2'
config port
        option enable   '1'
        option id       '19'
        option name     'lan22'
        option poe_plus '1'
        option priority '2'
config port
        option enable   '1'
        option id       '20'
        option name     'lan21'
        option poe_plus '1'
        option priority '2'
config port
        option enable   '1'
        option id       '21'
        option name     'lan20'
        option poe_plus '1'
        option priority '2'
config port
        option enable   '1'
        option id       '22'
        option name     'lan19'
        option poe_plus '1'
        option priority '2'
config port
        option enable   '1'
        option id       '23'
        option name     'lan18'
        option poe_plus '1'
        option priority '2'
config port
        option enable   '1'
        option id       '24'
        option name     'lan17'
        option poe_plus '1'
        option priority '2'

Signed-off-by: James Sweeney <code@swny.io>
Link: https://github.com/openwrt/openwrt/pull/17444
Signed-off-by: Sander Vanheule <sander@svanheule.net>
6 days agoramips: mt7621: enable lzma-loader for Amped Wireless ALLY
Jonathan Sturges [Fri, 27 Dec 2024 02:47:40 +0000 (21:47 -0500)]
ramips: mt7621: enable lzma-loader for Amped Wireless ALLY

Switch to using loader-kernel to accommodate
larger image sizes that are problematic for
many mt7621 uboots.

Signed-off-by: Jonathan Sturges <jsturges@redhat.com>
Link: https://github.com/openwrt/openwrt/pull/17389
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
6 days agorealtek: move debounce-interval to correct node
Sander Vanheule [Wed, 1 Jan 2025 19:05:20 +0000 (20:05 +0100)]
realtek: move debounce-interval to correct node

The debounce-interval of a gpio-keys node should be placed in the key
node itself, not in the main node. Move the properties added earlier and
fix the key node name while we're here.

Fixes: 4357f32d41eb ("realtek: debounce reset key for Zyxel GS1900")
Signed-off-by: Sander Vanheule <sander@svanheule.net>
6 days agobcm27xx/bcm2712: add RP1 camera front-end
John Audia [Sat, 28 Dec 2024 16:59:51 +0000 (11:59 -0500)]
bcm27xx/bcm2712: add RP1 camera front-end

Add kmod for RP1 camera front-end for RPi5B

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

Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/17412
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
6 days agomediatek: Fix primary MAC of D-Link M60
Roland Reinl [Mon, 30 Dec 2024 07:54:56 +0000 (08:54 +0100)]
mediatek: Fix primary MAC of D-Link M60

During port to gluon, I saw that the primary mac is not correct. Updated DTS accordingly.

Signed-off-by: Roland Reinl <reinlroland+github@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17429
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
6 days agorockchip: enable USB3 port on NanoPC T6
Tianling Shen [Mon, 23 Dec 2024 13:13:24 +0000 (21:13 +0800)]
rockchip: enable USB3 port on NanoPC T6

Enable the USB3 port on FriendlyELEC NanoPC-T6.

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
Link: https://github.com/openwrt/openwrt/pull/17349
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
6 days agorockchip: backport recent rk3588 clk updates
Tianling Shen [Mon, 23 Dec 2024 11:07:13 +0000 (19:07 +0800)]
rockchip: backport recent rk3588 clk updates

Backport recent rk3588 clk updates from upstream,
including one bug fix.

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
Link: https://github.com/openwrt/openwrt/pull/17349
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
6 days agoRevert "mac80211: remove ath9k_platform_data"
Robert Marko [Wed, 1 Jan 2025 10:22:40 +0000 (11:22 +0100)]
Revert "mac80211: remove ath9k_platform_data"

This reverts commit fdc2c6ab9901ad3e64ec1f93d5ccdc38990243b4.

Signed-off-by: Robert Marko <robimarko@gmail.com>
6 days agoRevert "kernel: remove custom ath9k_platform.h"
Robert Marko [Wed, 1 Jan 2025 10:22:39 +0000 (11:22 +0100)]
Revert "kernel: remove custom ath9k_platform.h"

This reverts commit da0016b274008a4792102e72b3d66a84c7db4569.

Signed-off-by: Robert Marko <robimarko@gmail.com>
6 days agoRevert "mac80211: ath9k: remove platform leds"
Robert Marko [Wed, 1 Jan 2025 10:22:37 +0000 (11:22 +0100)]
Revert "mac80211: ath9k: remove platform leds"

This reverts commit ad2e55e02b67701b6af61c9348234987b1217a59.

Signed-off-by: Robert Marko <robimarko@gmail.com>
6 days agoRevert "mac80211: ath9k: clean up gpiochip"
Robert Marko [Wed, 1 Jan 2025 10:22:30 +0000 (11:22 +0100)]
Revert "mac80211: ath9k: clean up gpiochip"

This reverts commit 2af552372d4e0feda947d44eba3775b335d242db.

Signed-off-by: Robert Marko <robimarko@gmail.com>
6 days agorealtek: debounce reset key for Zyxel GS1900
Sander Vanheule [Wed, 1 Jan 2025 10:01:48 +0000 (11:01 +0100)]
realtek: debounce reset key for Zyxel GS1900

When the reset button is next to the SFP cages, I2C operations on the
modules might cause interference on the button's GPIO line. Add a
debounce-interval of 5 times the poll-interval to ensure the line is
actually stable for some time and not just glitching.

Signed-off-by: Sander Vanheule <sander@svanheule.net>
7 days agoqualcommax: ipq807x: add support for Linksys MX4300 (LN1301)
Paweł Owoc [Fri, 26 Jul 2024 17:00:57 +0000 (19:00 +0200)]
qualcommax: ipq807x: add support for Linksys MX4300 (LN1301)

Hardware specification:
========
SoC: Qualcomm IPQ8174
Flash: 1GB (Micron MT29F8G08ABBCAH4 or AMD/Spansion S34MS08G2)
RAM: 2GB (2x Kingston B5116ECMDXGJD or ESMT M15T2G16128A DDR3L)
Ethernet: 4x 10/100/1000Mbps (Qualcomm QCA8075)
WiFi1: 5GHz ax 2x2 (Qualcomm QCN5054 + Skyworks SKY85755-11) - channels 36-64 (low band)
WiFi2: 2.4GHz ax 2x2 (Qualcomm QCN5024 + Skyworks SKY85340-11)
WiFi3: 5GHz ax 4x4 (Qualcomm QCN5054 + Skyworks SKY85755-11) - channels 100-177 (high band)
LED: 1x RGB status (NXP PCA9633)
USB: 1x USB 3.0
Button: WPS, Reset

Flash instructions:
========
1. Manually upgrade firmware using openwrt-qualcommax-ipq807x-linksys_mx4300-squashfs-factory.bin image.
More details can be found here: https://support.linksys.com/kb/article/6564-en/
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-ipq807x-linksys_mx4300-squashfs-factory.bin kernel
and in case of 1:
- mtd -r -e alt_kernel -n write openwrt-qualcommax-ipq807x-linksys_mx4300-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/mtd21 0 0
- nandwrite -p /dev/mtd21 openwrt-qualcommax-ipq807x-linksys_mx4300-squashfs-factory.bin
or in case of 1:
- flash_erase /dev/mtd23 0 0
- nandwrite -p /dev/mtd23 openwrt-qualcommax-ipq807x-linksys_mx4300-squashfs-factory.bin
After first boot install firmware on second partition:
- mtd -r -e kernel -n write openwrt-qualcommax-ipq807x-linksys_mx4300-squashfs-factory.bin kernel
or:
- mtd -r -e alt_kernel -n write openwrt-qualcommax-ipq807x-linksys_mx4300-squashfs-factory.bin alt_kernel

3. Installation from initramfs image using USB drive:
Put the initramfs image on the USB drive:
- dd bs=1M if=openwrt-qualcommax-ipq807x-linksys_mx4300-initramfs-uImage.itb of=/dev/sdX
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-ipq807x-linksys_mx4300-squashfs-factory.bin kernel
and:
- mtd -r -e alt_kernel -n write openwrt-qualcommax-ipq807x-linksys_mx4300-squashfs-factory.bin alt_kernel

4. Back to the OEM firmware:
- mtd -e kernel -n write FW_MX4300_1.0.4.215382_prod.img kernel
and:
- mtd -r -e alt_kernel -n write FW_MX4300_1.0.4.215382_prod.img alt_kernel

5. USB recovery:
Put the initramfs image on the USB:
- dd bs=1M if=openwrt-qualcommax-ipq807x-linksys_mx4300-initramfs-uImage.itb of=/dev/sdX
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'

Co-authored-by: Qiyuan Zhang <zhang.github@outlook.com>
Signed-off-by: Paweł Owoc <frut3k7@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16070
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 days agomtd: check the return value of malloc and pread
Qiyuan Zhang [Mon, 5 Aug 2024 10:47:21 +0000 (06:47 -0400)]
mtd: check the return value of malloc and pread

Check the return value of malloc and pread in case they fail.

Signed-off-by: Qiyuan Zhang <zhang.github@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/16070
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 days agoqualcommax: add kernel cmdline replacement hack
Qiyuan Zhang [Thu, 1 Aug 2024 22:24:55 +0000 (18:24 -0400)]
qualcommax: add kernel cmdline replacement hack

Add kernel command line replacement hack to qualcommax. Now we can
find and replace arguments in the kernel command line by setting
bootargs-find-1, bootargs-replace-1, bootargs-exact-match-1
and bootargs-find-2, bootargs-replace-2, bootargs-exact-match-2
under the chosen node in the device tree.

This hack replaces the first occurence of bootargs-find-X with
bootargs-replace-X. When bootargs-exact-match-X is set to "y",
then the replacement happens only if the kernel command line is
identical to bootargs-find-X.

Signed-off-by: Qiyuan Zhang <zhang.github@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/16070
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 days agomtd: fix resetbc on nand w/ min I/O size > 2048
Qiyuan Zhang [Fri, 2 Aug 2024 14:57:51 +0000 (10:57 -0400)]
mtd: fix resetbc on nand w/ min I/O size > 2048

Fix a bug in linksys_bootcount.c that resetbc  won't work on nand
with min I/O size> 2048.

Check the boot-log entry's intergrity with checksum.

Signed-off-by: Qiyuan Zhang <zhang.github@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/16070
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 days agoqualcommax: ipq807x: fix mac setup for Linksys MX4200v2
Paweł Owoc [Thu, 1 Aug 2024 06:53:14 +0000 (08:53 +0200)]
qualcommax: ipq807x: fix mac setup for Linksys MX4200v2

Currently for Linksys MX4200v2 all u-boot ethXaddr variables share the same MAC address
and there is no need to check them one by one.

Signed-off-by: Paweł Owoc <frut3k7@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16070
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 days agoqualcommax: ipq807x: define configuration for Linksys MX4x00 devices
Paweł Owoc [Sat, 27 Jul 2024 21:25:14 +0000 (23:25 +0200)]
qualcommax: ipq807x: define configuration for Linksys MX4x00 devices

Define shared configuration for Linksys MX4x00 devices.

Signed-off-by: Paweł Owoc <frut3k7@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16070
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 days agoqualcommax: ipq807x: create generic Linksys MX4x00 dts
Paweł Owoc [Fri, 26 Jul 2024 20:21:02 +0000 (22:21 +0200)]
qualcommax: ipq807x: create generic Linksys MX4x00 dts

Create a generic Linksys MX4x00 dts file and extract the specific configuration
for MX4200v1/v2 to a new file.

Signed-off-by: Paweł Owoc <frut3k7@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16070
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 days agoqualcommax: ipq807x: remove unnecessary bootargs-append for MX4200
Paweł Owoc [Sat, 3 Aug 2024 23:06:39 +0000 (01:06 +0200)]
qualcommax: ipq807x: remove unnecessary bootargs-append for MX4200

The default value for the "root" parameter is "/dev/ubiblock0_0"
and there is no need to append it to bootargs.

Signed-off-by: Paweł Owoc <frut3k7@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16070
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 days agoiproute2: fix GCC14 compilation
Rosen Penev [Mon, 23 Dec 2024 22:00:02 +0000 (14:00 -0800)]
iproute2: fix GCC14 compilation

Missing limits.h. Upstream backport.

Add extra backports. Replace Alpine Linux patch with upstream one. Same
with patch 400.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17426
Signed-off-by: Robert Marko <robimarko@gmail.com>
8 days agorealtek: add support for HPE 1920-24G-PoE-370w
Evan Jobling [Sat, 14 Sep 2024 02:43:35 +0000 (02:43 +0000)]
realtek: add support for HPE 1920-24G-PoE-370w

Hardware information:
---------------------

The HPE 1920-24G-PoE+ (370W) (JG926A) is a switch that is
part of the 1920 family wich 370W nominal PoE+ support.

Common with HPE 1920-24G:
  - RTL8382 SoC
  - 24 Gigabit RJ45 ports (built-in RTL8218B, 2 external RTL8218D)
  - 4 SFP ports (external RTL8214FC)
  - RJ45 RS232 port on front panel
  - 32 MiB NOR Flash
  - 128 MiB DDR3 DRAM
  - PT7A7514 watchdog

HPE 1920-24G-PoE+ (370W):
  - PoE chip
  - 3 fans (40mm)

Known issues:
---------------------
- PoE LEDs are uncontrolled.

(Manual taken from f2f09bc)
Booting initramfs image:
------------------------

- Prepare a FTP or TFTP server serving the OpenWrt initramfs image and
  connect the server to a switch port.

- Connect to the console port of the device and enter the extended
  boot menu by typing Ctrl+B when prompted.

- Choose the menu option "<3> Enter Ethernet SubMenu".

- Set network parameters via the option "<5> Modify Ethernet Parameter".
  Enter the FTP/TFTP filename as "Load File Name" ("Target File Name"
  can be left blank, it is not required for booting from RAM). Note that
  the configuration is saved on flash, so it only needs to be done once.

- Select "<1> Download Application Program To SDRAM And Run".

Initial installation:
---------------------

- Boot an initramfs image as described above, then use sysupgrade to
  install OpenWrt permanently. After initial installation, the
  bootloader needs to be configured to load the correct image file

- Enter the extended boot menu again and choose "<4> File Control",
  then select "<2> Set Application File type".

- Enter the number of the file "openwrt-kernel.bin" (should be 1), and
  use the option "<1> +Main" to select it as boot image.

- Choose "<0> Exit To Main Menu" and then "<1> Boot System".

NOTE: The bootloader on these devices can only boot from the VFS
filesystem which normally spans most of the flash. With OpenWrt, only
the first part of the firmware partition contains a valid filesystem,
the rest is used for rootfs. As the bootloader does not know about this,
you must not do any file operations in the bootloader, as this may
corrupt the OpenWrt installation (selecting the boot image is an
exception, as it only stores a flag in the bootloader data, but doesn't
write to the filesystem).

Example PoE config file (/etc/config/poe):
---------------------
config global
        option budget   '370'

config port
        option enable   '1'
        option id       '1'
        option name     'lan8'
        option poe_plus '1'
        option priority '2'
config port
        option enable   '1'
        option id       '2'
        option name     'lan7'
        option poe_plus '1'
        option priority '2'
config port
        option enable   '1'
        option id       '3'
        option name     'lan6'
        option poe_plus '1'
        option priority '2'
config port
        option enable   '1'
        option id       '4'
        option name     'lan5'
        option poe_plus '1'
        option priority '2'
config port
        option enable   '1'
        option id       '5'
        option name     'lan4'
        option poe_plus '1'
        option priority '2'
config port
        option enable   '1'
        option id       '6'
        option name     'lan3'
        option poe_plus '1'
        option priority '2'
config port
        option enable   '1'
        option id       '7'
        option name     'lan2'
        option poe_plus '1'
        option priority '2'
config port
        option enable   '1'
        option id       '8'
        option name     'lan1'
        option poe_plus '1'
        option priority '2'
config port
        option enable   '1'
        option id       '9'
        option name     'lan16'
        option poe_plus '1'
        option priority '2'
config port
        option enable   '1'
        option id       '10'
        option name     'lan15'
        option poe_plus '1'
        option priority '2'
config port
        option enable   '1'
        option id       '11'
        option name     'lan14'
        option poe_plus '1'
        option priority '2'
config port
        option enable   '1'
        option id       '12'
        option name     'lan13'
        option poe_plus '1'
        option priority '2'
config port
        option enable   '1'
        option id       '13'
        option name     'lan12'
        option poe_plus '1'
        option priority '2'
config port
        option enable   '1'
        option id       '14'
        option name     'lan11'
        option poe_plus '1'
        option priority '2'
config port
        option enable   '1'
        option id       '15'
        option name     'lan10'
        option poe_plus '1'
        option priority '2'
config port
        option enable   '1'
        option id       '16'
        option name     'lan9'
        option poe_plus '1'
        option priority '2'

config port
        option enable   '1'
        option id       '17'
        option name     'lan24'
        option poe_plus '1'
        option priority '2'
config port
        option enable   '1'
        option id       '18'
        option name     'lan23'
        option poe_plus '1'
        option priority '2'
config port
        option enable   '1'
        option id       '19'
        option name     'lan22'
        option poe_plus '1'
        option priority '2'
config port
        option enable   '1'
        option id       '20'
        option name     'lan21'
        option poe_plus '1'
        option priority '2'
config port
        option enable   '1'
        option id       '21'
        option name     'lan20'
        option poe_plus '1'
        option priority '2'
config port
        option enable   '1'
        option id       '22'
        option name     'lan19'
        option poe_plus '1'
        option priority '2'
config port
        option enable   '1'
        option id       '23'
        option name     'lan18'
        option poe_plus '1'
        option priority '2'
config port
        option enable   '1'
        option id       '24'
        option name     'lan17'
        option poe_plus '1'
        option priority '2'

Signed-off-by: Evan Jobling <evan.jobling@mslsc.com.au>
Signed-off-by: Fabian Groffen <grobian@gentoo.org>
Link: https://github.com/openwrt/openwrt/pull/17436
[fix space indentation in DTS]
Signed-off-by: Sander Vanheule <sander@svanheule.net>
8 days agorealtek: rtl838x: refactor hpe_1920-24g dts
Evan Jobling [Sat, 14 Sep 2024 02:31:09 +0000 (02:31 +0000)]
realtek: rtl838x: refactor hpe_1920-24g dts

The HPE JG924A, JG925A and JG926A share the same base.
Prepare base device for adding the PoE enabled switch support.

Signed-off-by: Evan Jobling <evan.jobling@mslsc.com.au>
Signed-off-by: Fabian Groffen <grobian@gentoo.org>
Link: https://github.com/openwrt/openwrt/pull/17436
Signed-off-by: Sander Vanheule <sander@svanheule.net>
8 days agomt76: update to Git HEAD (2024-12-30)
Felix Fietkau [Mon, 30 Dec 2024 20:27:46 +0000 (21:27 +0100)]
mt76: update to Git HEAD (2024-12-30)

109114146f9c mt76: only enable tx worker after setting the channel
5fe42ec88fd1 mt76: mt7915: ensure that only one sta entry is active per mac address
1884f568ba02 wifi: mt76: do not add wcid entries to sta poll list during MCU reset
71fa9124d107 wifi: mt76: mt7996: fix NULL pointer dereference in mt7996_mcu_sta_bfer_he
eb85bb3fd5bf wifi: mt76: mt7915: fix eifs value on older chipsets
83e4d4a82e65 wifi: mt76: introduce mt792x_config_mac_addr_list routine
b47e20b440ae wifi: mt76: mt7925: fix NULL deref check in mt7925_change_vif_links
3e3c484726f3 wifi: mt76: mt7925: fix wrong band_idx setting when enable sniffer mode
3f1401a0f035 wifi: mt76: mt7925: fix get wrong chip cap from incorrect pointer
eede99f524e8 wifi: mt76: mt7925: fix the invalid ip address for arp offload
c99e4d51b340 wifi: mt76: mt7996: fix overflows seen when writing limit attributes
af983b2543ed wifi: mt76: mt7915: fix overflows seen when writing limit attributes
af494e2dcc94 wifi: mt76: mt7915: exclude tx backoff time from airtime
6f6a1f7cb381 wifi: mt76: mt7996: exclude tx backoff time from airtime
7f65b1b28b4c wifi: mt76: connac: Extend mt76_connac_mcu_uni_add_dev for MLO
1b5e6abc2e7a wifi: mt76: mt7925: Fix incorrect MLD address in bss_mld_tlv for MLO support
72b4688b3912 wifi: mt76: mt7925: Fix incorrect WCID assignment for MLO
6bd2c044e67a wifi: mt76: mt7925: Fix incorrect WCID phy_idx assignment
1c04e9693466 wifi: mt76: mt7925: fix wrong parameter for related cmd of chan info
01e02947bdbf wifi: mt76: mt7925: Fix CNM Timeout with Single Active Link in MLO
b90b1a1dc71b wifi: mt76: mt7925: Enhance mt7925_mac_link_bss_add to support MLO
53ec7a551f17 wifi: mt76: Enhance mt7925_mac_link_sta_add to support MLO
3c99ef40e0e7 wifi: mt76: mt7925: Update mt7925_mcu_sta_update for BC in ASSOC state
285efc6afaec wifi: mt76: mt7925: Update mt792x_rx_get_wcid for per-link STA
e5c0d1289e6c wifi: mt76: mt7925: Update mt7925_unassign_vif_chanctx for per-link BSS
67dcd5c888c4 wifi: mt76: mt7925: Update secondary link PS flow
fd4d6f87072f wifi: mt76: mt7925: Init secondary link PM state
6d972b5b9d6a wifi: mt76: mt7925: Update mt7925_mcu_uni_[tx,rx]_ba for MLO
3acc6cbb9556 wifi: mt76: mt7925: Cleanup MLO settings post-disconnection
0aab0c61ce92 wifi: mt76: mt7925: Properly handle responses for commands with events
15bead1b0041 wifi: mt76: do not hold queue lock during initial rx buffer alloc
732044a949d5 wifi: mt76: mt7925: config the dwell time by firmware
9ba311ec6afa wifi: mt76: mt7921: introduce CSA support
5d12c7404c22 wifi: mt76: mt7921: add rfkill_poll for hardware rfkill
ef965d408b79 wifi: mt76: mt7925: replace zero-length array with flexible-array member
f8563589c72d wifi: mt76: mt7921u: Add VID/PID for TP-Link TXE50UH

Signed-off-by: Felix Fietkau <nbd@nbd.name>
8 days agowifi-scripts: ucode: iwinfo: skip uninitialized PHYs
Felix Fietkau [Mon, 30 Dec 2024 17:38:42 +0000 (18:38 +0100)]
wifi-scripts: ucode: iwinfo: skip uninitialized PHYs

They show up as null entries in the nl80211 wiphy dump.
Fixes the following error:

Reference error: left-hand side expression is null
In find_phy(), file /usr/share/ucode/iwinfo.uc, line 19, byte 11:
  called from function get_max_power (/usr/share/ucode/iwinfo.uc:42:32)
  called from function module (/usr/share/ucode/iwinfo.uc:102:39)
  called from anonymous function (/usr/bin/iwinfo:5:25)

 `        if (phy.wiphy == wiphy)`
  Near here ------^

Signed-off-by: Felix Fietkau <nbd@nbd.name>
8 days agoloongarch64: remove redundant CONFIG_LIST_HARDENED
Mieczyslaw Nalewaj [Sun, 29 Dec 2024 13:24:32 +0000 (14:24 +0100)]
loongarch64: remove redundant CONFIG_LIST_HARDENED

Delete CONFIG_LIST_HARDENED which you already find in target/generic config.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/17420
Signed-off-by: Nick Hainke <vincent@systemli.org>
8 days agoath79: add missing compatible for ath9k
Rosen Penev [Tue, 17 Dec 2024 20:07:20 +0000 (12:07 -0800)]
ath79: add missing compatible for ath9k

The fritz 300e has an AR9382, which is atypical for ar7242 platforms.
Document it properly.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17427
Signed-off-by: Nick Hainke <vincent@systemli.org>
9 days agokernel: bump 6.6 to 6.6.68
John Audia [Fri, 27 Dec 2024 13:57:52 +0000 (08:57 -0500)]
kernel: bump 6.6 to 6.6.68

Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.68

All patches automatically rebased.

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

Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/17394
Signed-off-by: Nick Hainke <vincent@systemli.org>
10 days agoipq40xx: orbi: add ethernet0 alias
Robert Marko [Sat, 28 Dec 2024 19:53:12 +0000 (20:53 +0100)]
ipq40xx: orbi: add ethernet0 alias

Netgear Orbi devices rely on ethernet0 alias to be present to U-Boot will
populate the MAC.

This fixes the random MAC on each boot after the ethernet0 alias was
dropped from the SoC DTSI.

Fixes: cd9c7211241e ("ipq40xx: 6.1: use latest DSA and ethernet patches")
Fixes: #17384
Link: https://github.com/openwrt/openwrt/pull/17414
Signed-off-by: Robert Marko <robimarko@gmail.com>
10 days agobusybox: fix LTO compiler flags
Felix Fietkau [Sat, 28 Dec 2024 21:46:19 +0000 (22:46 +0100)]
busybox: fix LTO compiler flags

When doing LTO builds, the target related CFLAGS need to be passed to the
linker, so that they are considered for target code generation.
Pass TARGET_CFLAGS in EXTRA_LDFLAGS to ensure that this is handled properly.

Fixes: #17200
Signed-off-by: Felix Fietkau <nbd@nbd.name>
10 days agobcm27xx-utils: update to latest version
Álvaro Fernández Rojas [Sat, 28 Dec 2024 08:44:36 +0000 (09:44 +0100)]
bcm27xx-utils: update to latest version

Full changelog: raspberrypi/utils@6a2a6be...0c02957

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
10 days agobcm27xx-gpu-fw: update to v1.20241126
Álvaro Fernández Rojas [Sat, 28 Dec 2024 08:15:50 +0000 (09:15 +0100)]
bcm27xx-gpu-fw: update to v1.20241126

Full changelog: https://github.com/raspberrypi/firmware/compare/1.20241008...1.20241126

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
10 days agoqualcommax: ipq60xx: mr7350: remove leftover commented-out LED-s
Robert Marko [Sat, 28 Dec 2024 17:30:18 +0000 (18:30 +0100)]
qualcommax: ipq60xx: mr7350: remove leftover commented-out LED-s

These PHY LED-s are leftovers from a time when PHY LED offloading did not
work like the stock FW, so remove them as they are commented-out anyway.

Link: https://github.com/openwrt/openwrt/pull/17413
Signed-off-by: Robert Marko <robimarko@gmail.com>
10 days agobmips: pinctrl-bcm63268: add gpio function
Kyle Hendry [Sun, 24 Nov 2024 19:29:33 +0000 (11:29 -0800)]
bmips: pinctrl-bcm63268: add gpio function

Right now there's no way to know what state CFE will leave the pinctrl
registers in, so they should be explicitly set by linux on boot. This
patch adds a gpio configuration for drivers that need it, i.e. gpio-leds.

Signed-off-by: Kyle Hendry <kylehendrydev@gmail.com>
[improve patch and fix warnings]
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
10 days agoRevert "bmips: drop macronix nand block protection patch"
Álvaro Fernández Rojas [Sat, 28 Dec 2024 15:01:34 +0000 (16:01 +0100)]
Revert "bmips: drop macronix nand block protection patch"

This reverts commit 15b21c474ea1c3f3a15bd06a4783b0a019627984.

The issue seems to appear spuriously.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
10 days agotools/dwarves: update to v1.28
Tony Ambardar [Sun, 8 Dec 2024 04:00:43 +0000 (20:00 -0800)]
tools/dwarves: update to v1.28

Update to the latest upstream version and refresh local patches.

Release Notes: https://lore.kernel.org/bpf/Z1RcnB8WD8wZphcr@x1/

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/17404
Signed-off-by: Nick Hainke <vincent@systemli.org>
10 days agobpftool: Update to v7.5.0
Tony Ambardar [Sun, 8 Dec 2024 03:49:49 +0000 (19:49 -0800)]
bpftool: Update to v7.5.0

Update to the latest upstream release to include recent improvements and
bugfixes, and simplify use of PKG_SOURCE_VERSION.

This version supports BPF objects of either endianness, allowing for
introspection, linking and skeleton creation, and enables cross-compiling
modern BPF applications for targets with non-native byteorder.

Link: https://github.com/libbpf/bpftool/releases/tag/v7.5.0
Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/17404
Signed-off-by: Nick Hainke <vincent@systemli.org>
10 days agolibbpf: Update to v1.5.0
Tony Ambardar [Sun, 8 Dec 2024 03:39:11 +0000 (19:39 -0800)]
libbpf: Update to v1.5.0

Update to the latest upstream release to include recent improvements and
bugfixes, including support for handling BPF objects of either endianness.

Link: https://github.com/libbpf/libbpf/releases/tag/v1.5.0
Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/17404
Signed-off-by: Nick Hainke <vincent@systemli.org>
10 days agobmips: drop macronix nand block protection patch
Álvaro Fernández Rojas [Sat, 28 Dec 2024 11:18:02 +0000 (12:18 +0100)]
bmips: drop macronix nand block protection patch

MX30LFxG18AC OTP area access has been fixed upstream:
https://github.com/torvalds/linux/commit/e87161321a4081d36c4af95af7f0950137569dfe

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
10 days agotrusted-firmware-a.mk: fix release download URL
Chukun Pan [Fri, 20 Dec 2024 14:30:01 +0000 (22:30 +0800)]
trusted-firmware-a.mk: fix release download URL

The URL of trusted-firmware-a is no longer available for
downloading release:
https://git.trustedfirmware.org/TF-A/trusted-firmware-a.git/
curl: (22) The requested URL returned error: 401 Unauthorized

So we switch to the GitHub mirror repository to download.

Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
Link: https://github.com/openwrt/openwrt/pull/17360
Signed-off-by: Robert Marko <robimarko@gmail.com>
10 days agobase-files: sysupgrade: add saving list of installed packages for APK
Robert Marko [Sat, 30 Nov 2024 12:05:39 +0000 (13:05 +0100)]
base-files: sysupgrade: add saving list of installed packages for APK

Add support for saving list of installed packages for APK in the same way
we do it for OPKG.

Unlike OPKG, we dont generate .control files for packages so lets use .list
files instead.

Fixes: #16947
Link: https://github.com/openwrt/openwrt/pull/17123
Signed-off-by: Robert Marko <robimarko@gmail.com>
10 days agokernel: generic: patch: 802.2+LLC - set transport_header offset
Antonio Pastor [Fri, 20 Dec 2024 16:28:45 +0000 (11:28 -0500)]
kernel: generic: patch: 802.2+LLC - set transport_header offset

Conversion to DSA broke 802.2+LLC+SNAP packet processing. Frames
received by napi_complete_done with GRO and DSA have transport_header
set two bytes short, or pointing 2 bytes before network_header &
skb->data. As snap_rcv expects transport_header to point to SNAP
header (OID:PID) after LLC processing advances offset over LLC header
(llc_rcv & llc_fixup_skb), code doesn't find a match and packet is
dropped.

Image built at this commit operates properly:
  86dadeba48 - generic: add patch for GPON-ONU-34-20BI quirk
Image built at following commit exhibits the issue:
  337e36e0ef - ipq806x: convert each device to DSA implementation

As issue is LLC specific, to avoid impacting non-LLC traffic, and to
follow up on original assumption made on kernel commit fda55eca5a33
("net: introduce skb_transport_header_was_set()") stating "network
stacks usually reset the transport header anyway", llc_fixup_skb to
reset and advance the offset. llc_fixup_skb already assumes the LLC
header is at skb->data, and by definition SNAP header immediately
follows.

Signed-off-by: Antonio Pastor <antonio.pastor@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17220
Signed-off-by: Robert Marko <robimarko@gmail.com>
10 days agoocteon: add kmod-usb-dwc3-octeon to DEFAULT_PACKAGES
Fabian Groffen [Fri, 27 Dec 2024 14:52:32 +0000 (15:52 +0100)]
octeon: add kmod-usb-dwc3-octeon to DEFAULT_PACKAGES

Since 24.10.0 the Linux kernel needs this to enable the USB stack on
Cavium Octeon platforms with DesignWare Core USB3 IP.

Issue: https://github.com/openwrt/openwrt/issues/17195
Signed-off-by: Fabian Groffen <grobian@gentoo.org>
Link: https://github.com/openwrt/openwrt/pull/17393
Signed-off-by: Robert Marko <robimarko@gmail.com>
10 days agokernel: add kmod-usb-dwc3-octeon
Fabian Groffen [Fri, 27 Dec 2024 14:48:19 +0000 (15:48 +0100)]
kernel: add kmod-usb-dwc3-octeon

Since 24.10.0, Linux 6.6 is used which includes a reorganisation of
Octeon DWC3 glue code.
https://lore.kernel.org/all/ZJC3LLpUlatnLdnv@lenoch/

As a result, Octeon devices using this, such as EdgeRouter 4 have a no
longer functioning USB stack.

Build kmod-usb-dwc3-octeon for Cavium Octeon targets.

Issue: https://github.com/openwrt/openwrt/issues/17195
Signed-off-by: Fabian Groffen <grobian@gentoo.org>
Link: https://github.com/openwrt/openwrt/pull/17393
Signed-off-by: Robert Marko <robimarko@gmail.com>
11 days agobcm27xx: pull 6.6 patches from RPi repo
Álvaro Fernández Rojas [Fri, 27 Dec 2024 16:14:40 +0000 (17:14 +0100)]
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.67..HEAD
(HEAD -> 811ff707533bcd67cdcd368bbd46223082009b12)

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
11 days agomac80211: ath9k: clean up gpiochip
Rosen Penev [Sun, 20 Oct 2024 23:12:30 +0000 (16:12 -0700)]
mac80211: ath9k: clean up gpiochip

Simplify patch with gpiochip_add_data, struct reduction, new GPIO API,
and header cleanup.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16635
Signed-off-by: Robert Marko <robimarko@gmail.com>
11 days agomac80211: ath9k: remove platform leds
Rosen Penev [Tue, 8 Oct 2024 19:55:07 +0000 (12:55 -0700)]
mac80211: ath9k: remove platform leds

These only work with and are useful with mach files. Now that those are
gone, this can go too.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16635
Signed-off-by: Robert Marko <robimarko@gmail.com>
11 days agokernel: remove custom ath9k_platform.h
Rosen Penev [Mon, 7 Oct 2024 22:50:37 +0000 (15:50 -0700)]
kernel: remove custom ath9k_platform.h

This is no longer used by mac80211 local patches.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16635
Signed-off-by: Robert Marko <robimarko@gmail.com>
11 days agomac80211: remove ath9k_platform_data
Rosen Penev [Mon, 7 Oct 2024 21:45:50 +0000 (14:45 -0700)]
mac80211: remove ath9k_platform_data

This goes away in kernel 6.12 upstream.

Get ahead of the curve by fixing all the local patches as well.

Get rid of CONFIG_OF. It's needed now.

Refreshed all patches.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16635
Signed-off-by: Robert Marko <robimarko@gmail.com>
11 days agogeneric: add missing CONFIG_LEDS_KTD202X symbol
Álvaro Fernández Rojas [Fri, 27 Dec 2024 16:34:39 +0000 (17:34 +0100)]
generic: add missing CONFIG_LEDS_KTD202X symbol

Commit 56d97fff55f3 backported leds-ktd202x from upstream but didn't add the
generic config symbol.

Fixes: 56d97fff55f3 ("generic: backport support for KTD2026/7 rgb(w) led controller")
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17396
Signed-off-by: Robert Marko <robimarko@gmail.com>
11 days agonetfilter: fix bogus reference to `kmod-nf-conntrack-timeout`
Joel Low [Fri, 27 Dec 2024 00:13:26 +0000 (08:13 +0800)]
netfilter: fix bogus reference to `kmod-nf-conntrack-timeout`

Fix bogus reference to kmod-nf-conntrack-timeout, fixing the warning
`WARNING: Makefile 'package/kernel/linux/Makefile' has a dependency on
'kmod-nf-conntrack-timeout', which does not exist`.

Fixes: 0e2dcfc4f488 ("netfilter: add kmod-nfnetlink-ct{helper,timeout}")
Signed-off-by: Joel Low <joel@joelsplace.sg>
Link: https://github.com/openwrt/openwrt/pull/17388
Signed-off-by: Robert Marko <robimarko@gmail.com>
11 days agomvebu: fix Linksys power LED
Richard Schneidt [Fri, 27 Dec 2024 11:57:34 +0000 (12:57 +0100)]
mvebu: fix Linksys power LED

Kernel 6.6 requires LED node names to be prefixed via "led-", otherwise
probing the LED will fail, so update our downstream patch adding the LED.

Signed-off-by: Richard Schneidt <ricsc@users.noreply.github.com>
Link: https://github.com/openwrt/openwrt/pull/17330
Signed-off-by: Robert Marko <robimarko@gmail.com>
11 days agolinux: replace u-boot,env with nvmem,layout
Rosen Penev [Sat, 5 Oct 2024 22:06:13 +0000 (15:06 -0700)]
linux: replace u-boot,env with nvmem,layout

The former is deprecated in favor of nvmem-layout. In preparation for
eventual removal from the kernel, do so here.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16097
Signed-off-by: Robert Marko <robimarko@gmail.com>
11 days agolinux: replace nvmem-cells with nvmem-layout
Rosen Penev [Tue, 6 Aug 2024 19:29:58 +0000 (12:29 -0700)]
linux: replace nvmem-cells with nvmem-layout

The former is deprecated in favor of nvmem-layout. In preparation for
eventual removal from the kernel, do so here.

Some of these are leftovers from nvmem-layout conversion.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16097
Signed-off-by: Robert Marko <robimarko@gmail.com>