Commit Graph

60082 Commits

Author SHA1 Message Date
Sander Vanheule
3b4cfb25bc tools: firmware-utils: update to git HEAD
Add the new 'zycast' tool for remote flashing of Zyxel devices, support
for factory image generation for two new TP-Link devices, and improved
compatibility with two other devices.

    17de36575f1e zycast: disable build on non-Linux OS
    a5dfb5fb5e6e tplink-safeloader: add TP-Link RE205 v3 support
    c1e06daf4622 tplink-safeloader: bump EAP225-V3 compat_level
    335d063cff23 tplink-safeloader: bump EAP225-Outdoor v1 compat
    c1e69e6f9c0d tplink-safeloader: show compat_level with FW info
    e87f23849790 zycast: new tool for ZyXEL bootloader flashing
    9067281d17da tplink-safeloader: add RE365 v1

Signed-off-by: Sander Vanheule <sander@svanheule.net>
2024-03-23 15:36:34 +01:00
Sander van Deijck
2cfe86d383 kirkwood: add ix4-200d support to uboot-envtools
This adds support for the Iomega ix4-200d device in uboot-envtools.

Signed-off-by: Sander van Deijck <sander@vandeijck.com>
2024-03-23 14:56:50 +01:00
Mieczyslaw Nalewaj
bce7b4f8e5 mac80211: carl9170: re-fix fortified-memset warning
The carl9170_tx_release() function sometimes triggers a fortified-memset
warning in my randconfig builds:

In file included from include/linux/string.h:254,
                 from drivers/net/wireless/ath/carl9170/tx.c:40:
In function 'fortify_memset_chk',
    inlined from 'carl9170_tx_release' at drivers/net/wireless/ath/carl9170/tx.c:283:2,
    inlined from 'kref_put' at include/linux/kref.h:65:3,
    inlined from 'carl9170_tx_put_skb' at drivers/net/wireless/ath/carl9170/tx.c:342:9:
include/linux/fortify-string.h:493:25: error: call to '__write_overflow_field' declared with attribute warning: detected write beyond size of field (1st parameter); maybe use struct_group()? [-Werror=attribute-warning]
  493 |                         __write_overflow_field(p_size_field, size);

Kees previously tried to avoid this by using memset_after(), but it seems
this does not fully address the problem. I noticed that the memset_after()
here is done on a different part of the union (status) than the original
cast was from (rate_driver_data), which may confuse the compiler.

Unfortunately, the memset_after() trick does not work on driver_rates[]
because that is part of an anonymous struct, and I could not get
struct_group() to do this either. Using two separate memset() calls
on the two members does address the warning though.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-03-23 14:26:05 +01:00
Marius Durbaca
f7c732bf9e rockchip: add Radxa E25 board support
Radxa E25 is a network application carrier board for the Radxa CM3
Industrial (CM3I) SoM, which is based on the Rockchip RK3568 SoC.

It has the following features:

- MicroSD card socket, on board eMMC flash
- 2x 2.5GbE Realtek RTL8125B Ethernet transceiver
- 1x USB Type-C port (Power and Serial console)
- 1x USB 3.0 OTG port
- mini PCIe socket (USB or PCIe)
- ngff PCIe socket (USB or SATA)
- 1x User LED and 16x RGB LEDs
- 26-pin expansion header

Installation:
Uncompress the OpenWrt sysupgrade and write it to a micro SD card or
internal eMMC using dd.

Signed-off-by: Marius Durbaca <mariusd84@gmail.com>
2024-03-23 07:55:43 +01:00
Marius Durbaca
ce5661e455 uboot-rockchip: add Radxa E25 board support
add Radxa E25 board support in uboot-rockchip

Signed-off-by: Marius Durbaca <mariusd84@gmail.com>
Reviewed-by: Tianling Shen <cnsztl@immortalwrt.org>
2024-03-23 07:55:43 +01:00
Marius Durbaca
28ee115673 kernel: kmod-ata-ahci-platform: enable support for RK35xx
enable support for RK35xx in kmod-ata-ahci-platform kernel module

Suggested-by: Tianling Shen <cnsztl@immortalwrt.org>
Signed-off-by: Marius Durbaca <mariusd84@gmail.com>
2024-03-23 07:55:43 +01:00
Paul Spooren
e8725a932e treewide: use APK compatible version schema
Different from OPKG, APK uses a deterministic version schema which chips
the version into chunks and compares them individually. This enforces a
certain schema which was previously entirely flexible.

 - Releases are added at the very and end prefixed with an `r` like
`1.2.3-r3`.
- Hashes are prefixed with a `~` like `1.2.3~abc123`.
- Dates become semantic versions, like `2024.04.01`
- Extra tags are possible like `_git`, `_alpha` and more.

For full details see the APK test list:
https://gitlab.alpinelinux.org/alpine/apk-tools/-/blob/master/test/version.data

Signed-off-by: Paul Spooren <mail@aparcar.org>
2024-03-22 22:14:22 +01:00
Robert Marko
36acf88fe0 qualcommax: add 6.6 as testing kernel
Provide kernel 6.6 as the testing kernel for qualcommax.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-03-22 21:19:21 +01:00
Robert Marko
4989556a53 qualcommax: ipq807x: add WLAN device path migration
Kernel 6.6 has changed the path of WLAN devices as the soc node was updated
to include an adress as well because according to spec it needed one:
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/arch/arm64/boot/dts/qcom/ipq8074.dtsi?h=v6.6.21&id=da6aa1111a17db11367817ddc10c5a6c188cdc44

So, this will break existing configuration as device path was changed for
example:
"platform/soc/c000000.wifi" to "platform/soc@0/c000000.wifi"
"platform/soc/c000000.wifi+1" to "platform/soc@0/c000000.wifi+1"

PCIe attached devices also have their path changed, so lets add a script
that will migrate the paths based on the detected running kernel version
so returning to kernel 6.1 will work as well.

Co-developed-by: Sean Khan <datapronix@protonmail.com>
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-03-22 21:19:21 +01:00
Robert Marko
d9a2886263 kernel: qca-nss-dp: enable compiling against 6.6
Since 6.5 netdev_rx_queue was moved out of netdevice.h so include the new
header since that is where it lives now.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-03-22 21:19:21 +01:00
Robert Marko
6a44115338 kernel: qca-ssdk: allow compiling against 6.6
Add a patch that makes SSDK recognize kernel 6.6 and thus allows
compiling against it.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-03-22 21:19:21 +01:00
Robert Marko
cab45db187 qualcommax: 6.6: fix SCM header include path for WCSS
SCM header was moved to <linux/firmware/qcom/qcom_scm.h> so adjust the
WCSS patch accordingly.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-03-22 21:19:21 +01:00
Robert Marko
9b650e1319 qualcommax: 6.6: refresh config
Refresh 6.6 qualcommax kernel config via kernel_menuconfig.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-03-22 21:19:21 +01:00
Robert Marko
d9386dc8e9 qualcommax: 6.6: make patches apply
Drop backported patches already included in 6.6 and refresh the rest to
apply.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-03-22 21:19:21 +01:00
Robert Marko
e8e7b3c106 kernel/qualcommax: Restore kernel files for v6.1
This is an automatically generated commit which aids following Kernel patch history,
as git will see the move and copy as a rename thus defeating the purpose.

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

Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-03-22 21:19:21 +01:00
Robert Marko
e28492c81a kernel/qualcommax: Create kernel files for v6.6 (from v6.1)
This is an automatically generated commit.

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

Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-03-22 21:19:21 +01:00
Robert Marko
6bdea8c7bd mediatek: mt7629: 6.6: disable LEDS_SMARTRG_LED by default
When building MT7629 with ALL_KMODS then we get prompted for
LEDS_SMARTRG_LED and this will break CI and in future buildbot compilation.

It depends on I2C so the symbol is hidden until ALL_KMODS is used and I2C
support is available, so disable the LEDS_SMARTRG_LED symbol in 6.6 config
intentionally as is done in the 6.1 mt7629 config.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-03-22 14:17:50 +01:00
Robert Marko
494c5691c6 kernel: config: 6.6: add missing ARM64 SM4 CE symbols
Disable CONFIG_CRYPTO_SM4_ARM64_CE_CCM and CONFIG_CRYPTO_SM4_ARM64_CE_GCM
in the generic config like we do with similar CE symbols.

This avoids the need to disable them in individual targets.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-03-22 11:37:01 +01:00
Daniel Golle
1a47ce5ff2 mvebu: puzzle-m90x: optimize thermal zone
* have more defined PWM steps similar to the vendor's shell script doing
   the same thing
 * replace PWM values with experiencal values provided by forum users
 * increase hyteresis to prevent changing fan speed every second
   (just because it's annoying to listen to)
 * add 'hot' trip point at 75 deg. to warn users that shutdown is imminent

Tested on Puzzle M902 only for now, PWM values for Puzzle M901 might be
slightly different but should quite certainly also be rised.

Suggested-by: Martin Gierschner <martin_gierschner@gmx.de>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-03-21 21:25:38 +00:00
Florian Eckert
879826154f kernel: update deprecated license information
Update the deprecated license information from GPL-2.0 to GPL-2.0-only
as written in the COPYING file of the linux source tree.

Also add the 'COPYING' file to the PKG_LICENSE_FILES variable.

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2024-03-21 21:49:07 +01:00
Florian Eckert
3128157ec7 mac80211: add missing license information
The lincense information for the packages mac80211 are missing.
This commit adds the missing information.

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2024-03-21 21:49:07 +01:00
Florian Eckert
0da116f25b ca-certificates: add missing license information
The package has no licence information. So let's fix it.

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2024-03-21 21:44:53 +01:00
Florian Eckert
7a3deadf91 wireless-regdb: add missing license information
Add the missing license information PKG_LICENSE and PKG_LICENSE_FILES.

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2024-03-21 13:44:44 +01:00
Chuanhong Guo
a6991fc7d2 mediatek: mt7622: add a second u-boot for redmi-ax6s
The vendor u-boot knows nothing about UBI, and we used to have a
fixed-size kernel partition for vendor u-boot and UBI for rootfs.
However, that fixed partition becomes too small eventually, and
expanding it requires complicated procedure.

This commit changed the flash layout and added a second u-boot
where the kernel supposed to be.
Now the vendor u-boot chainloads our mainline u-boot, and our
u-boot reads kernel+rootfs from UBI, verifies it, and boot
into OpenWrt.

There are two possible ways to convert from the old fw:
Flash the factory image using mtd (provided by @rany2):

mount -o remount,ro /
mount -o remount,ro /overlay
cd /tmp
dd if=factory.bin bs=1M count=4 | mtd write - kernel
dd if=factory.bin bs=1M skip=4 | mtd -r write - ubi

Or, flash the 2nd u-boot via mtd and upload the firmware
to the 2nd u-boot using tftp:

1. prepare a tftp server at 192.168.1.254 to serve the
   sysupgrade image:
   openwrt-mediatek-mt7622-xiaomi_redmi-router-ax6s-squashfs-sysupgrade.itb
2. upload the ubi-loader.itb to OpenWrt /tmp, and flash it to
   the old kernel partition:
   mtd -r write openwrt-mediatek-mt7622-xiaomi_redmi-router-ax6s-ubi-loader.itb
3. The router should reboot and flash the sysupgrade image via TFTP.

Procedure for flashing from vendor firmware shouldn't change.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2024-03-21 16:55:13 +08:00
Chuanhong Guo
ec8c3dc701 uboot-mediatek: add support for GD5F1GQ5UE
This patch adds support for GigaDevice GD5F1GQ5UExxG to the
mtk-snfi driver in u-boot.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2024-03-21 16:52:09 +08:00
Chuanhong Guo
2ea8610e4f uboot-mediatek: add Redmi AX6S as UBI loader
Add support for Xiaomi Redmi AX6S to be used as a second-stage
UBI loader.
The defconfig/env is minimal: Boot fit from UBI. If that failed,
load and boot initramfs image from TFTP.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2024-03-21 16:52:09 +08:00
Daniel Golle
5305dbbe9f glibc: don't ship /etc/localtime -> /tmp/localtime symlink
The symlink is already part of the base-files package. We don't need
to ship it with glibc again.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-03-20 23:44:10 +00:00
Daniel Golle
56448cc8c1 umdns: fix PKG_MIRROR_HASH
PKG_MIRROR_HASH was accidentally generated with already APK-adapted
version string in the filename. That can't work (yet). Regenerate and
hash the file with the currently used version scheme to fix that.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-03-20 23:44:10 +00:00
Daniel Golle
5d34c835a1 umdns: update to git HEAD
e91ed40 ubus: assume that the service iface can be NULL
 4094a3c interface: remove unused peer field
 8a0c9db interface: add missing cache cleanup on interface free
 3b341f4 add the ability to announce additional hostnames

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-03-20 19:43:10 +00:00
Daniel Golle
330d67ecc0 umdns: add /etc/umdns/ to mount namespace jail
Make sure /etc/umdns/ is accessiable for the umdns process if it
exists and umdns is run with umdns.@umdns[0].jail='1'.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-03-20 19:23:50 +00:00
Robert Marko
362f9c41a4 ramips: mt7621: disable Edgerouter X image generation
With kernel 6.1 image size is too large for Edgerouter X current size
limit and is causing the buildbots to fail building so images for other
devices are not updated as well.

So, disable building Edgerouter X images until a workaround is found.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-03-20 12:06:35 +01:00
Hauke Mehrtens
28c87d7ecd dnsmasq: Backport 2 upstream patches
These two patches are fixing minor problems with DNSSEC found shortly
after the dnsmasq 2.90 release.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-03-20 01:18:21 +01:00
Dirk Buchwalder
f84ed09d2c ath11k-firmware: update IPQ6018 to 2.5.0.1-03982
That new version seems to work more stable including mesh.
On version 2.4.0.1-01746 rproc was immediately crashing if mesh was
active.

Signed-off-by: Dirk Buchwalder <buchwalder@posteo.de>
2024-03-19 07:20:26 +01:00
John Audia
3cd3afd92e kernel: bump 6.1 to 6.1.82
Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.1.82

All patches automatically rebased.

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

Signed-off-by: John Audia <therealgraysky@proton.me>
2024-03-19 00:33:51 +01:00
John Audia
1366378dfe kernel: config: add symbol introduced with 6.1.82
Add CONFIG_MITIGATION_RFDS=y to the default config[1]

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

Signed-off-by: John Audia <therealgraysky@proton.me>
2024-03-19 00:33:51 +01:00
Hauke Mehrtens
57bc07fb89 linux-firmware: Update Intel wifi firmware
Update Intel wifi firmware to most recent versions supported by the
iwlwifi driver from kernel 6.6.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-03-18 23:07:00 +01:00
Pawel Dembicki
b81f2ab9da generic: kernel: fix libata ledtrig support in 6.6
Upstream commit e298d8a38b23 [0] changed method how to blink delays are pased
to function. Downstream commit must follow it.

[0] https://lore.kernel.org/r/20230510162234.291439-2-hdegoede@redhat.com

Reported-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2024-03-18 22:24:17 +01:00
Paweł Owoc
879af72b48 qualcommax: ipq807x: Fix MAC addresses usage for RAX120v2
Currently, 6 MAC addresses are read from the "boarddata1" partition and set for network interfaces in sequence.
This partition only contains 3 MAC addresses:
1. lan mac
2. wan mac
3. wlan5g mac
As result only lan2, lan3 and lan4 have correct (OUI) MAC addresses.
lan1, lan5 and wan interfaces get MAC addresses with incorrect OUI from random data on "boarddata1" partition.

This commit fix this and use first MAC for lan and second MAC for wan interfaces.

Signed-off-by: Paweł Owoc <frut3k7@gmail.com>
2024-03-18 22:19:42 +01:00
Chukun Pan
1388444f9b qualcommax: ipq60xx: set PHY mode to psgmii for port 5
The port 5 of most ipq60xx devices is connected to qca8075,
a few are connected to qca8081. So assume that the default
connection is qca8075 and set the phy mode to psgmii.

Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
2024-03-18 22:17:20 +01:00
Chukun Pan
3075d56c4c qualcommax: set phy-mode to sgmii for QCA8081
The dp5 node uses psgmii by default, corrected
the phy-mode to sgmii for the qca8081 phy.

Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
2024-03-18 22:17:20 +01:00
Chukun Pan
a75102bbbc qualcommax: dts: cleanup whitespace
Replace blanks with tabs, remove extra blank lines.
Also add new lines as appropriate.

Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
2024-03-18 22:17:20 +01:00
Felix Fietkau
85ad6b9569 mt76: update to Git HEAD (2024-03-18)
a903d3169193 wifi: mt76: mt7921: fix a potential association failure upon resuming
eb0d0ce344f3 wifi: mt76: mt7921: fix suspend issue on MediaTek COB platform
841bf82e9958 wifi: mt76: fix the issue of missing txpwr settings from ch153 to ch177
ce7ccc540168 wifi: mt76: Remove redundant assignment to variable tidno
a238df940d6f wifi: mt76: mt7915: initialize rssi on adding stations
46c7d1849dbd wifi: mt76: replace skb_put with skb_put_zero
b5640b3153c7 wifi: mt76: fix tx packet loss when scanning on DBDC
7b054e5cb3af wifi: mt76: mt7915: fix mcu command format for mt7915 tx stats
3f27a64a8010 wifi: mt76: mt7915: fix bogus Tx/Rx airtime duration values
4f681a8fbc91 wifi: mt76: mt7915: fix HE PHY capabilities IE for station mode
8ede229eb8b5 wifi: mt76: mt7915: only set MT76_MCU_RESET for the main phy
2330781b8c5f wifi: mt76: mt7996: only set MT76_MCU_RESET for the main phy
e5fb6995e7eb wifi: mt76: mt7915: add support for disabling in-band discovery
b4a917417c85 wifi: mt76: mt7915: add mt7986, mt7916 and mt7981 pre-calibration
2135e201e7a9 mt76: mt7915: add fallback in case of missing precal data

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2024-03-18 13:25:11 +01:00
Daniel Golle
40fce9dcb8 kernel: modules: package driver for MediaTek T7xx PCIe 5G modem
Build and package driver for MediaTek PCIe 5G WWAN modem T7xx device
available in Linux 6.1 and 6.6 as kmod-mtk-t7xx.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-03-17 22:41:03 +00:00
Rafał Miłecki
081cd769fc kernel: backport some useful LED_FUNCTION_* defines for DT
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2024-03-17 22:55:32 +01:00
John Audia
34b8c70a81 kernel: bump 6.6 to 6.6.22
Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.22

Affected Patch automatically rebased.

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

Signed-off-by: John Audia <therealgraysky@proton.me>
2024-03-17 21:16:52 +01:00
John Audia
6642d6c24e kernel: bump 6.6 to 6.6.21
Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.21

All patches automatically rebased.

Signed-off-by: John Audia <therealgraysky@proton.me>
2024-03-17 21:16:52 +01:00
Daniel Golle
fc177695e0 mvebu: enable thermal zone polling for IEI Puzzle devices
Marvell's thermal sensors do not support interrupts, so we need to
poll them. Reading temperature every second should be enough to
control the fan.
While at it, also make sure fan speed is reduced again if temperature
goes down.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-03-17 19:37:14 +00:00
Paul Spooren
7ac030876c uci: fix variable declaration
Using := doesn't fly well when including other variables. In fact this
would cause the variable to be empty and break cloning of the git repo.

Fix: "c354c069b3 uci: fix Makefile formatting"

Signed-off-by: Paul Spooren <mail@aparcar.org>
2024-03-17 18:24:04 +01:00
INAGAKI Hiroshi
f7275dedd4 qualcommax: ipq807x: fix LEDs on Buffalo WXR-5950AX12
On Buffalo WXR-5590AX12, some LEDs don't have "function" property and
only "color" property is available for the newer binding of LED on
Linux Kernel.
2e659930d3 ("qualcommax: drop redundant label with new LED
color/function format") removes "label" property from LEDs, then,
multiple "<color>:" (ex.: "white:"/"red:") will be appeared as LED names
and renamed to "<color>:_<num>" ("ex.: "white:_1", "green:_2", ...) by
kernel.

logs:

[    5.372863] leds-gpio leds: Led white: renamed to white:_1 due to name collision
[    5.375796] leds-gpio leds: Led red: renamed to red:_1 due to name collision

/sys/class/leds:

root@OpenWrt:/# ls /sys/class/leds/
red:         red:power    white:       white:power
red:_1       red:wlan     white:_1     white:wlan

Fix this issue by adding missing "function" property to LEDs on Buffalo
WXR-5950AX12.
Note: there are no appropriate functions in dt-bindings/leds/common.h
for some LEDs, so use the hardcoded strings for them instead.

Fixes: 2e659930d3 ("qualcommax: drop redundant label with new LED color/function format")
Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2024-03-17 17:31:02 +01:00
INAGAKI Hiroshi
5c1c823c4a qualcommax: ipq807x: fix LEDs on QNAP QHora-301W
On QNAP QHora-301W, all LEDs don't have "function" property and only
"color" property is available for the newer binding of LED on Linux
Kernel.
2e659930d3 ("qualcommax: drop redundant label with new LED
color/function format") removes "label" property from LEDs, then,
multiple "<color>:" (ex.: "amber:"/"green:"/"red:") will be appeared as
LED names and renamed to "<color>:_<num>" ("ex.: "green:_1", "green:_2",
...) by kernel.

logs:

[    4.246494] leds-gpio leds: Led green: renamed to green:_1 due to name collision
[    4.248978] leds-gpio leds: Led green: renamed to green:_2 due to name collision
[    4.256345] leds-gpio leds: Led green: renamed to green:_3 due to name collision
[    4.263770] leds-gpio leds: Led green: renamed to green:_4 due to name collision
[    4.271105] leds-gpio leds: Led amber: renamed to amber:_1 due to name collision
[    4.278487] leds-gpio leds: Led green: renamed to green:_5 due to name collision
[    4.285856] leds-gpio leds: Led amber: renamed to amber:_2 due to name collision
[    4.293257] leds-gpio leds: Led green: renamed to green:_6 due to name collision
[    4.300616] leds-gpio leds: Led amber: renamed to amber:_3 due to name collision
[    4.308002] leds-gpio leds: Led green: renamed to green:_7 due to name collision
[    4.315384] leds-gpio leds: Led amber: renamed to amber:_4 due to name collision
[    4.322760] leds-gpio leds: Led green: renamed to green:_8 due to name collision
[    4.330135] leds-gpio leds: Led amber: renamed to amber:_5 due to name collision

/sys/class/leds:

amber:          amber:_4        green:_2        green:_6
amber:_1        green:_5        green:_3        green:_7
amber:_2        green:          green:_4        green:_8
amber:_3        green:_1        green:_5        red:

Fix this issue by adding missing "function" (and "function-enumerator")
property to LEDs on QNAP QHora-301W.
Note: there are no appropriate functions in dt-bindings/leds/common.h
for some LEDs, so use the hardcoded strings for them instead.

Fixes: 2e659930d3 ("qualcommax: drop redundant label with new LED color/function format")
Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2024-03-17 17:31:02 +01:00