[source] ath9k: ignore led_pin if ath9k GPIO controller is used with DT

LEDE Commits lede-commits at lists.infradead.org
Sat Apr 8 05:30:37 PDT 2017


mkresin pushed a commit to source.git, branch master:
https://git.lede-project.org/b06559e5b76adfbafb16965098994cd30e8ded9c

commit b06559e5b76adfbafb16965098994cd30e8ded9c
Author: Mathias Kresin <dev at kresin.me>
AuthorDate: Wed Mar 22 08:04:16 2017 +0100

    ath9k: ignore led_pin if ath9k GPIO controller is used with DT
    
    Don't setup the default led pin if the ath9k GPIO controller is used
    via device tree to prevent collision. In case any of the pins exposed
    by the ath9k is used, the phyNtpt trigger needs to be set in userspace.
    
    Signed-off-by: Mathias Kresin <dev at kresin.me>
---
 .../kernel/mac80211/patches/548-ath9k_enable_gpio_chip.patch   | 10 ++++++----
 .../mac80211/patches/549-ath9k_enable_gpio_buttons.patch       |  4 ++--
 2 files changed, 8 insertions(+), 6 deletions(-)

diff --git a/package/kernel/mac80211/patches/548-ath9k_enable_gpio_chip.patch b/package/kernel/mac80211/patches/548-ath9k_enable_gpio_chip.patch
index 10047a7..86917eb 100644
--- a/package/kernel/mac80211/patches/548-ath9k_enable_gpio_chip.patch
+++ b/package/kernel/mac80211/patches/548-ath9k_enable_gpio_chip.patch
@@ -221,21 +221,23 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  	char led_name[32];
  	const char *trigger;
  	int i;
-@@ -156,6 +291,13 @@ void ath_init_leds(struct ath_softc *sc)
+@@ -156,6 +291,15 @@ void ath_init_leds(struct ath_softc *sc)
  	if (AR_SREV_9100(sc->sc_ah))
  		return;
  
 +	if (!np)
 +		ath9k_register_gpio_chip(sc);
 +
-+	/* setup gpio controller only if requested */
-+	if (of_property_read_bool(np, "gpio-controller"))
++	/* setup gpio controller only if requested and skip the led_pin setup */
++	if (of_property_read_bool(np, "gpio-controller")) {
 +		ath9k_register_gpio_chip(sc);
++		return;
++	}
 +
  	ath_fill_led_pin(sc);
  
  	if (pdata && pdata->leds && pdata->num_leds)
-@@ -183,6 +325,7 @@ void ath_init_leds(struct ath_softc *sc)
+@@ -183,6 +327,7 @@ void ath_init_leds(struct ath_softc *sc)
  	ath_create_gpio_led(sc, sc->sc_ah->led_pin, led_name, trigger,
  			   !sc->sc_ah->config.led_active_high);
  }
diff --git a/package/kernel/mac80211/patches/549-ath9k_enable_gpio_buttons.patch b/package/kernel/mac80211/patches/549-ath9k_enable_gpio_buttons.patch
index 1d1efe5..4e165dd 100644
--- a/package/kernel/mac80211/patches/549-ath9k_enable_gpio_buttons.patch
+++ b/package/kernel/mac80211/patches/549-ath9k_enable_gpio_buttons.patch
@@ -117,8 +117,8 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  	while (!list_empty(&sc->leds)) {
  		led = list_first_entry(&sc->leds, struct ath_led, list);
  #ifdef CONFIG_GPIOLIB
-@@ -299,6 +368,7 @@ void ath_init_leds(struct ath_softc *sc)
- 		ath9k_register_gpio_chip(sc);
+@@ -301,6 +370,7 @@ void ath_init_leds(struct ath_softc *sc)
+ 	}
  
  	ath_fill_led_pin(sc);
 +	ath9k_init_buttons(sc);



More information about the lede-commits mailing list