ar71xx: fix ath9k default LED changes fallout
authorMathias Kresin <dev@kresin.me>
Wed, 12 Apr 2017 06:45:19 +0000 (08:45 +0200)
committerMathias Kresin <dev@kresin.me>
Thu, 13 Apr 2017 06:18:57 +0000 (08:18 +0200)
Since 192f0a3db859 ("ath9k: unset the default LED pin if used by
platform leds") the default ath9k wireless LED is not set as soon as
any pin of the ath ath9k gpio controller is used.

All touched boards have leds defined which are using the gpio pins
exposed by the ath9k driver but rely on a default set wireless led
trigger.

Add the wireless leds were missing and setup the wireless phy trigger
in userspace.

Signed-off-by: Russell Senior <russell@personaltelco.net>
Signed-off-by: Mathias Kresin <dev@kresin.me>
target/linux/ar71xx/base-files/etc/board.d/01_leds
target/linux/ar71xx/files/arch/mips/ath79/mach-tl-wr2543n.c
target/linux/ar71xx/files/arch/mips/ath79/mach-wzr-hp-g300nh2.c
target/linux/ar71xx/files/arch/mips/ath79/mach-wzr-hp-g450h.c

index 44d06fc1e1030006c1af22d5909eef8cf96e20ed..2f3e5efd57cdcde9c0b9c74d6ed3f52fac0a9440 100755 (executable)
@@ -743,6 +743,7 @@ tl-wr1043nd-v4)
        ucidef_set_led_switch "lan4" "LAN4" "tp-link:green:lan4" "switch0" "0x02"
        ;;
 tl-wr2543n)
+       ucidef_set_led_wlan "wlan2g" "WLAN2G" "tp-link:green:wlan2g" "phy0tpt"
        ucidef_set_led_usbdev "usb" "USB" "tp-link:green:usb" "1-1"
        ;;
 tube2h)
@@ -847,6 +848,8 @@ wpn824n)
 wzr-hp-ag300h)
        ucidef_set_led_default "diag" "DIAG" "buffalo:red:diag" "0"
        ucidef_set_led_netdev "router" "ROUTER" "buffalo:green:router" "eth1"
+       ucidef_set_led_wlan "wlan2g" "WLAN2G" "buffalo:amber:band2g" "phy0tpt"
+       ucidef_set_led_wlan "wlan5g" "WLAN5G" "buffalo:amber:band5g" "phy1tpt"
        ucidef_set_led_usbdev "usb" "USB" "buffalo:green:usb" "1-1"
        ;;
 wzr-hp-g300nh)
@@ -854,6 +857,10 @@ wzr-hp-g300nh)
        ucidef_set_led_netdev "router" "Router" "buffalo:green:router" "eth1"
        ucidef_set_led_usbdev "usb" "USB" "buffalo:blue:usb" "1-1"
        ;;
+wzr-hp-g300nh2|\
+wzr-hp-g450h)
+       ucidef_set_led_wlan "wlan" "Wireless" "buffalo:green:wireless" "phy0tpt"
+       ;;
 xd3200)
        ucidef_set_led_wlan "wlan2g" "WLAN2G" "$board:blue:wlan2g" "phy1tpt"
        ;;
index 8f6db5eda179bd29c645a537c667cb2bf12b1e8a..141914aa2913cad66fcf10b9f5a23970a747bf17 100644 (file)
@@ -59,6 +59,11 @@ static struct gpio_led tl_wr2543n_leds_gpio[] __initdata = {
 };
 
 static struct gpio_led tl_wr2543n_wmac_leds_gpio[] = {
+       {
+               .name           = "tp-link:green:wlan2g",
+               .gpio           = TL_WR2543N_GPIO_WMAC_LED_WLAN2G,
+               .active_low     = 1,
+       },
        {
                .name           = "tp-link:green:wlan5g",
                .gpio           = TL_WR2543N_GPIO_WMAC_LED_WLAN5G,
@@ -125,17 +130,6 @@ static void __init tl_wr2543n_setup(void)
                                        tl_wr2543n_gpio_keys);
        ath79_register_usb();
 
-       /*
-        * The ath9k driver uses this pin for its default led device, which is
-        * named ath9k-phy0, and reflects activity on either the 2 GHz or 5 GHz
-        * bands. This pin is connected to the WR2543's 2GHz WLAN LED.
-        */
-       ap9x_pci_setup_wmac_led_pin(0, TL_WR2543N_GPIO_WMAC_LED_WLAN2G);
-
-       /*
-        * We also have the driver set up an led device for the WR2543's
-        * separate 5 GHz WLAN LED in case the user wants it.
-        */
        ap9x_pci_setup_wmac_leds(0, tl_wr2543n_wmac_leds_gpio,
                                 ARRAY_SIZE(tl_wr2543n_wmac_leds_gpio));
        ap91_pci_init(eeprom, mac);
index 296551348f40bb8c95f4c8e1734962c7a3f4ccc1..c44a9cf7708750b5fc6a421db168d71e87fb8cf1 100644 (file)
@@ -74,6 +74,11 @@ static struct gpio_led wzrhpg300nh2_wmac_leds_gpio[] = {
                .gpio           = 4,
                .active_low     = 1,
        },
+       {
+               .name           = "buffalo:green:wireless",
+               .gpio           = 5,
+               .active_low     = 1,
+       },
        {
                .name           = "buffalo:orange:security",
                .gpio           = 6,
@@ -159,7 +164,6 @@ static void __init wzrhpg300nh2_setup(void)
        ath79_register_gpio_keys_polled(-1, WZRHPG300NH2_KEYS_POLL_INTERVAL,
                                        ARRAY_SIZE(wzrhpg300nh2_gpio_keys),
                                        wzrhpg300nh2_gpio_keys);
-       ap9x_pci_setup_wmac_led_pin(0, 5);
        ap9x_pci_setup_wmac_leds(0, wzrhpg300nh2_wmac_leds_gpio,
                                ARRAY_SIZE(wzrhpg300nh2_wmac_leds_gpio));
 
index 53f37b098114618ead64dfdf507fc3156d7b6f3a..5d235c49f4b74014fd023c6584e431447c6c96f9 100644 (file)
@@ -84,6 +84,11 @@ static struct gpio_led wzrhpg450h_wmac_leds_gpio[] = {
                .gpio           = 14,
                .active_low     = 1,
        },
+       {
+               .name           = "buffalo:green:wireless",
+               .gpio           = 15,
+               .active_low     = 1,
+       },
 };
 
 static struct gpio_keys_button wzrhpg450h_gpio_keys[] __initdata = {
@@ -156,7 +161,6 @@ static void __init wzrhpg450h_init(void)
        ap91_pci_init(ee, NULL);
        ap9x_pci_get_wmac_data(0)->tx_gain_buffalo = true;
        ap9x_pci_get_wmac_data(1)->tx_gain_buffalo = true;
-       ap9x_pci_setup_wmac_led_pin(0, 15);
        ap9x_pci_setup_wmac_leds(0, wzrhpg450h_wmac_leds_gpio,
                                 ARRAY_SIZE(wzrhpg450h_wmac_leds_gpio));
 }