Paul Donald [Sun, 21 Apr 2024 21:18:36 +0000 (23:18 +0200)]
lldpd: get_config_cid_ifaces() -> get_interface_csv()
where csv = comma separated value(s)
Make the function more generic. Can use it for not only 'config'.
Now it can be used to parse interfaces for additional lldpd settings,
e.g. custom-tlv.
Tested on: 22.03.6
Signed-off-by: Paul Donald <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/14872
(cherry picked from commit
a015f59880c72a1bdd07de32491f85ce7f8d2a1c)
Link: https://github.com/openwrt/openwrt/pull/18343
Signed-off-by: Robert Marko <[email protected]>
Felix Fietkau [Wed, 19 Mar 2025 12:18:59 +0000 (13:18 +0100)]
libnl-tiny: update to Git HEAD (2025-03-19)
c0df580adbd4 attr.c: fix nla_reserve size check
Signed-off-by: Felix Fietkau <[email protected]>
(cherry picked from commit
ddc2ae02b3495ffcc6bb5194c777952621c46c25)
Christian Marangi [Thu, 6 Mar 2025 11:19:40 +0000 (12:19 +0100)]
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 <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18174
Signed-off-by: Robert Marko <[email protected]>
(cherry picked from commit
ea6f3e49d6509f3bddb43364cf7225b4935fee82)
Tomasz Maciej Nowak [Tue, 4 Mar 2025 16:43:11 +0000 (17:43 +0100)]
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/[email protected]
Signed-off-by: Tomasz Maciej Nowak <[email protected]>
Link: https://patchwork.ozlabs.org/project/openwrt/patch/[email protected]/
Signed-off-by: Hauke Mehrtens <[email protected]>
(cherry picked from commit
adc4d95c742139411c551a20d93103c9a1155ddd)
Tomasz Maciej Nowak [Tue, 4 Mar 2025 16:43:10 +0000 (17:43 +0100)]
uboot-mediatek: u7623: remove keys pin function
Apparently U-Boot will discard whole node if requested pin function is
unknown to the driver. This resulted in inability to interact with
U-Boot on the said board, as U-Boot always assumed the recovery key
pressed and issued recovery procedure. Log snippet:
button_gpio gpio-keys: pinctrl_select_state_full: pinctrl_config_one: err=-38
reset button found
button pushed, resetting environment
Recovery procedure also booted recovery image, which didn't affect much
the 23.05.x release, since the root fs argument was valid, so changes
persisted. But as 24.10.x hit with fitblk, the board will boot only
recovery image (initramfs) because of default bootargs will reset on each
boot and U-Boot provided bootargs took precedence.
Fixes: 42eeb22450f2 ("uboot-mediatek: fix factory/reset button")
Signed-off-by: Tomasz Maciej Nowak <[email protected]>
Link: https://patchwork.ozlabs.org/project/openwrt/patch/[email protected]/
Signed-off-by: Hauke Mehrtens <[email protected]>
(cherry picked from commit
f8a2e1c68b48d72234172543f4232e77f065ca4d)
J. S. Seldenthuis [Sun, 23 Feb 2025 12:54:58 +0000 (13:54 +0100)]
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 <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18082
Signed-off-by: Hauke Mehrtens <[email protected]>
(cherry picked from commit
4fed462454469e9af89bc92cd12d30c47d43efe4)
Thomas Richard [Mon, 24 Feb 2025 10:15:51 +0000 (11:15 +0100)]
optee-os.mk: override default PATH to not use hostpkg python
In some cases hostpkg python from packages feed is used (hostpkg has higher
priority in PATH) which causes build failure (cryptography module is
missing). So override PATH to not use hostpkg python.
Signed-off-by: Thomas Richard <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18102
Signed-off-by: Hauke Mehrtens <[email protected]>
(cherry picked from commit
8c3a43be27d989ef42d4148949e43266694a5168)
Shiji Yang [Fri, 14 Mar 2025 11:19:11 +0000 (19:19 +0800)]
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 <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18241
Signed-off-by: Hauke Mehrtens <[email protected]>
(cherry picked from commit
4efb4a26d28ecdd5fec9dc3a85bcb46a45a75f60)
John Audia [Sat, 8 Mar 2025 21:33:32 +0000 (16:33 -0500)]
firmware: intel-microcode: update to
20250211
Debian Changelogs from
20240531:
local access.
- Mitigations for INTEL-SA-01079 (CVE-2024-23918)
Potential security vulnerabilities in some Intel Xeon processors
using Intel SGX may allow escalation of privilege. Intel disclosed
that some processor models were already fixed by a previous
microcode update.
- Updated mitigations for INTEL-SA-01097 (CVE-2024-24968)
Improper finite state machines (FSMs) in hardware logic in some
Intel Processors may allow an privileged user to potentially enable a
denial of service via local access.
- Mitigations for INTEL-SA-01103 (CVE-2024-23984)
A potential security vulnerability in the Running Average Power Limit
(RAPL) interface for some Intel Processors may allow information
disclosure. Added mitigations for more processor models.
* Updated Microcodes:
sig 0x000806f8, pf_mask 0x87, 2024-06-20, rev 0x2b000603, size 588800
sig 0x000806f7, pf_mask 0x87, 2024-06-20, rev 0x2b000603
sig 0x000806f6, pf_mask 0x87, 2024-06-20, rev 0x2b000603
sig 0x000806f5, pf_mask 0x87, 2024-06-20, rev 0x2b000603
sig 0x000806f4, pf_mask 0x87, 2024-06-20, rev 0x2b000603
sig 0x00090672, pf_mask 0x07, 2024-05-29, rev 0x0037, size 224256
sig 0x00090675, pf_mask 0x07, 2024-05-29, rev 0x0037
sig 0x000b06f2, pf_mask 0x07, 2024-05-29, rev 0x0037
sig 0x000b06f5, pf_mask 0x07, 2024-05-29, rev 0x0037
sig 0x000906a3, pf_mask 0x80, 2024-06-03, rev 0x0435, size 223232
sig 0x000906a4, pf_mask 0x80, 2024-06-03, rev 0x0435
sig 0x000a06a4, pf_mask 0xe6, 2024-08-02, rev 0x0020, size 138240
sig 0x000b06a2, pf_mask 0xe0, 2024-05-29, rev 0x4123, size 220160
sig 0x000b06a3, pf_mask 0xe0, 2024-05-29, rev 0x4123
sig 0x000b06a8, pf_mask 0xe0, 2024-05-29, rev 0x4123
sig 0x000c06f2, pf_mask 0x87, 2024-06-20, rev 0x21000283, size 560128
sig 0x000c06f1, pf_mask 0x87, 2024-06-20, rev 0x21000283
* source: update symlinks to reflect id of the latest release,
20241112
* Update changelog for 3.
20240910.1 and 3.
20240813.1 with new information:
INTEL-SA-1103 was addressed by 3.
20240813.1 for some processor models,
and not by 3.
20240910. INTEL-SA-1079 was addressed by 3.
20240910.1 for
some processor models.
-- Henrique de Moraes Holschuh <
[email protected]> Thu, 14 Nov 2024 15:37:40 -0300
intel-microcode (3.
20241029.1) UNRELEASED; urgency=medium
* New upstream microcode datafile
20241029
- Not relevant for operating system microcode updates
- Only when loaded from firmware, this update fixes the critical,
potentially hardware-damaging errata RPL061: Incorrect Internal
Voltage Request on Raptor Lake (Core 13th/14th gen) Intel
processors.
* Updated Microcodes:
sig 0x000b0671, pf_mask 0x32, 2024-08-29, rev 0x012b, size 211968
-- Henrique de Moraes Holschuh <
[email protected]> Thu, 14 Nov 2024 14:49:03 -0300
intel-microcode (3.
20240910.1) unstable; urgency=medium
* New upstream microcode datafile
20240910 (closes: #
1081363)
- Mitigations for INTEL-SA-01097 (CVE-2024-24968)
Improper finite state machines (FSMs) in hardware logic in some
Intel Processors may allow an privileged user to potentially enable a
denial of service via local access.
- Fixes for unspecified functional issues on several processor models
- The processor voltage limit issue on Core 13rd/14th gen REQUIRES A
FIRMWARE UPDATE. It is present in this release for sig 0xb0671, but
THE VOLTAGE ISSUE FIX ONLY WORKS WHEN THE MICROCODE UPDATE IS LOADED
THROUGH THE FIT TABLE IN FIRMWARE. Contact your system vendor for a
firmware update that includes the appropriate microcode update for
your processor.
* Updated Microcodes:
sig 0x00090672, pf_mask 0x07, 2024-02-22, rev 0x0036, size 224256
sig 0x00090675, pf_mask 0x07, 2024-02-22, rev 0x0036
sig 0x000b06f2, pf_mask 0x07, 2024-02-22, rev 0x0036
sig 0x000b06f5, pf_mask 0x07, 2024-02-22, rev 0x0036
sig 0x000906a3, pf_mask 0x80, 2024-02-22, rev 0x0434, size 222208
sig 0x000906a4, pf_mask 0x80, 2024-02-22, rev 0x0434
sig 0x000a06a4, pf_mask 0xe6, 2024-06-17, rev 0x001f, size 137216
sig 0x000b0671, pf_mask 0x32, 2024-07-18, rev 0x0129, size 215040
sig 0x000b06a2, pf_mask 0xe0, 2024-02-22, rev 0x4122, size 220160
sig 0x000b06a3, pf_mask 0xe0, 2024-02-22, rev 0x4122
sig 0x000b06a8, pf_mask 0xe0, 2024-02-22, rev 0x4122
sig 0x000b06e0, pf_mask 0x19, 2024-03-25, rev 0x001a, size 138240
* Update changelog for 3.
20240813.1 with new information
* Update changelog for 3.
20240514.1 with new information
* source: update symlinks to reflect id of the latest release,
20240910
-- Henrique de Moraes Holschuh <
[email protected]> Sat, 21 Sep 2024 16:40:07 -0300
intel-microcode (3.
20240813.2) unstable; urgency=high
* Merge changes from intel-microcode/3.
20240531.1+nmu1, which were left out
from 3.
20240813.1 by an oversight, regressing merged-usr. Closes: #
1060200
-- Henrique de Moraes Holschuh <
[email protected]> Sat, 17 Aug 2024 11:31:32 -0300
intel-microcode (3.
20240813.1) unstable; urgency=medium
* New upstream microcode datafile
20240813 (closes: #
1078742)
- Mitigations for INTEL-SA-01083 (CVE-2024-24853)
Incorrect behavior order in transition between executive monitor and SMI
transfer monitor (STM) in some Intel Processors may allow a privileged
user to potentially enable escalation of privilege via local access.
- Mitigations for INTEL-SA-01118 (CVE-2024-25939)
Mirrored regions with different values in 3rd Generation Intel Xeon
Scalable Processors may allow a privileged user to potentially enable
denial of service via local access.
- Mitigations for INTEL-SA-01100 (CVE-2024-24980)
Protection mechanism failure in some 3rd, 4th, and 5th Generation Intel
Xeon Processors may allow a privileged user to potentially enable
escalation of privilege via local access.
- Mitigations for INTEL-SA-01038 (CVE-2023-42667)
Improper isolation in the Intel Core Ultra Processor stream cache
mechanism may allow an authenticated user to potentially enable
escalation of privilege via local access. Intel disclosed that some
processor models were already fixed by the previous microcode update.
- Mitigations for INTEL-SA-01046 (CVE-2023-49141)
Improper isolation in some Intel Processors stream cache mechanism may
allow an authenticated user to potentially enable escalation of
privilege via local access. Intel disclosed that some processor models
were already fixed by the previous microcode update.
- Mitigations for INTEL-SA-01079 (CVE-2024-23918)
Potential security vulnerabilities in some Intel Xeon processors
using Intel SGX may allow escalation of privilege. Intel released this
information during the full disclosure for the
20241112 update.
Processor signatures 0x606a6 and 0x606c1.
- Mitigations for INTEL-SA-01103 (CVE-2024-23984)
A potential security vulnerability in the Running Average Power Limit
(RAPL) interface for some Intel Processors may allow information
disclosure. Intel released this information during the full disclosure
for the
20240910 update. Processor signatures 0x5065b, 0x606a6,
0x606c1.
- Fix for unspecified functional issues on several processor models
- Fix for errata TGL068/ADL075/ICL088/... "Processor may hang during a
microcode update". It is not clear which processors were fixed by this
release, or by one of the microcode updates from 2024-05.
- Mitigations for INTEL-SA-01213 (CVE-2024-36293)
Improper access control in the EDECCSSA user leaf function for some
Intel Processors with Intel SGX may allow an authenticated user to
potentially enable denial of service via local access. Intel released
this information during the full disclosure for the
20250211 update.
Processor signature 0x906ec (9th Generation Intel Core processor).
* Updated microcodes:
sig 0x00050657, pf_mask 0xbf, 2024-03-01, rev 0x5003707, size 39936
sig 0x0005065b, pf_mask 0xbf, 2024-04-01, rev 0x7002904, size 30720
sig 0x000606a6, pf_mask 0x87, 2024-04-01, rev 0xd0003e7, size 308224
sig 0x000606c1, pf_mask 0x10, 2024-04-03, rev 0x10002b0, size 300032
sig 0x000706e5, pf_mask 0x80, 2024-02-15, rev 0x00c6, size 114688
sig 0x000806c1, pf_mask 0x80, 2024-02-15, rev 0x00b8, size 112640
sig 0x000806c2, pf_mask 0xc2, 2024-02-15, rev 0x0038, size 99328
sig 0x000806d1, pf_mask 0xc2, 2024-02-15, rev 0x0052, size 104448
sig 0x000806e9, pf_mask 0xc0, 2024-02-01, rev 0x00f6, size 106496
sig 0x000806e9, pf_mask 0x10, 2024-02-01, rev 0x00f6, size 106496
sig 0x000806ea, pf_mask 0xc0, 2024-02-01, rev 0x00f6, size 105472
sig 0x000806eb, pf_mask 0xd0, 2024-02-01, rev 0x00f6, size 106496
sig 0x000806ec, pf_mask 0x94, 2024-02-05, rev 0x00fc, size 106496
sig 0x00090661, pf_mask 0x01, 2024-04-05, rev 0x001a, size 20480
sig 0x000906ea, pf_mask 0x22, 2024-02-01, rev 0x00f8, size 105472
sig 0x000906eb, pf_mask 0x02, 2024-02-01, rev 0x00f6, size 106496
sig 0x000906ec, pf_mask 0x22, 2024-02-01, rev 0x00f8, size 106496
sig 0x000906ed, pf_mask 0x22, 2024-02-05, rev 0x0100, size 106496
sig 0x000a0652, pf_mask 0x20, 2024-02-01, rev 0x00fc, size 97280
sig 0x000a0653, pf_mask 0x22, 2024-02-01, rev 0x00fc, size 98304
sig 0x000a0655, pf_mask 0x22, 2024-02-01, rev 0x00fc, size 97280
sig 0x000a0660, pf_mask 0x80, 2024-02-01, rev 0x00fe, size 97280
sig 0x000a0661, pf_mask 0x80, 2024-02-01, rev 0x00fc, size 97280
sig 0x000a0671, pf_mask 0x02, 2024-03-07, rev 0x0062, size 108544
sig 0x000a06a4, pf_mask 0xe6, 2024-04-15, rev 0x001e, size 137216
* source: update symlinks to reflect id of the latest release,
20240813
* postinst, postrm: switch to dpkg-trigger to run update-initramfs
-- Henrique de Moraes Holschuh <
[email protected]> Thu, 15 Aug 2024 14:41:50 -0300
Signed-off-by: John Audia <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18197
Signed-off-by: Hauke Mehrtens <[email protected]>
(cherry picked from commit
f4801cffc3697d57a6d47e325d2f43c785ce3416)
Tianling Shen [Sun, 2 Mar 2025 12:06:49 +0000 (20:06 +0800)]
ramips: fix reading mac address for hiwifi hc5962
The spaces in variables have been stripped since commit
551e04f3c9c0
("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 <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18150
Signed-off-by: Hauke Mehrtens <[email protected]>
(cherry picked from commit
2091c29578ca99b468e79695149be6f4b6cccb36)
Mikhail Zhilkin [Sat, 15 Feb 2025 12:24:20 +0000 (12:24 +0000)]
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 <[email protected]>
Signed-off-by: Mikhail Zhilkin <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/17976
(cherry picked from commit
043df82cea89786f1dcdfe47af1736bf8833fde9)
Signed-off-by: Mikhail Zhilkin <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18270
Signed-off-by: Hauke Mehrtens <[email protected]>
Roland Reinl [Wed, 12 Mar 2025 18:11:08 +0000 (19:11 +0100)]
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 <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18233
(cherry picked from commit
c13a050d5ad55ab090a592823a9f964af8614fc2)
Link: https://github.com/openwrt/openwrt/pull/18252
Signed-off-by: Hauke Mehrtens <[email protected]>
Álvaro Fernández Rojas [Sat, 15 Mar 2025 10:43:43 +0000 (11:43 +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.83..HEAD
(HEAD ->
08d4e8f52256bd422d8a1f876411603f627d0a82)
Signed-off-by: Álvaro Fernández Rojas <[email protected]>
(cherry picked from commit
251f76c1c67d62c585d799c38dab31e1385d2ad5)
Álvaro Fernández Rojas [Sat, 15 Mar 2025 10:50:44 +0000 (11:50 +0100)]
bcm27xx-utils: update to latest version
Full changelog: https://github.com/raspberrypi/utils/compare/
0c02957911da1c661be201236c4f2a2be1778b3e...
685afa8c0d6f2310eaefe1b528627a8bf3154ca0
Signed-off-by: Álvaro Fernández Rojas <[email protected]>
(cherry picked from commit
6403c2890cfc07e37d70c7cb5cfbc20207b5369d)
Álvaro Fernández Rojas [Sat, 15 Mar 2025 10:54:08 +0000 (11:54 +0100)]
bcm27xx-gpu-fw: update to v1.
20250305
Full changelog: https://github.com/raspberrypi/firmware/compare/1.
20241126...1.
20250305
Signed-off-by: Álvaro Fernández Rojas <[email protected]>
(cherry picked from commit
2804cfe553c8cb67be08599407030d522862abcb)
Felix Fietkau [Sun, 9 Mar 2025 15:43:58 +0000 (16:43 +0100)]
unetd: update to Git HEAD (2025-03-09)
d8b43985e4d7 ubus: fix token_create policy
7326459bd743 ubus: dump service information on network_get
6c9c8fbd8128 service: add @all as alias for all members, unless defined differently
Signed-off-by: Felix Fietkau <[email protected]>
(cherry picked from commit
84909c62c8455a08fb8bb29bd7809ab22c927bf0)
John Audia [Thu, 13 Mar 2025 20:47:09 +0000 (16:47 -0400)]
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 <[email protected]>
[fixed issues with bcm27xx patches]
Signed-off-by: Álvaro Fernández Rojas <[email protected]>
(cherry picked from commit
748682e8556d27d904d3fe363228e16eff47afd9)
John Audia [Sun, 9 Mar 2025 10:18:32 +0000 (06:18 -0400)]
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 <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18188
(cherry picked from commit
7cf8f61eb24c32bb47925cbd11f1cde68c9ba0b9)
Link: https://github.com/openwrt/openwrt/pull/18208
Signed-off-by: Hauke Mehrtens <[email protected]>
John Audia [Fri, 7 Mar 2025 20:17:22 +0000 (15:17 -0500)]
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 <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18188
(cherry picked from commit
aabc61d93f89bf3253bad98fd2fe8d5450c352bf)
Link: https://github.com/openwrt/openwrt/pull/18208
Signed-off-by: Hauke Mehrtens <[email protected]>
John Audia [Thu, 27 Feb 2025 20:06:51 +0000 (15:06 -0500)]
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 <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18140
Signed-off-by: Robert Marko <[email protected]>
(cherry picked from commit
86fd00b0fb83300ed7bd39af137a495c61253713)
Link: https://github.com/openwrt/openwrt/pull/18208
Signed-off-by: Hauke Mehrtens <[email protected]>
Roland Reinl [Fri, 28 Feb 2025 05:11:01 +0000 (06:11 +0100)]
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 <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18139
(cherry picked from commit
8a7863767056ca0dec69a6b383b6e0c0d5fc3af7)
Link: https://github.com/openwrt/openwrt/pull/18204
Signed-off-by: Hauke Mehrtens <[email protected]>
Michael Trinidad [Sun, 16 Feb 2025 23:44:03 +0000 (18:44 -0500)]
mwlwifi: update to version 10.4.11-
20250206
The fixes are only for the WRT1900X and WRT1200AC.
It contains:
Deletes the driver's ability to modify the debit table.
Remove skb_get(done_skb) in txdone
Reworking ISR
clean code
Napi replaces tasklet
Add rx_decrypt feature
Signed-off-by: Michael Trinidad <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/17997
Signed-off-by: Christian Marangi <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18145
Signed-off-by: Hauke Mehrtens <[email protected]>
Andreas Gnau [Fri, 10 Jan 2025 21:42:03 +0000 (22:42 +0100)]
ramips: mt7621: Reduce hardcoded metadata for Inteno Y3 imgs
Instead of hardcoded metadata, put some sensible data instead.
Signed-off-by: Andreas Gnau <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/17551
(cherry picked from commit
4e3342f5f17d5d227f036b4b16e2a3721a2e8493)
Link: https://github.com/openwrt/openwrt/pull/18238
Signed-off-by: Hauke Mehrtens <[email protected]>
Andreas Gnau [Tue, 7 Jan 2025 22:55:12 +0000 (23:55 +0100)]
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
fea2264d9fdd
(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 <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/17551
(cherry picked from commit
3e7337feead8e0a0f5a05f5b91d7d0fd7f14ec56)
Link: https://github.com/openwrt/openwrt/pull/18238
Signed-off-by: Hauke Mehrtens <[email protected]>
Andreas Gnau [Tue, 7 Jan 2025 22:04:30 +0000 (23:04 +0100)]
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 <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/17551
(cherry picked from commit
e8603f3b5a15856fccee2e02a5406ca9c8b2ba1d)
Link: https://github.com/openwrt/openwrt/pull/18238
Signed-off-by: Hauke Mehrtens <[email protected]>
Coia Prant [Tue, 11 Mar 2025 03:33:00 +0000 (11:33 +0800)]
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 <[email protected]>
Tested-by: Coia Prant <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/17472
Link: https://github.com/openwrt/openwrt/pull/18221
Signed-off-by: Hauke Mehrtens <[email protected]>
(cherry picked from commit
6a1bdcf545eec8f9ed5130e7f5794fca6ee54cb3)
Coia Prant [Tue, 11 Mar 2025 03:21:33 +0000 (11:21 +0800)]
mac80211: rt2x00: load the eeprom data from devicetree embedded data on Ralink SoCs
It will allow loading eeprom from eeprom-data embedded in device tree.
Ported from mediatek mt76 wireless driver (drivers/net/wireless/mediatek/mt76/eeprom.c)
Signed-off-by: Coia Prant <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/17472
Link: https://github.com/openwrt/openwrt/pull/18221
Signed-off-by: Hauke Mehrtens <[email protected]>
(cherry picked from commit
5d266b55ed4c4c4efe2e150b8b2326bb13bb6fb0)
Tianling Shen [Wed, 26 Feb 2025 13:52:53 +0000 (21:52 +0800)]
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:
opkg update && opkg install 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 <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18121
(cherry picked from commit
96c6608346758ceffebf30d74cab00db58874bb9)
[sync uboot defconfigs with 24.10 branch, change apk to opkg]
Signed-off-by: Tianling Shen <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18218
Signed-off-by: Hauke Mehrtens <[email protected]>
Daniel Golle [Mon, 3 Mar 2025 13:27:15 +0000 (13:27 +0000)]
libpcap: backport support for various DSA tags
Trying to tcpdump DSA conduits results in errors such as
"unsupported DSA tag: mtk".
Backport two commits adding support for various DSA tags to libpcap.
Signed-off-by: Daniel Golle <[email protected]>
(cherry picked from commit
fad94e8cda573389164827dc74e583d10eeae2e5)
Robert Marko [Thu, 27 Feb 2025 10:05:26 +0000 (11:05 +0100)]
libpcap: add missing PKG_CONFIG_DEPENDS entries
Currently, enabling USB, BT or Netfilter support after initial compilation
will not trigger a rebuild, so add the missing PKG_CONFIG_DEPENDS so
that rebuild gets triggered.
Signed-off-by: Robert Marko <[email protected]>
(cherry picked from commit
fe37574be63ef7c6c1c1e611f052ed25c99a8aa1)
Mieczyslaw Nalewaj [Sat, 1 Mar 2025 16:41:50 +0000 (17:41 +0100)]
ramips: mt7621: 02_network optimization
Merging repeating blocks inside the ramips_setup_interfaces() function.
Signed-off-by: Mieczyslaw Nalewaj <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18146
(cherry picked from commit
a0449f8cf3a53f746c409ce033a6c78065c5edde)
Link: https://github.com/openwrt/openwrt/pull/18205
Signed-off-by: Hauke Mehrtens <[email protected]>
Eric ZHANG [Sun, 2 Mar 2025 07:54:37 +0000 (15:54 +0800)]
dnsmasq: fix handlers for options `filter_rr` and `cache_rr`
According to:
- https://github.com/openwrt/luci/blob/master/modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js#L700
- https://github.com/openwrt/luci/blob/master/modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js#L402
These two options should be of type `MultiValue` but here there're used as single value. This results in dnsmasq crashes when either of these options are set with multiple values, which leads to an invalid space-separated value.
As these options are designed to take multiple values, I think it's better to use list format eg. `list filter_rr 'AAAA'`, instead of `option filter_rr 'AAAA,HTTPS'`.
See: https://forum.openwrt.org/t/selecting-more-than-one-filter-arbitrary-rr-or-cache-arbitrary-rr-in-v24-10-0-crashes-dnsmasq/225801
Tested on 24.10.0
Signed-off-by: Eric ZHANG <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18149
Signed-off-by: Christian Marangi <[email protected]>
(cherry picked from commit
d136c24f7cc9f7b5ac72259ccf9193683f4ced74)
Martin Schiller [Thu, 6 Mar 2025 08:52:27 +0000 (09:52 +0100)]
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 <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18182
Signed-off-by: Hauke Mehrtens <[email protected]>
(cherry picked from commit
6af46a69846e4e92fa8dcf6c3dccbaf87d513064)
Martin Schiller [Thu, 6 Mar 2025 08:38:12 +0000 (09:38 +0100)]
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
6bdea8c7bd85 ("mediatek: mt7629: 6.6: disable
LEDS_SMARTRG_LED by default") for more details.
Signed-off-by: Martin Schiller <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18182
Signed-off-by: Hauke Mehrtens <[email protected]>
(cherry picked from commit
5013efc4f907550fadbf15e2fb1bdb2ead3325db)
Ahmed Naseef [Tue, 28 Jan 2025 07:28:31 +0000 (11:28 +0400)]
kernel: usbnet: Restore usb%d naming for cdc-ethernet devices with local MAC
Prior to commit https://github.com/torvalds/linux/commit/
8a7d12d674ac6f2147c18f36d1e15f1a48060edf,
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/
[email protected]/
[2] https://lore.kernel.org/all/
20241203130457[email protected]/
Tested-by: Ahmed Naseef <[email protected]>
Signed-off-by: Ahmed Naseef <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/17757
Signed-off-by: Robert Marko <[email protected]>
(cherry picked from commit
ecd609f509f29ed1f75db5c7a623f359c64efb72)
Felix Fietkau [Wed, 5 Mar 2025 08:19:12 +0000 (09:19 +0100)]
hostapd: add missing #ifdef to fix compile error when 802.11be support is disabled
Fixes: d65d546bce36 ("hostapd: add missing ctrl socket initialization on bss add")
Signed-off-by: Felix Fietkau <[email protected]>
(cherry picked from commit
46c17c22cd9cdccbdb0f1eeddb3f087ff8d9486f)
Felix Fietkau [Wed, 5 Mar 2025 07:00:43 +0000 (08:00 +0100)]
hostapd: add missing ctrl socket initialization on bss add
Fixes adding/removing individual bss interfaces
Signed-off-by: Felix Fietkau <[email protected]>
(cherry picked from commit
d65d546bce36ec71e3cda4e631f24cc711f7bcb2)
Matthew Cather [Mon, 3 Mar 2025 21:46:03 +0000 (15:46 -0600)]
hostapd: get reference to object before removal
`ucv_array_set` releases the array's reference to the object being cleared.
If this is the last reference to the object, it will be freed, making our
pointer `val` invalid.
To avoid this, we need to obtain our own reference to the object so we
can safely return `val`.
Signed-off-by: Matthew Cather <[email protected]>
(cherry picked from commit
6a10da2934441a59283394a84917edf4983e3043)
Matthew Cather [Mon, 3 Mar 2025 20:00:35 +0000 (14:00 -0600)]
hostapd: consistent reference counting for registry
Since `wpa_ucode_registry_add` collects its own reference to the values added, the
two functions `hostapd_ucode_bss_get_uval` and `hostapd_ucode_iface_get_uval` would
sometimes return a referenced object (from `uc_resource_new`) and sometimes return
an unreferenced object (from `wpa_ucode_registry_get`). Now, both functions always
return a referenced object.
This change also indirectly fixes `hostapd_ucode_bss_get_uval`, ensuring it now
always returns a referenced object.
Signed-off-by: Matthew Cather <[email protected]>
Signed-off-by: Felix Fietkau <[email protected]>
(cherry picked from commit
7729f960933a03c9eebd2b65a695ea57718ccb77)
Matthew Cather [Mon, 3 Mar 2025 19:40:39 +0000 (13:40 -0600)]
hostapd: clean-up references to local variables
Remove extra ucv_get calls when passing a referenced value to an object
without using it further.
Signed-off-by: Matthew Cather <[email protected]>
Signed-off-by: Felix Fietkau <[email protected]>
(cherry picked from commit
22eaf1864731dd29918357b26565dbd9420fd314)
Matthew Cather [Mon, 3 Mar 2025 19:22:11 +0000 (13:22 -0600)]
hostapd: fix ucode memory leak with strings
This fixes a common reference counting bug typically along the lines of:
```
uc_value_push(ucv_get(ucv_string_new(...)));
```
This would leave our new string with a reference count of 2, one from
the construction of the string, the other from `ucv_get`. This would
prevent the strings from being correctly cleaned up when it goes out
of scope.
Signed-off-by: Matthew Cather <[email protected]>
(cherry picked from commit
f79968ee0f76c41414fb0c08980b9c2a259964d3)
Cedric CHEDALEUX [Mon, 17 Feb 2025 09:44:36 +0000 (10:44 +0100)]
scripts/feeds: shallow clone submodules
When a feed has submodules, all its submodules are fully cloned whereas
the feed itself is shallowed. Let's be consistent and perform shallow clones
as well for the submodules.
Signed-off-by: Cedric CHEDALEUX <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18003
Signed-off-by: Robert Marko <[email protected]>
(cherry picked from commit
9ec32cfb2733856a2ab4caee07d9b3297568381d)
Cedric CHEDALEUX [Mon, 17 Feb 2025 09:41:32 +0000 (10:41 +0100)]
scripts/feeds: shallow clone for specific commit update
When a feed is referenced with a specific commit (i.e. <git_url>^<sha1>),
a full clone was performed and a branch was created from the sha1
and named with the sha1. Other git clones operations are shallowed.
As Git does not support clone at a specific commit, let's first perform
a shallow clone to latest commit, then fetch the relevant commit and
finally checkout it (no more 'pseudo' branch).
It saves bandwith and significantly speeds up the feed update process.
Signed-off-by: Cedric CHEDALEUX <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18003
Signed-off-by: Robert Marko <[email protected]>
(cherry picked from commit
32d0a57dc10811a24816e51f10e55963f40fe462)
Felix Fietkau [Fri, 28 Feb 2025 15:27:36 +0000 (16:27 +0100)]
unetd: update to Git HEAD (2025-02-28)
75a236be122a service: add missing null pointer check
f5341f327539 ubus: add api for generating and validating security tokens
3fab99eab4d5 add udebug support
28d86bd30e97 pex: only respond to update requests when we have network data
8e6f37cc361e pex-msg: ignore no-data responses if version is zero
12e6cf7f63e1 pex: create pex host from update responses
edc8fdae463a ubus: show the local addresses in network status
Signed-off-by: Felix Fietkau <[email protected]>
(cherry picked from commit
ce68f61cb67a4701a108f838f510e72ca63ed78e)
Daniel Golle [Wed, 12 Feb 2025 04:21:22 +0000 (04:21 +0000)]
ethtool: work-around ETHTOOL_GRSSH/ETHTOOL_SRSSH ABI breakage
ethtool since version 6.9 introduced support for getting/setting RSS
input transformation supported in Linux since version 6.8.
The now changed kernel ioctl ABI, however, cannot be detected from
userland, and ethtool since version 6.9 simply assumes that a previously
reserved field is now used to set the input transformation.
Unfortunately the default value RXH_XFRM_NO_CHANGE (0xff) used by ethtool
userland creates an incompatibility with older kernels which cannot be
resolved easily without introducing even more ABI breakage.
Work-around the issue and fix support for --set-rxfh and --set-rxfh-indir
ethtool userland tool commands by making the support for input_xfrm
conditional on compile time, and keep it disabled for Linux 6.6.
Fixes: 8c2dcd1518 ("ethtool: update to 6.10")
Signed-off-by: Daniel Golle <[email protected]>
Tested-by: Stijn Segers <[email protected]>
(cherry picked from commit
3a7467ffde413677de5465dde78a62dfa8d6774f)
Andrea Pesaresi [Wed, 15 Jan 2025 00:15:20 +0000 (01:15 +0100)]
ethtool: update to 6.11
Version 6.11 - October 8, 2024
* Feature: cmis: print active and inactive firmware versions
* Feature: flash transceiver module firmware (--flash-module-firmware)
* Feature: add T1BRR 10Mb/s mode to link mode tables
* Feature: support for disabling netlink from command line
* Fix: fix lanes parameter format specifier
* Fix: add missing clause 33 PSE manual description
* Fix: qsf: Better handling of Page A2h netlink read failure
* Fix: rss: retrieve ring count using ETHTOOL_GRXRINGS ioctl (-x)
* Misc: man page formatting fix
* changelog here: https://git.kernel.org/pub/scm/network/ethtool/ethtool.git/commit/NEWS?id=
c0ea4b70c71334ef038f7a3416b228a50dada406
Tested on gl.inet MT6000, retrieve ring count is now working
Signed-off-by: Andrea Pesaresi <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/17607
Signed-off-by: Robert Marko <[email protected]>
(cherry picked from commit
9454331b7fc896704a2c60b28767c282eb9ca0bd)
Álvaro Fernández Rojas [Thu, 27 Feb 2025 07:31:12 +0000 (08:31 +0100)]
omcproxy: update to latest version
Changelog: https://github.com/openwrt/omcproxy/compare/
bfba2aa75802ff1a70ef2fd3eba53409a8c6e93a...
582cd8d3ae7e6af0073ce1d9198387af48affd60
Signed-off-by: Álvaro Fernández Rojas <[email protected]>
Álvaro Fernández Rojas [Thu, 27 Feb 2025 07:06:27 +0000 (08:06 +0100)]
kernel: r8126: update to v10.015.00
Changelog: https://github.com/openwrt/rtl8126/compare/10.014.01...10.015.00
Signed-off-by: Álvaro Fernández Rojas <[email protected]>
(cherry picked from commit
3d3328bf5f019507896bfa9ffeb53777fc5bfeaa)
Álvaro Fernández Rojas [Thu, 27 Feb 2025 07:04:50 +0000 (08:04 +0100)]
kernel: r8125: update to v9.015.00
Changelog: https://github.com/openwrt/rtl8125/compare/9.014.01...9.015.00
Signed-off-by: Álvaro Fernández Rojas <[email protected]>
(cherry picked from commit
a8dea562aa6146f5955ef081ee3240f0b960edf9)
Maxim Anisimov [Wed, 13 Nov 2024 14:17:17 +0000 (17:17 +0300)]
mediatek/filogic: add Keenetic KN-3811 support
Specification:
* Mediatek MT7981BA
* 256 MB SPI-NAND
* 512 MB DDR4 RAM
* MT7976CN DBDC AX Wi-Fi
* MediaTek MT7531AE (3x LAN Gigabit ports) + Internal Gbe Phy (1x WAN Gigabit port)
* 4x LED (power, internet, fn, wifi)
* 3x buttons (wps, fn, reset)
* 1x USB 3.0 port
Serial Interface:
* 3 Pins GND, RX, TX
* Settings: 115200, 8N1
Notes:
* The device supports dual boot mode
* Fn led reassigned to wlan 2.4
Flash instruction:
The only way to flash OpenWrt image is to use tftp recovery mode in U-Boot:
1. Configure PC with static IP 192.168.1.2/24 and tftp server.
2. Rename "openwrt-mediatek-filogic-keenetic_kn-3811-squashfs-factory.bin"
to "KN-3811_recovery.bin" and place it in tftp server directory.
3. Connect PC with ethernet port, press the reset button, power up
the device and keep button pressed until status led start blinking.
4. Device will download file from server, write it to flash and reboot.
Signed-off-by: Maxim Anisimov <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/17135
(cherry picked from commit
d087a79b7b03fe93a221fd6246ce437c5c5325c3)
Link: https://github.com/openwrt/openwrt/pull/18055
Signed-off-by: Hauke Mehrtens <[email protected]>
Maxim Anisimov [Thu, 31 Oct 2024 07:30:08 +0000 (10:30 +0300)]
mediatek/filogic: add Keenetic KN-3911 support
Specification:
- MT7981 CPU using 2.4GHz and 5GHz WiFi (both AX)
- 512MB RAM
- 128MB SPI NAND
- 2 LEDs (green, orange)
- 3 buttons (fn, reset, wps)
- 2 2.5Gbit ethernet ports based on Airoha EN8811H phy
Serial Interface:
- 3 Pins GND, RX, TX
- Settings: 115200, 8N1
Notes:
- The device supports dual boot mode
Flash instruction:
The only way to flash OpenWrt image is to use tftp recovery mode in U-Boot:
1. Configure PC with static IP 192.168.1.2/24 and tftp server.
2. Rename "openwrt-mediatek-filogic-keenetic_kn-3911-squashfs-factory.bin"
to "KN-3911_recovery.bin" and place it in tftp server directory.
3. Connect PC with ethernet port, press the reset button, power up
the device and keep button pressed until status led start blinking.
4. Device will download file from server, write it to flash and reboot.
Signed-off-by: Maxim Anisimov <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/16830
(cherry picked from commit
5a4eb56a7bc7d1d8028d103d50b0dba2ff7808c4)
Link: https://github.com/openwrt/openwrt/pull/18055
Signed-off-by: Hauke Mehrtens <[email protected]>
Maxim Anisimov [Thu, 31 Oct 2024 09:27:54 +0000 (12:27 +0300)]
mediatek/filogic: enable mtd virtual concat support
This is required for upcoming Keenetic KN-3911 support
Signed-off-by: Maxim Anisimov <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/16830
(cherry picked from commit
0d651dd302cf2b6968268f27a084363b9b398760)
Link: https://github.com/openwrt/openwrt/pull/18055
Signed-off-by: Hauke Mehrtens <[email protected]>
Maxim Anisimov [Mon, 3 Jun 2024 15:52:49 +0000 (18:52 +0300)]
ramips: move zyimage creation to include/image-commands.mk
This is required for upcoming Keenetic KN-3911 support
Signed-off-by: Maxim Anisimov <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/16830
(cherry picked from commit
79db5d65ca5a19fb37e7fb428dec798f713a8632)
Link: https://github.com/openwrt/openwrt/pull/18055
Signed-off-by: Hauke Mehrtens <[email protected]>
John Audia [Wed, 12 Feb 2025 13:56:47 +0000 (08:56 -0500)]
openssl: update to 3.0.16
Changes between 3.0.15 and 3.0.16 [11 Feb 2025]
CVE-2024-13176[1] - Fixed timing side-channel in ECDSA signature
computation.
There is a timing signal of around 300 nanoseconds when the top word of
the inverted ECDSA nonce value is zero. This can happen with significant
probability only for some of the supported elliptic curves. In
particular the NIST P-521 curve is affected. To be able to measure this
leak, the attacker process must either be located in the same physical
computer or must have a very fast network connection with low latency.
CVE-2024-9143[2] - Fixed possible OOB memory access with invalid
low-level GF(2^m) elliptic curve parameters.
Use of the low-level GF(2^m) elliptic curve APIs with untrusted explicit
values for the field polynomial can lead to out-of-bounds memory reads
or writes. Applications working with "exotic" explicit binary (GF(2^m))
curve parameters, that make it possible to represent invalid field
polynomials with a zero constant term, via the above or similar APIs,
may terminate abruptly as a result of reading or writing outside of
array bounds. Remote code execution cannot easily be ruled out.
1. https://www.openssl.org/news/vulnerabilities.html#CVE-2024-13176
2. https://www.openssl.org/news/vulnerabilities.html#CVE-2024-9143
Build system: x86/64
Build-tested: bcm27xx/bcm2712
Run-tested: bcm27xx/bcm2712
Signed-off-by: John Audia <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/17947
Signed-off-by: Robert Marko <[email protected]>
(cherry picked from commit
b4e6fd7b76440076eeff3a0789d40acbb5363ecf)
Rudy Andram [Wed, 12 Feb 2025 19:28:49 +0000 (19:28 +0000)]
wireless-regdb: Update to version 2025.02.20
b43aeb5 wireless-regdb: assert and correct maximum bandwidth within frequency difference
68588bf wireless-regdb: Update regulatory info for Syria (SY) for 2020
0dda57e wireless-regdb: Update regulatory info for Moldova (MD) on 6GHz for 2022
b19ab0b wireless-regdb: Update regulatory info for Azerbaijan (AZ) on 6GHz for 2024
f67f40d wireless-regdb: Update regulatory info for Oman (OM)
bd70876 wireless-regdb: Update regulatory rules for Armenia (AM) on 2.4 and 5 GHz
6c7cbcc wireless-regdb: Permit 320 MHz bandwidth in 6 GHz band in ETSI/CEPT
f9f6b30 wireless-regdb: Update regulatory rules for Austria (AT)
39b47ea wireless-regdb: Update regulatory info for Cayman Islands (KY) for 2024
3dd7ceb wireless-regdb: allow NO-INDOOR flag in db.txt
4d754a1 wireless-regdb: Update regulatory rules for Iran (IR) on both 2.4 and 5Ghz for 2021
8c8308a wireless-regdb: Update frequency range with NO-INDOOR for Oman (OM)
c2f11e2 wireless-regdb: update regulatory database based on preceding changes
Signed-off-by: Rudy Andram <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/17957
Signed-off-by: Hauke Mehrtens <[email protected]>
(cherry picked from commit
da2cc98458f46745de95e88b6066620fbd02b190)
Mieczyslaw Nalewaj [Tue, 18 Feb 2025 09:18:41 +0000 (10:18 +0100)]
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 <[email protected]>
Tested-by: Simon Etzlstorfer <[email protected]>
Tested-by: Mauri Sandberg <[email protected]>
Co-authored-by: Shiji Yang <[email protected]>
Signed-off-by: Mieczyslaw Nalewaj <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/17834
(cherry picked from commit
bb84c256e701a21a97443ffe9dd1d510bd6c1c40)
Link: https://github.com/openwrt/openwrt/pull/18015
Signed-off-by: Hauke Mehrtens <[email protected]>
John Audia [Fri, 21 Feb 2025 14:14:57 +0000 (09:14 -0500)]
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 <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18066
Signed-off-by: Nick Hainke <[email protected]>
(cherry picked from commit
d664d7466958d3c70e1be9258280d39825ba9ba8)
Link: https://github.com/openwrt/openwrt/pull/17987
Signed-off-by: Hauke Mehrtens <[email protected]>
John Audia [Mon, 17 Feb 2025 10:12:48 +0000 (05:12 -0500)]
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 <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18000
Signed-off-by: Robert Marko <[email protected]>
(cherry picked from commit
57b0304ce93b9e84701de3091c9f272e6b14e6fa)
Link: https://github.com/openwrt/openwrt/pull/17987
Signed-off-by: Hauke Mehrtens <[email protected]>
John Audia [Tue, 11 Feb 2025 19:42:45 +0000 (14:42 -0500)]
kernel: bump 6.6 to 6.6.77
Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.77
No patches automatically rebased/checksum update only
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 <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/17822
(cherry picked from commit
16924e55f0c5c0b06cbec46d04c6113b8f7a5975)
Link: https://github.com/openwrt/openwrt/pull/17987
Signed-off-by: Hauke Mehrtens <[email protected]>
John Audia [Sun, 9 Feb 2025 12:49:50 +0000 (07:49 -0500)]
kernel: bump 6.6 to 6.6.76
Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.76
Manually rebased:
bcm27xx/patches-6.6/950-0519-usb-dwc3-Set-DMA-and-coherent-masks-early.patch
imx/patches-6.6/600-PCI-imx6-Start-link-at-max-gen-first-for-IMX8MM-and-IMX8MP.patch
Removed upstreamed:
bcm27xx/patches-6.6/950-1446-media-i2c-ov9282-Correct-the-exposure-offset.patch[1]
bcm47xx/patches-6.6/701-bgmac-reduce-max-frame-size-to-support-just-MTU-1500.patch[2]
bcm53xx/patches-6.6/700-bgmac-reduce-max-frame-size-to-support-just-MTU-1500.patch[3]
ramips/patches-6.6/003-v6.14-clk-ralink-mtmips-remove-duplicated-xtal-clock-for-Ralink.patch[4]
All other patches automatically rebased.
1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.76&id=
11c7649c9ec3dcaf0a7760551ad30747d9e02d81
2, 3. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.76&id=
5e6e723675e54ced5200bcc367e2526badc4070c
4. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.76&id=
d0edcd0d18d700d76c61c091a24568b8b8c3b387
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 <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/17822
(cherry picked from commit
84e370f16ca044896e6529d683067c17b565e6fa)
Link: https://github.com/openwrt/openwrt/pull/17987
Signed-off-by: Hauke Mehrtens <[email protected]>
John Audia [Sun, 9 Feb 2025 15:10:31 +0000 (10:10 -0500)]
kernel: bump 6.6 to 6.6.75
Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.75
All patches automatically rebased.
Signed-off-by: John Audia <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/17822
(cherry picked from commit
9790417109bb9ae0649f40016173e8622703b186)
Link: https://github.com/openwrt/openwrt/pull/17987
Signed-off-by: Hauke Mehrtens <[email protected]>
John Audia [Thu, 23 Jan 2025 17:22:43 +0000 (12:22 -0500)]
kernel: bump 6.6 to 6.6.74
Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.74
All patches automatically rebased.
Build system: x86/64
Build-tested: bcm27xx/bcm2712, flogic/xiaomi_redmi-router-ax6000-ubootmod
Run-tested: bcm27xx/bcm2712, flogic/xiaomi_redmi-router-ax6000-ubootmod
Signed-off-by: John Audia <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/17708
(cherry picked from commit
e9fad02c101d7d7f45fd6e5eef8a80b848718a44)
Link: https://github.com/openwrt/openwrt/pull/17987
Signed-off-by: Hauke Mehrtens <[email protected]>
Tim Harvey [Thu, 13 Feb 2025 18:37:50 +0000 (10:37 -0800)]
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 <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/17964
(cherry picked from commit
5a124ff167ed42e28dba2805793b5ddcece0eb50)
Link: https://github.com/openwrt/openwrt/pull/18093
Signed-off-by: Hauke Mehrtens <[email protected]>
Tim Harvey [Thu, 13 Feb 2025 18:36:09 +0000 (10:36 -0800)]
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 <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/17964
(cherry picked from commit
ee73d35fbe0f18bfd0f710008de369236a220510)
Link: https://github.com/openwrt/openwrt/pull/18093
Signed-off-by: Hauke Mehrtens <[email protected]>
Robert Senderek [Fri, 14 Feb 2025 08:01:39 +0000 (09:01 +0100)]
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 <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/17965
(cherry picked from commit
f93367227e1458fb366304d0f431f12e95d244cd)
Link: https://github.com/openwrt/openwrt/pull/18031
Signed-off-by: Hauke Mehrtens <[email protected]>
Robert Senderek [Mon, 17 Feb 2025 07:15:20 +0000 (08:15 +0100)]
tools: firmware-utils: update to Git HEAD (2024-02-16)
2051fe5 mktplinkfw2: Add 16MLmtk layout
5d1446b tplink-safeloader: Add more special_id's for MR70X
Signed-off-by: Robert Senderek <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/17999
Signed-off-by: Hauke Mehrtens <[email protected]>
(cherry picked from commit
1437ff840b9b81f62a7cfca02b0ba17f506ea028)
Link: https://github.com/openwrt/openwrt/pull/18030
Signed-off-by: Hauke Mehrtens <[email protected]>
INAGAKI Hiroshi [Mon, 13 Jan 2025 10:46:10 +0000 (19:46 +0900)]
tools: firmware-utils: update to Git HEAD (2024-01-14)
12c0b42 nosimg-enc: add new tool for XikeStor SKS8300 series
Signed-off-by: INAGAKI Hiroshi <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/17593
Signed-off-by: Sander Vanheule <[email protected]>
(cherry picked from commit
db0fcc0c8dd4424631931aea5dbb7050fa88d088)
Link: https://github.com/openwrt/openwrt/pull/18030
Signed-off-by: Hauke Mehrtens <[email protected]>
Felix Fietkau [Mon, 24 Feb 2025 11:26:01 +0000 (12:26 +0100)]
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 <[email protected]>
(cherry picked from commit
00e4b23e27bd4ed3e0370b9b474ec53f72bd1282)
Sander Vanheule [Sat, 22 Feb 2025 11:06:10 +0000 (12:06 +0100)]
realtek: add PoE enable line to Netgear GS310TP
By switching to the new RTL8231 driver in commit
b7af54d5c18c ("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 <[email protected]>
(cherry picked from commit
890293c13cc0c7e23577cb92c36edcc9911b4400)
Evan Jobling [Thu, 23 Jan 2025 00:13:35 +0000 (00:13 +0000)]
realtek: HPE 1920-48G-PoE: allow fan speed control
The JG928A has an RTL8231 on the aux mdio bus. Add it to dts to expose
the GPIO pins used to control and monitor the fan speed. To enable speed
control, add the appropriate kernel driver module to DEVICE_PACKAGES.
Of note, this does not control all fans for the unit. The power supply
fans are not controlled.
Signed-off-by: Evan Jobling <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/17699
Signed-off-by: Sander Vanheule <[email protected]>
(cherry picked from commit
cbd1acbad3448280a180640e2a1a37a7144e1fb3)
Sander Vanheule [Tue, 28 Jan 2025 07:14:03 +0000 (08:14 +0100)]
realtek: drop old RTL8231 driver
The old RTL8231 driver integrated the MDIO bus access with the GPIO
control ops, making this driver not very portable to newer platforms.
It depended on the SoC ID instead of the compatible to determine the
MDIO access register, further complicating portability.
A new MFD driver is now available, which offers proper pin config as
well as optional LED support, which can work on any (bitbanged) MDIO
bus. Now that all devices have been migrated, we can drop the old code.
Signed-off-by: Sander Vanheule <[email protected]>
(cherry picked from commit
b410f2216c7a4e6c5646f999d18b952b63c85817)
Sander Vanheule [Mon, 27 Jan 2025 21:17:57 +0000 (22:17 +0100)]
realtek: add PoE enable line to Netgear GS110TPP
By switching to the new RTL8231 driver in commit
b7af54d5c18c ("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 <[email protected]>
(cherry picked from commit
807074309dff4eff4097900b9de53abce8684e2f)
Sander Vanheule [Sun, 12 Jan 2025 16:57:33 +0000 (17:57 +0100)]
realtek: switch RTL8231 driver for D-Link DGS-1210
Update the common external GPIO DTSI file for the DGS-1210 devices to
use an MDIO device on the auxilairy MDIO bus, as the original driver was
doing behind the screen.
Switching to the new driver will allow for full pin-control and will no
longer reset pin config set by the bootloader.
Signed-off-by: Sander Vanheule <[email protected]>
(cherry picked from commit
3d6a1a7874c991c4bd9719bf0a92ab6630034c67)
Sander Vanheule [Sun, 12 Jan 2025 16:53:34 +0000 (17:53 +0100)]
realtek: Switch DGS-1210-10P DTS to gpio.dtsi
The DTS file for the DGS-1210-10P is slightly different from the other
DGS-1210 devices, in that it didn't specify a gpio-restart node when it
was added. The gpio-restart has been found to work on the DGS-1210-10P
as well, so switch it over to the common definitions.
This converts the last device from the product family to the common
definition for the (external) GPIOs.
Tested-by: Michel Thill <[email protected]>
Signed-off-by: Sander Vanheule <[email protected]>
(cherry picked from commit
7c0d1c1eb10a7040af6478742dd053f40b24a467)
Sander Vanheule [Sat, 18 Jan 2025 15:51:59 +0000 (16:51 +0100)]
realtek: Drop unused property on DGS-1210 gpio0
The 'indirect-access-id' property on gpio0 is a remnant from the
original GPIO driver. This property has not been relevant on the SoC's
embedded GPIO controller for a long time, so just drop it.
Signed-off-by: Sander Vanheule <[email protected]>
(cherry picked from commit
022b7d80bf9de326f02c625f2fdeb2fb9c9203a3)
Sander Vanheule [Sat, 18 Jan 2025 20:40:06 +0000 (21:40 +0100)]
realtek: Simple conversions to RTL8231 MFD driver
Change devices with RTL8231 GPIO expander definition that can easily be
translated to the new RTL8231 binding and carry over any gpio-hogs. This
will let them use the new RTL8231 MFD driver, without any functional
changes.
Signed-off-by: Sander Vanheule <[email protected]>
(cherry picked from commit
b7af54d5c18cf74b9b598b506a335443a0bbed87)
Sander Vanheule [Wed, 22 Jan 2025 11:25:18 +0000 (12:25 +0100)]
realtek: Split Zyxel GS1900-8 into v1 and v2
Zyxel GS1900-8 v2 devices have been produced more recently than v1
devices. As there are v1 boards with RTL8380M rev. C SoCs, it can likely
safely be assumed that all v2 devices will also have a recent SoC
revision, supporting the hardware auxiliary MDIO controller.
Make the GS1900-8 v1 use an emulated auxiliary MDIO bus, for backward
compatibility with devices containing an RTL8380M rev. A.
Since the devicetrees are otherwise identical, GS1900-8 v1 devices with
an RTL8380M rev. B or C will also be able to use the (more efficient) v2
image. This includes any currently functioning device with OpenWrt, so
include the old compatible as a supported device for the GS1900-8 v2.
Link: https://github.com/openwrt/openwrt/issues/9534
Signed-off-by: Sander Vanheule <[email protected]>
(cherry picked from commit
7322d3266d84ec4062046254792d78ebca3ea26d)
Sander Vanheule [Tue, 21 Jan 2025 18:57:22 +0000 (19:57 +0100)]
realtek: rtl838x: Enable MDIO_GPIO driver
The mdio-gpio driver is required to support early revision of RTL8380M
slicon (rev A) where the auxilairy MDIO controller does not function
correctly. Add this driver to the rtl838x kernel so devices with old
SoCs are also able to function correctly.
Signed-off-by: Sander Vanheule <[email protected]>
(cherry picked from commit
efffcfa43693b68028a4aed4dea151b82158cc52)
Sander Vanheule [Wed, 22 Jan 2025 11:16:00 +0000 (12:16 +0100)]
realtek: Move GS1900 external GPIO to new DTSI
In order to be able to define the external GPIO controller on an
emulated MDIO bus, move the controller definition outside of the main
GS1900 include for RTL838x-based devices.
Additionally, a new DTSI is provided defining the RTL8231 on the
emulated MDIO bus.
Signed-off-by: Sander Vanheule <[email protected]>
(cherry picked from commit
a6a77896f4cddd6e69bcf86d5a6dc190fa82d53d)
Sander Vanheule [Tue, 21 Jan 2025 18:40:11 +0000 (19:40 +0100)]
realtek: Add virtual MDIO bus on rtl838x
Some RTL8380M-based devices have been around for a long time and use an
early A revision of the RTL8380M SoC. This revision has an issue with
the auxiliary MDIO controller, causing it to malfunction. This may lead
to device reboots when the controller is used.
Provide a bit-banged MDIO bus, which muxes the auxiliary MDIO pins to
their GPIO function. Although this will result in lower performance,
there should otherwise be no functional differences.
Link: https://github.com/openwrt/openwrt/issues/9534
Signed-off-by: Sander Vanheule <[email protected]>
(cherry picked from commit
d4bf16a9e1618347709b0dccae71c273e6291a61)
Sander Vanheule [Tue, 21 Jan 2025 18:37:25 +0000 (19:37 +0100)]
realtek: Enable Zyxel GS1900's RTL8231 reset line
As the bootloader is reconfiguring the RTL8231 on these devices anyway,
no pin state can be maintained over warm reboots. This results in for
example the PoE disable pin always being asserted by the bootloader.
Define the GPIO line linked to the RTL8231's reset so the MDIO subsystem
will also reset the expander on boot and ensure the line in the correct
state.
Signed-off-by: Sander Vanheule <[email protected]>
(cherry picked from commit
b2d17dbb68c232393739e6fb48245f1f4bebb698)
Sander Vanheule [Sat, 18 Jan 2025 12:39:01 +0000 (13:39 +0100)]
realtek: Switch RTL8231 driver on Zyxel GS1900-48
Switch the Zyxel GS1900-48 over to the new MDIO-based driver for the
RTL8231 GPIO expander.
Signed-off-by: Sander Vanheule <[email protected]>
(cherry picked from commit
45aafe67f385a2b6cf65894b2f46ee8e33d87f92)
Sander Vanheule [Sat, 18 Jan 2025 12:48:17 +0000 (13:48 +0100)]
realtek: rtl839x: Enable RTL8231 MFD driver
Enable the RTL8231 MFD core driver, as well as the pinctrl/gpio driver
to allow RTL839x devices to use it.
Signed-off-by: Sander Vanheule <[email protected]>
(cherry picked from commit
fd5797b7ce6856539ec0f88b25a766fc2ce00c19)
Sander Vanheule [Sat, 18 Jan 2025 12:45:55 +0000 (13:45 +0100)]
realtek: rtl839x: Enable AUX MDIO controller
Enable the driver for the Realtek Otto auxiliary MDIO driver so RTL839x
devices can use it. The related node is added to the base devicetree for
rtl839x-based devices, so they can enabled and use it when required.
Signed-off-by: Sander Vanheule <[email protected]>
(cherry picked from commit
cddcc69ddf9c6284d6c9a6399c4ea48d7a044719)
Sander Vanheule [Sat, 18 Jan 2025 12:28:44 +0000 (13:28 +0100)]
realtek: Update aux-mdio driver
For RTL839x, the driver was producing frequent timeouts on bus accesses.
Increasing the timeout to the one from a recent Realtek SDK resolves
these timeouts. To minimize overhead on different SoCs, each controller
can specify their own timeout.
This also add support for the register format as used on RTL93xx.
Support is added for the RTL930x "ext gpio" controller.
Signed-off-by: Sander Vanheule <[email protected]>
(cherry picked from commit
52ffef647152578ba89d2e4c1f9f2f869a3fc8a8)
Sander Vanheule [Thu, 16 Jan 2025 12:23:54 +0000 (13:23 +0100)]
realtek: Use atomic poll for aux-mdio commands
regmap_read_poll_timeout() relies on usleep_range() to time the polling
loop. With the current, rather large, scheduling interval, a short
usleep_range() may take a lot longer than expected, causing performance
issues.
Switch the driver over to using regmap_read_poll_timeout_atomic(), which
uses udelay() to time the polling loop.
For comparision, the 'ethtool -m <dev>' command is about 10 times faster
with the atomic variant.
Using 'perf -r10 ethtool -m lan25':
- Driver using regmap_read_poll_timeout():
2.0117 +- 0.0118 seconds time elapsed ( +- 0.58% )
- Driver using regmap_read_poll_timeout_atomic():
0.1674 +- 0.0250 seconds time elapsed ( +- 14.95% )
Signed-off-by: Sander Vanheule <[email protected]>
(cherry picked from commit
693c1ea81a314cfa37a60a293568d2e46282b717)
Fabian Groffen [Wed, 15 Jan 2025 19:12:02 +0000 (20:12 +0100)]
realtek: HPE 1920 24G PoE+ 180W/370W move fans to hwmon
Apply the equivalent of commit
f64541db020e ("realtek: HPE 1920 8G PoE+
180W move fans to hwmon") to the 24-ports variants of the HPE 1920 PoE+
switches, with model numbers JG925A and JG926A.
Copy from the original commit message:
Move to using hwmon and gpio-fan. This is by adding gpio_fan_array to
DTS and kmod-hwmon-gpiofan to DEVICE_PACKAGES.
In combination with the new rtl8231 gpio driver the default fan
behaviour will be maximum fan speed.
Bump compat value to 1.1 due to existing config in /etc/config/system
via gpio_switch. Also notify in device compat that fan is now going to
be at bootloader setting (maximum in this case) by default unless turned
down.
As the init script 03_gpio_switches does not perform any action after
removing these devices from it, the file can be dropped.
Link: https://github.com/openwrt/openwrt/pull/17598
Signed-off-by: Fabian Groffen <[email protected]>
Signed-off-by: Sander Vanheule <[email protected]>
(cherry picked from commit
0a7c8ed9d94930ba062c71df79f63c06eeab4543)
Sander Vanheule [Tue, 7 Jan 2025 13:59:20 +0000 (14:59 +0100)]
realtek: switch RTL8231 driver for HPE 1920-16/24G
Update the base DTS file for the 16 and 24 port HPE 1920 devices
(JG923A, JG924A, JG925A, JG926A), causing the new RTL8231 MFD driver to
be loaded at start-up.
Signed-off-by: Sander Vanheule <[email protected]>
(cherry picked from commit
96850585e52dfff2c25d8b20b0b5cd192981ed4d)
Evan Jobling [Tue, 14 Jan 2025 12:13:21 +0000 (12:13 +0000)]
realtek: HPE 1920 8G PoE+ 180W move fans to hwmon
The GPIO numbering has changed and is not stable. As a result fan
control via gpio_switch is broken, resulting in errors:
"export_store: invalid GPIO 456"
Move to using hwmon and gpio-fan. This is by adding gpio_fan_array to
DTS and kmod-hwmon-gpiofan to DEVICE_PACKAGES.
In combination with the new rtl8231 gpio driver the default fan
behaviour will be maximum fan speed.
Bump compat value to 1.1 due to existing config in /etc/config/system
via gpio_switch. Also notify in device compat that fan is now going to
be at bootloader setting (maximum in this case) by default unless turned
down.
Signed-off-by: Evan Jobling <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/17605
Signed-off-by: Sander Vanheule <[email protected]>
(cherry picked from commit
f64541db020ef5689186609e8b7b7a3bb9755160)
Sander Vanheule [Tue, 7 Jan 2025 13:55:24 +0000 (14:55 +0100)]
realtek: switch RTL8231 driver for HPE 1920-8G
Update the base DTS file for the 8 port HPE 1920 devices (JG920A,
JG921A, JG922A), causing the new RTL8231 MFD driver to be loaded at
start-up.
Signed-off-by: Sander Vanheule <[email protected]>
(cherry picked from commit
e5d1a501cbd0fdda47d9169e9f669c7fb4813f2a)
Sander Vanheule [Thu, 26 Dec 2024 21:26:33 +0000 (22:26 +0100)]
realtek: rtl838x: Switch GS1900 rtl8231 driver
Update the devicetree files to switch the GS1900 devices over to the new
pinctrl and GPIO driver. Enable the drivers to ensure the nodes can be
used.
This may fix issues caused by bad RMW behaviour on the GPIO data lines,
or glitches due to setting the pin direction before the pin level.
Although the driver supports retaining GPIO state after a warm boot,
some bootloaders appear to apply a default configuration on boot, which
may cause an interrupt in PoE-PSE support.
Signed-off-by: Sander Vanheule <[email protected]>
(cherry picked from commit
5141e2d8617efa774b64f9ebc6d97cdc85487dc8)
Sander Vanheule [Thu, 26 Dec 2024 19:55:16 +0000 (20:55 +0100)]
realtek: Add pinctrl support for RTL8231
Add pending patches to add RTL8231 support as a MDIO-bus attached
multi-functional device. This includes subdrivers for the pincontrol and
GPIO features, as well as the LED matrix support.
Leave the drivers disabled until required by a device.
Cherry picked from commit
6ef6014887c393dc07f0349028d93e4fa82e0733, but
dropped already picked patch for gpio-regmap request/free, and rebased
configs
Signed-off-by: Sander Vanheule <[email protected]>
Sander Vanheule [Fri, 27 Dec 2024 14:56:44 +0000 (15:56 +0100)]
realtek: rtl838x: Instantiate auxiliary MDIO bus
Add a disabled node for the auxiliary MDIO bus, used to manage the
RTL8231 expanders. A simple-mfd parent node is added, at the same
(implied) address as the switch@
1b000000 node, as the switch drivers
should anyway transistion to MFD subdivices at some point.
Additionally, two pinctrl-single node are added to allow the MDX pins to
be muxed correctly, in case the bootloader leaves these unconfigured.
Signed-off-by: Sander Vanheule <[email protected]>
(cherry picked from commit
92ae8cb16c46823d5a00489b4d3a9cc724ba67a4)
Sander Vanheule [Fri, 27 Dec 2024 14:53:23 +0000 (15:53 +0100)]
realtek: Add driver for auxiliary MDIO busses
Add a driver that exposes the auxiliary busses, used for the RTL8231
expanders, as a proper MDIO controller. The device must be instantiated
under an MFD device, so the driver should also be compatible with SoC
managed by an external CPU via SPI.
Leave the driver disabled in builds until required.
Signed-off-by: Sander Vanheule <[email protected]>
(cherry picked from commit
ae833c01b312258c27ff2dc1c8d44b15b7028e32)
Felix Fietkau [Mon, 17 Feb 2025 11:29:27 +0000 (12:29 +0100)]
kernel: receive all bridged multicast packets if IFF_ALLMULTI is set
Fixes issues with odhcpd, especially in relay mode
Signed-off-by: Felix Fietkau <[email protected]>
(cherry picked from commit
38c21271d2b5749f135d662c2b28ef2bbdf607b8)
Daniel Golle [Mon, 10 Feb 2025 23:18:46 +0000 (23:18 +0000)]
mediatek: apply bootloader work-around for affected ASUS devices
Apply "u-boot-dont-touch-spi-nand" to ASUS RT-AX59U, ASUS TUF-AX4200 as
well as ASUS TUF-AX6000 routers to prevent U-Boot from wiping MTD
child nodes from DT.
Signed-off-by: Daniel Golle <[email protected]>
(cherry picked from commit
4387de94454913aa79bb88971eabcf1bfca78141)
Daniel Golle [Thu, 6 Feb 2025 05:17:54 +0000 (05:17 +0000)]
mediatek: add work-around for ASUS bootloader MTD behavior
ASUS makes use of U-Boot's fdt_fixup_mtdparts() function which applies
the partitions defined in U-Boot's mtdparts and mtdids environment
variables to the devicetree passed over to Linux.
The undesired side-effect is that in this way also all additional
properties and child nodes get wiped, preventing NVMEM cells to be
defined for MTD partitions or UBI volumes.
To work-around this issue, add an additional compatible string
'u-boot-dont-touch-spi-nand' which can be used instead of 'spi-nand' in
case the replacement of the MTD partitions by U-Boot should be skipped
alltogether.
In practise this is mostly relevant for SPI-NAND which anyway comes only
with two partitions nowadays: 'Bootloader' and 'UBI_DEV'. Hence this
work-around is applicable for SPI-NAND only. Similar work-arounds for
other MTD devices can be created as well should they actually be needed.
Signed-off-by: Daniel Golle <[email protected]>
(cherry picked from commit
c48afca32ca875c4176b4c41be94335e61556783)
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 <[email protected]>
Signed-off-by: Paweł Owoc <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/16070
(cherry picked from commit
4d310b176be9eea162159f2501e650ebbd6605e9)
Signed-off-by: Rafal Boni <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/17889
Signed-off-by: Robert Marko <[email protected]>
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 <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/16070
(cherry picked from commit
3f014543cd4bd099dc089cbb9b9b2d7b0db8a021)
Signed-off-by: Rafal Boni <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/17889
Signed-off-by: Robert Marko <[email protected]>
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 <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/16070
(cherry picked from commit
337f6f76ca5361f45e76facd52396936b9fc25c0)
Signed-off-by: Rafal Boni <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/17889
Signed-off-by: Robert Marko <[email protected]>