ar71xx: TEW632BRP has buttons 'active low', fix board config

Looks like trunk@37090 has changed the logic that determines
if router's button was pressed. This resulted in TEW632BRP
always booting into failsafe mode because it detected pressed
button (which was not pressed).

Measure with voltmeter has shown that buttons on this router
are actually active-low. This patch reflects this fact in
board configuration and fixes 'load info failsafe mode' issue.

Note: it looks like Trendnet TEW632BRP and a close relative
to TEW-652BRP V1.0 and D-Link DIR-615C1, so same problem may
exist on those routers as well. This patch doesn't affect
routers other than 632BRP and unfortunately I do not have
hardware to test this issue with other routers.

This patch fixes #13893 and is tested on actuall Trendnet
TEW632BRP.

Signed-off-by: Nikolay Martynov <mar.kolya@gmail.com>
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>

SVN-Revision: 37569
master
Gabor Juhos 11 years ago
parent 8dd30fa775
commit b49dc036e8
  1. 2
      target/linux/ar71xx/files/arch/mips/ath79/mach-tew-632brp.c

@ -54,12 +54,14 @@ static struct gpio_keys_button tew_632brp_gpio_keys[] __initdata = {
.code = KEY_RESTART, .code = KEY_RESTART,
.debounce_interval = TEW_632BRP_KEYS_DEBOUNCE_INTERVAL, .debounce_interval = TEW_632BRP_KEYS_DEBOUNCE_INTERVAL,
.gpio = TEW_632BRP_GPIO_BTN_RESET, .gpio = TEW_632BRP_GPIO_BTN_RESET,
.active_low = 1,
}, { }, {
.desc = "wps", .desc = "wps",
.type = EV_KEY, .type = EV_KEY,
.code = KEY_WPS_BUTTON, .code = KEY_WPS_BUTTON,
.debounce_interval = TEW_632BRP_KEYS_DEBOUNCE_INTERVAL, .debounce_interval = TEW_632BRP_KEYS_DEBOUNCE_INTERVAL,
.gpio = TEW_632BRP_GPIO_BTN_WPS, .gpio = TEW_632BRP_GPIO_BTN_WPS,
.active_low = 1,
} }
}; };

Loading…
Cancel
Save