ath79: increase the rfkill debounce interval for TP-Link Archer C7 v2
authorShiji Yang <yangshiji66@qq.com>
Fri, 14 Jul 2023 15:09:55 +0000 (23:09 +0800)
committerHauke Mehrtens <hauke@hauke-m.de>
Mon, 30 Oct 2023 23:44:03 +0000 (00:44 +0100)
Due to circuit issue or silicon defect, sometimes the WiFi switch button
of the Archer C7 v2 can be accidentally triggered multiple times in one
second. This will cause WiFi to be unexpectedly shut down and trigger
'irq 23: nobody cared'[1] warning. Increasing the key debounce interval
to 1000 ms can fix this issue. This patch also add the missing rfkill
key label.

[1] Warning Log:
```
[87765.218511] irq 23: nobody cared (try booting with the "irqpoll" option)
[87765.225331] CPU: 0 PID: 317 Comm: irq/23-keys Not tainted 5.15.118 #0
...
[87765.486246] handlers:
[87765.488543] [<85257547>] 0x800c29a0 threaded [<5c6328a2>] 0x80ffe0b8 [gpio_button_hotplug@4cf73d00+0x1a00]
[87765.498364] Disabling IRQ #23
```

Fixes: https://github.com/openwrt/openwrt/issues/13010
Fixes: https://github.com/openwrt/openwrt/issues/12167
Fixes: https://github.com/openwrt/openwrt/issues/11191
Fixes: https://github.com/openwrt/openwrt/issues/7835
Tested-by: Hans Hasert
Signed-off-by: Shiji Yang <yangshiji66@qq.com>
(cherry picked from commit e32f70e7066c3110694851eced3301f50019693b)

target/linux/ath79/dts/qca9558_tplink_archer-c7-v2.dts

index b7ac902003cacb587ee8fdecaf766d9a31f99232..1b860dbf2d5ff7ecff9f9173883d379423e0870b 100644 (file)
 
 &keys {
        rfkill {
+               label = "rfkill";
                gpios = <&gpio 23 GPIO_ACTIVE_LOW>;
                linux,code = <KEY_RFKILL>;
                linux,input-type = <EV_SW>;
-               debounce-interval = <60>;
+               debounce-interval = <1000>;
        };
 };