p54: more SoftLED updates

This patch hopefully finishes the SoftLED code:
- It adds two more LEDs (rx and radio).
  (the FW claims it can support up to 16 LEDs,
   but I doubt that any vendor put more than 4 on a board)
- update the LEDs in a _delayed_ workqueue.
  No one reported any more crashes.
  (see: "PATCH] p54: fix race condition in memory management")
  So we can stop burning the mm code.

Signed-off-by: Christian Lamparter <chunkeey@web.de>
Acked-by: Larry Finger <Larry.Finger@lwfinger.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
Christian Lamparter
2009-03-25 03:12:18 +01:00
committed by John W. Linville
parent cf3a9579f6
commit dce072580e
2 changed files with 70 additions and 23 deletions

View File

@@ -125,6 +125,7 @@ struct p54_led_dev {
struct led_classdev led_dev;
char name[P54_LED_MAX_NAME_LEN + 1];
unsigned int toggled;
unsigned int index;
unsigned int registered;
};
@@ -186,10 +187,10 @@ struct p54_common {
u8 rx_keycache_size;
/* LED management */
#ifdef CONFIG_P54_LEDS
struct p54_led_dev assoc_led;
struct p54_led_dev tx_led;
#endif /* CONFIG_P54_LEDS */
#ifdef CONFIG_MAC80211_LEDS
struct p54_led_dev leds[4];
struct delayed_work led_work;
#endif /* CONFIG_MAC80211_LEDS */
u16 softled_state; /* bit field of glowing LEDs */
/* statistics */