ar71xx: rbspi: fix RB wAP AC gpio conflict and LED
authorThibaut VARÈNE <hacks@slashdirt.org>
Sun, 29 Jul 2018 10:14:57 +0000 (12:14 +0200)
committerJo-Philipp Wich <jo@mein.io>
Mon, 30 Jul 2018 09:12:41 +0000 (11:12 +0200)
e15c63a37574bd15ce3a6636c2f04741ab76f7b9 introduced code that was trying
to register GPIO 1 as both an LED and a button. The OEM source makes it
clear that LED1 is not wired to the SoC GPIOs. GPIO 1 is the reset button.

Furthermore the (green) power led default state should also be defined,
(matching OEM source), and it should be used by diag.sh since it's
currently the only software-controllable LED.

This patch fixes these issues and renames the corresponding #defines for
clarity

Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
(cherry picked from commit e99f760235bb45716018faab52d31ce8165f49a0)

target/linux/ar71xx/base-files/etc/diag.sh
target/linux/ar71xx/files/arch/mips/ath79/mach-rbspi.c

index a3499cfafbe001f32b2edc688aaec02ecdbc38a4..57a96818ce50510194fd8c9d59451a03d9bb4ae8 100644 (file)
@@ -384,7 +384,8 @@ get_status_led() {
        rb-912uag-2hpnd|\
        rb-912uag-5hpnd|\
        rb-sxt2n|\
-       rb-sxt5n)
+       rb-sxt5n|\
+       rb-wapg-5hact2hnd)
                status_led="rb:green:power"
                ;;
        re355|\
index f7f3b028f4b45e5a88b8321c70d50ab670dbb06c..a9f3fc95b9211e4a2e308a5709cc60ad06a520a3 100644 (file)
@@ -476,10 +476,10 @@ static struct gpio_led rblhg_leds[] __initdata = {
 };
 
 /* RB w APG-5HacT2HnD (wAP AC) gpios*/
-#define RBWAPGSC_LED1          1
-#define RBWAPGSC_LED2          8
-#define RBWAPGSC_LED3          9
-#define RBWAPGSC_POWERLED              16
+#define RBWAPGSC_WIFI_LED_1            1
+#define RBWAPGSC_WIFI_LED_2            8
+#define RBWAPGSC_WIFI_LED_3            9
+#define RBWAPGSC_GPIO_LED_POWER                16
 #define RBWAPGSC_GPIO_BTN_RESET                1
 #define RBWAPGSC_GPIO_MDIO_MDC         12
 #define RBWAPGSC_GPIO_MDIO_DATA                11
@@ -487,13 +487,10 @@ static struct gpio_led rblhg_leds[] __initdata = {
 
 static struct gpio_led rbwapgsc_leds[] __initdata = {
        {
-               .name = "rb:green:led1",
-               .gpio = RBWAPGSC_LED1,
-               .active_low = 1,
-       },{
-               .name = "rb:blue:power",
-               .gpio = RBWAPGSC_POWERLED,
+               .name = "rb:green:power",
+               .gpio = RBWAPGSC_GPIO_LED_POWER,
                .active_low = 1,
+               .default_state = LEDS_GPIO_DEFSTATE_ON,
        },
 };