I have an initial patch which gives me working leds on my DWL-G630. It will need cleaning up a bit. In particular, I am not sure if using it whenever SOFTLED is not activated is OK. I don't have any other hardware, so I can't test.
Comments please Mark diff --git a/drivers/net/wireless/ath5k/base.c b/drivers/net/wireless/ath5k/base.c index 6cf69d3..555446f 100644 --- a/drivers/net/wireless/ath5k/base.c +++ b/drivers/net/wireless/ath5k/base.c @@ -2815,6 +2816,8 @@ static int ath5k_add_interface(struct ieee80211_hw *hw, * be set to mac80211's value at ath5k_config(). */ sc->bintval = 1000; ath5k_hw_set_lladdr(sc->ah, conf->mac_addr); + if (!test_bit(ATH_STAT_LEDSOFT, sc->status)) + ath5k_hw_set_ledstate(sc->ah, AR5K_LED_SCAN); ret = 0; end: @@ -2835,6 +2838,8 @@ ath5k_remove_interface(struct ieee80211_hw *hw, ath5k_hw_set_lladdr(sc->ah, mac); sc->vif = NULL; + if (!test_bit(ATH_STAT_LEDSOFT, sc->status)) + ath5k_hw_set_ledstate(sc->ah, AR5K_LED_INIT); end: mutex_unlock(&sc->lock); } @@ -3176,6 +3181,9 @@ static void ath5k_bss_info_changed(struct ieee80211_hw *hw, sc->assoc = bss_conf->assoc; if (sc->opmode == NL80211_IFTYPE_STATION) set_beacon_filter(hw, sc->assoc); + if (!test_bit(ATH_STAT_LEDSOFT, sc->status)) + ath5k_hw_set_ledstate(sc->ah, + (sc->assoc ? AR5K_LED_ASSOC : AR5K_LED_SCAN)); mutex_unlock(&sc->lock); } } _______________________________________________ ath5k-devel mailing list ath5k-devel@lists.ath5k.org https://lists.ath5k.org/mailman/listinfo/ath5k-devel