[OpenWrt-Devel] [PATCH] ath79: convert devices to interrupt-driven gpio-keys

Michal Cieslakiewicz michal.cieslakiewicz at wp.pl
Fri Aug 2 14:47:01 EDT 2019

On Fri,  2 Aug 2019 16:46:10 +0200
Adrian Schmutzler <freifunk at adrianschmutzler.de> wrote:

> This converts all remaining devices to use interrupt-driven
> gpio-keys compatible instead of gpio-keys-polled.
> The poll-interval is removed.
> Signed-off-by: Adrian Schmutzler <freifunk at adrianschmutzler.de>
> ---
> [...]
> diff --git a/target/linux/ath79/dts/ar7240_netgear_wnr612-v2.dtsi
> b/target/linux/ath79/dts/ar7240_netgear_wnr612-v2.dtsi index
> 8e934429a3..7b5f0ca70b 100644 ---
> a/target/linux/ath79/dts/ar7240_netgear_wnr612-v2.dtsi +++
> b/target/linux/ath79/dts/ar7240_netgear_wnr612-v2.dtsi @@ -15,8 +15,7
> @@ };
>  	keys {
> -		compatible = "gpio-keys-polled";
> -		poll-interval = <20>;
> +		compatible = "gpio-keys";
>  		reset {
>  			label = "reset";
> [...]

Hello all,

Please clarify the scope of above change - AFAIK there is no GPIO IRQ
for wireless chips (or please correct me if I am utterly wrong), hence
ath9k-connected buttons will not work with this setting.

I've built an ath79 image for Netgear WNR612v2 with this patch applied
and indeed, at startup it gives an error:

gpio-keys keys: failed to get irq for gpio:507

which points to reset button wired to ar9285 at pin 7. As expected
with this sort of problem, reset button does not trigger any action at

Currently I'm porting some older WNR* routers to DTS and ath79, most of
them have all or at least some buttons wired to wireless chip, so I
would like to see your opinion on following:

0. Buttons for ath9k-phy GPIOs should remain polled.
1. If above is true and we want to use mixed (irq/polled) configuration,
maybe it is advisable to split DTS definitions into 'keys' and
'ath9k-keys', identical to LEDs setup.
2. Or alternatively, because we need to poll ath9k GPIO pins
anyway, we keep all buttons in polled section.


openwrt-devel mailing list
openwrt-devel at lists.openwrt.org

More information about the openwrt-devel mailing list