diff options
author | Christian Lamparter <chunkeey@web.de> | 2009-03-05 19:02:04 -0500 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2009-03-16 18:09:28 -0400 |
commit | d0b45aef4f628e69f8da8c670d6879a8a02fe0f2 (patch) | |
tree | b9e4a8c729d28413e68307b33f635488a4d083cf /drivers/net/wireless/p54/p54.h | |
parent | efeada2c0aa1219b15787da48cfa282803e9d99e (diff) |
p54: initial SoftLED support
This patch adds SoftLED support for all p54 devices.
Signed-off-by: Christian Lamparter <chunkeey@web.de>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/p54/p54.h')
-rw-r--r-- | drivers/net/wireless/p54/p54.h | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/drivers/net/wireless/p54/p54.h b/drivers/net/wireless/p54/p54.h index 071cbe965377..2dda5fe418b6 100644 --- a/drivers/net/wireless/p54/p54.h +++ b/drivers/net/wireless/p54/p54.h | |||
@@ -14,6 +14,10 @@ | |||
14 | * published by the Free Software Foundation. | 14 | * published by the Free Software Foundation. |
15 | */ | 15 | */ |
16 | 16 | ||
17 | #ifdef CONFIG_MAC80211_LEDS | ||
18 | #include <linux/leds.h> | ||
19 | #endif /* CONFIG_MAC80211_LEDS */ | ||
20 | |||
17 | enum p54_control_frame_types { | 21 | enum p54_control_frame_types { |
18 | P54_CONTROL_TYPE_SETUP = 0, | 22 | P54_CONTROL_TYPE_SETUP = 0, |
19 | P54_CONTROL_TYPE_SCAN, | 23 | P54_CONTROL_TYPE_SCAN, |
@@ -112,6 +116,21 @@ enum fw_state { | |||
112 | FW_STATE_RESETTING, | 116 | FW_STATE_RESETTING, |
113 | }; | 117 | }; |
114 | 118 | ||
119 | #ifdef CONFIG_MAC80211_LEDS | ||
120 | |||
121 | #define P54_LED_MAX_NAME_LEN 31 | ||
122 | |||
123 | struct p54_led_dev { | ||
124 | struct ieee80211_hw *hw_dev; | ||
125 | struct led_classdev led_dev; | ||
126 | char name[P54_LED_MAX_NAME_LEN + 1]; | ||
127 | |||
128 | unsigned int index; | ||
129 | unsigned int registered; | ||
130 | }; | ||
131 | |||
132 | #endif /* CONFIG_MAC80211_LEDS */ | ||
133 | |||
115 | struct p54_common { | 134 | struct p54_common { |
116 | struct ieee80211_hw *hw; | 135 | struct ieee80211_hw *hw; |
117 | u32 rx_start; | 136 | u32 rx_start; |
@@ -157,6 +176,12 @@ struct p54_common { | |||
157 | struct completion eeprom_comp; | 176 | struct completion eeprom_comp; |
158 | u8 privacy_caps; | 177 | u8 privacy_caps; |
159 | u8 rx_keycache_size; | 178 | u8 rx_keycache_size; |
179 | /* LED management */ | ||
180 | #ifdef CONFIG_MAC80211_LEDS | ||
181 | struct p54_led_dev assoc_led; | ||
182 | struct p54_led_dev tx_led; | ||
183 | #endif /* CONFIG_MAC80211_LEDS */ | ||
184 | u16 softled_state; /* bit field of glowing LEDs */ | ||
160 | }; | 185 | }; |
161 | 186 | ||
162 | int p54_rx(struct ieee80211_hw *dev, struct sk_buff *skb); | 187 | int p54_rx(struct ieee80211_hw *dev, struct sk_buff *skb); |