[PATCH 3.19.y-ckt 18/99] ath9k: Add a module parameter to invert LED polarity.

Kamal Mostafa kamal at canonical.com
Thu Jul 7 18:37:17 UTC 2016

3.19.8-ckt23 -stable review patch.  If anyone has any objections, please let me know.


From: "Vittorio Gambaletta (VittGam)" <linux-wireless at vittgam.net>

commit cd84042ce9040ad038e958bc67a46fcfc015c736 upstream.

The LED can be active high instead of active low on some hardware.

Add the led_active_high module parameter. It defaults to -1 to obey
platform data as before.

Setting the parameter to 1 or 0 will force the LED respectively
active high or active low.

Cc: <linux-wireless at vger.kernel.org>
Cc: <ath9k-devel at qca.qualcomm.com>
Cc: <ath9k-devel at lists.ath9k.org>
Signed-off-by: Vittorio Gambaletta <linuxbugs at vittgam.net>
Signed-off-by: Kalle Valo <kvalo at qca.qualcomm.com>
Signed-off-by: Kamal Mostafa <kamal at canonical.com>
 drivers/net/wireless/ath/ath9k/init.c | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/drivers/net/wireless/ath/ath9k/init.c b/drivers/net/wireless/ath/ath9k/init.c
index a218a00..d7c1a02 100644
--- a/drivers/net/wireless/ath/ath9k/init.c
+++ b/drivers/net/wireless/ath/ath9k/init.c
@@ -49,6 +49,10 @@ int led_blink;
 module_param_named(blink, led_blink, int, 0444);
 MODULE_PARM_DESC(blink, "Enable LED blink on activity");
+static int ath9k_led_active_high = -1;
+module_param_named(led_active_high, ath9k_led_active_high, int, 0444);
+MODULE_PARM_DESC(led_active_high, "Invert LED polarity");
 static int ath9k_btcoex_enable;
 module_param_named(btcoex_enable, ath9k_btcoex_enable, int, 0444);
 MODULE_PARM_DESC(btcoex_enable, "Enable wifi-BT coexistence");
@@ -582,6 +586,9 @@ static int ath9k_init_softc(u16 devid, struct ath_softc *sc,
 	if (ret)
 		return ret;
+	if (ath9k_led_active_high != -1)
+		ah->config.led_active_high = ath9k_led_active_high == 1;
 	 * Enable WLAN/BT RX Antenna diversity only when:

More information about the kernel-team mailing list