airo warning fix
[safe/jmp/linux-2.6] / drivers / net / wireless / rt2x00 / rt2x00.h
index dfd0af0..611d983 100644 (file)
@@ -328,6 +328,11 @@ static inline int rt2x00_get_link_ant_rssi(struct link *link)
        return DEFAULT_RSSI;
 }
 
+static inline void rt2x00_reset_link_ant_rssi(struct link *link)
+{
+       link->ant.rssi_ant = 0;
+}
+
 static inline int rt2x00_get_link_ant_rssi_history(struct link *link,
                                                   enum antenna ant)
 {
@@ -385,6 +390,7 @@ struct rt2x00_intf {
        unsigned int delayed_flags;
 #define DELAYED_UPDATE_BEACON          0x00000001
 #define DELAYED_CONFIG_ERP             0x00000002
+#define DELAYED_LED_ASSOC              0x00000004
 };
 
 static inline struct rt2x00_intf* vif_to_intf(struct ieee80211_vif *vif)
@@ -533,8 +539,6 @@ struct rt2x00lib_ops {
                            struct link_qual *qual);
        void (*reset_tuner) (struct rt2x00_dev *rt2x00dev);
        void (*link_tuner) (struct rt2x00_dev *rt2x00dev);
-       void (*led_brightness) (struct led_classdev *led_cdev,
-                               enum led_brightness brightness);
 
        /*
         * TX control handlers
@@ -560,6 +564,8 @@ struct rt2x00lib_ops {
        /*
         * Configuration handlers.
         */
+       void (*config_filter) (struct rt2x00_dev *rt2x00dev,
+                              const unsigned int filter_flags);
        void (*config_intf) (struct rt2x00_dev *rt2x00dev,
                             struct rt2x00_intf *intf,
                             struct rt2x00intf_conf *conf,
@@ -568,8 +574,8 @@ struct rt2x00lib_ops {
 #define CONFIG_UPDATE_MAC              ( 1 << 2 )
 #define CONFIG_UPDATE_BSSID            ( 1 << 3 )
 
-       int (*config_erp) (struct rt2x00_dev *rt2x00dev,
-                          struct rt2x00lib_erp *erp);
+       void (*config_erp) (struct rt2x00_dev *rt2x00dev,
+                           struct rt2x00lib_erp *erp);
        void (*config) (struct rt2x00_dev *rt2x00dev,
                        struct rt2x00lib_conf *libconf,
                        const unsigned int flags);
@@ -624,6 +630,7 @@ enum rt2x00_flags {
        DRIVER_REQUIRE_FIRMWARE,
        DRIVER_REQUIRE_BEACON_GUARD,
        DRIVER_REQUIRE_ATIM_QUEUE,
+       DRIVER_REQUIRE_SCHEDULED,
 
        /*
         * Driver configuration
@@ -671,6 +678,9 @@ struct rt2x00_dev {
         * This will only be compiled in when required.
         */
 #ifdef CONFIG_RT2X00_LIB_RFKILL
+       unsigned long rfkill_state;
+#define RFKILL_STATE_ALLOCATED         1
+#define RFKILL_STATE_REGISTERED                2
        struct rfkill *rfkill;
        struct input_polled_dev *poll_dev;
 #endif /* CONFIG_RT2X00_LIB_RFKILL */
@@ -688,8 +698,6 @@ struct rt2x00_dev {
         * by mac8011 or the kernel.
         */
 #ifdef CONFIG_RT2X00_LIB_LEDS
-       unsigned int led_flags;
-       struct rt2x00_trigger trigger_qual;
        struct rt2x00_led led_radio;
        struct rt2x00_led led_assoc;
        struct rt2x00_led led_qual;
@@ -984,6 +992,10 @@ int rt2x00mac_config(struct ieee80211_hw *hw, struct ieee80211_conf *conf);
 int rt2x00mac_config_interface(struct ieee80211_hw *hw,
                               struct ieee80211_vif *vif,
                               struct ieee80211_if_conf *conf);
+void rt2x00mac_configure_filter(struct ieee80211_hw *hw,
+                               unsigned int changed_flags,
+                               unsigned int *total_flags,
+                               int mc_count, struct dev_addr_list *mc_list);
 int rt2x00mac_get_stats(struct ieee80211_hw *hw,
                        struct ieee80211_low_level_stats *stats);
 int rt2x00mac_get_tx_stats(struct ieee80211_hw *hw,