mac80211: ath9k: set default state for platform LEDs

Support default state for platform LEDs connected to ath9k device.
Now LEDs are correctly set on or off at ath9k module initialization.

Signed-off-by: Michal Cieslakiewicz <michal.cieslakiewicz@wp.pl>
Acked-by: Hartmut Knaack <knaack.h@gmx.de>

SVN-Revision: 48880
This commit is contained in:
Felix Fietkau 2016-03-02 13:22:46 +00:00
parent a8c15c0204
commit 9e74c3af07

View file

@ -0,0 +1,29 @@
From: Michal Cieslakiewicz <michal.cieslakiewicz@wp.pl>
Date: Sun, 31 Jan 2016 20:48:49 +0100
Subject: [PATCH v4 2/8] mac80211: ath9k: set default state for platform LEDs
Support default state for platform LEDs connected to ath9k device.
Now LEDs are correctly set on or off at ath9k module initialization.
Very useful if power LED is connected to wireless chip.
Signed-off-by: Michal Cieslakiewicz <michal.cieslakiewicz@wp.pl>
---
gpio.c | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
--- a/drivers/net/wireless/ath/ath9k/gpio.c
+++ b/drivers/net/wireless/ath/ath9k/gpio.c
@@ -54,8 +54,11 @@ static int ath_add_led(struct ath_softc
ath9k_hw_cfg_output(sc->sc_ah, gpio->gpio,
AR_GPIO_OUTPUT_MUX_AS_OUTPUT);
- /* LED off */
- ath9k_hw_set_gpio(sc->sc_ah, gpio->gpio, gpio->active_low);
+ /* Set default LED state */
+ if (gpio->default_state == LEDS_GPIO_DEFSTATE_ON)
+ ath9k_hw_set_gpio(sc->sc_ah, gpio->gpio, !gpio->active_low);
+ else
+ ath9k_hw_set_gpio(sc->sc_ah, gpio->gpio, gpio->active_low);
return 0;
}