diff options
Diffstat (limited to 'drivers/net/wireless/iwlwifi/iwl-led.h')
-rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-led.h | 48 |
1 files changed, 15 insertions, 33 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-led.h b/drivers/net/wireless/iwlwifi/iwl-led.h index ef9b174c37ff..49a70baa3fb6 100644 --- a/drivers/net/wireless/iwlwifi/iwl-led.h +++ b/drivers/net/wireless/iwlwifi/iwl-led.h | |||
@@ -1,6 +1,6 @@ | |||
1 | /****************************************************************************** | 1 | /****************************************************************************** |
2 | * | 2 | * |
3 | * Copyright(c) 2003 - 2009 Intel Corporation. All rights reserved. | 3 | * Copyright(c) 2003 - 2010 Intel Corporation. All rights reserved. |
4 | * | 4 | * |
5 | * This program is free software; you can redistribute it and/or modify it | 5 | * This program is free software; you can redistribute it and/or modify it |
6 | * under the terms of version 2 of the GNU General Public License as | 6 | * under the terms of version 2 of the GNU General Public License as |
@@ -30,9 +30,6 @@ | |||
30 | 30 | ||
31 | struct iwl_priv; | 31 | struct iwl_priv; |
32 | 32 | ||
33 | #ifdef CONFIG_IWLWIFI_LEDS | ||
34 | #include <linux/leds.h> | ||
35 | |||
36 | #define IWL_LED_SOLID 11 | 33 | #define IWL_LED_SOLID 11 |
37 | #define IWL_LED_NAME_LEN 31 | 34 | #define IWL_LED_NAME_LEN 31 |
38 | #define IWL_DEF_LED_INTRVL cpu_to_le32(1000) | 35 | #define IWL_DEF_LED_INTRVL cpu_to_le32(1000) |
@@ -47,38 +44,23 @@ enum led_type { | |||
47 | IWL_LED_TRG_RADIO, | 44 | IWL_LED_TRG_RADIO, |
48 | IWL_LED_TRG_MAX, | 45 | IWL_LED_TRG_MAX, |
49 | }; | 46 | }; |
50 | #endif | ||
51 | |||
52 | #ifdef CONFIG_IWLWIFI_LEDS | ||
53 | |||
54 | struct iwl_led { | ||
55 | struct iwl_priv *priv; | ||
56 | struct led_classdev led_dev; | ||
57 | char name[32]; | ||
58 | 47 | ||
59 | int (*led_on) (struct iwl_priv *priv, int led_id); | 48 | /* |
60 | int (*led_off) (struct iwl_priv *priv, int led_id); | 49 | * LED mode |
61 | int (*led_pattern) (struct iwl_priv *priv, int led_id, unsigned int idx); | 50 | * IWL_LED_BLINK: adjust led blink rate based on blink table |
62 | 51 | * IWL_LED_RF_STATE: turn LED on/off based on RF state | |
63 | enum led_type type; | 52 | * LED ON = RF ON |
64 | unsigned int registered; | 53 | * LED OFF = RF OFF |
54 | */ | ||
55 | enum iwl_led_mode { | ||
56 | IWL_LED_BLINK, | ||
57 | IWL_LED_RF_STATE, | ||
65 | }; | 58 | }; |
66 | 59 | ||
67 | int iwl_leds_register(struct iwl_priv *priv); | 60 | void iwl_leds_init(struct iwl_priv *priv); |
68 | void iwl_leds_unregister(struct iwl_priv *priv); | ||
69 | void iwl_leds_background(struct iwl_priv *priv); | 61 | void iwl_leds_background(struct iwl_priv *priv); |
62 | int iwl_led_start(struct iwl_priv *priv); | ||
63 | int iwl_led_associate(struct iwl_priv *priv); | ||
64 | int iwl_led_disassociate(struct iwl_priv *priv); | ||
70 | 65 | ||
71 | #else | ||
72 | static inline int iwl_leds_register(struct iwl_priv *priv) | ||
73 | { | ||
74 | return 0; | ||
75 | } | ||
76 | static inline void iwl_leds_unregister(struct iwl_priv *priv) | ||
77 | { | ||
78 | } | ||
79 | static inline void iwl_leds_background(struct iwl_priv *priv) | ||
80 | { | ||
81 | } | ||
82 | |||
83 | #endif /* CONFIG_IWLWIFI_LEDS */ | ||
84 | #endif /* __iwl_leds_h__ */ | 66 | #endif /* __iwl_leds_h__ */ |