Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
[firefly-linux-kernel-4.4.55.git] / net / mac80211 / driver-ops.h
index 832acea4a5cba0c86d929eab66d06ba438b8af9c..169664c122e23cbe80f89016714bdcdfec24dc6e 100644 (file)
@@ -241,6 +241,22 @@ static inline u64 drv_prepare_multicast(struct ieee80211_local *local,
        return ret;
 }
 
+static inline void drv_set_multicast_list(struct ieee80211_local *local,
+                                         struct ieee80211_sub_if_data *sdata,
+                                         struct netdev_hw_addr_list *mc_list)
+{
+       bool allmulti = sdata->flags & IEEE80211_SDATA_ALLMULTI;
+
+       trace_drv_set_multicast_list(local, sdata, mc_list->count);
+
+       check_sdata_in_driver(sdata);
+
+       if (local->ops->set_multicast_list)
+               local->ops->set_multicast_list(&local->hw, &sdata->vif,
+                                              allmulti, mc_list);
+       trace_drv_return_void(local);
+}
+
 static inline void drv_configure_filter(struct ieee80211_local *local,
                                        unsigned int changed_flags,
                                        unsigned int *total_flags,
@@ -531,43 +547,6 @@ static inline void drv_sta_remove_debugfs(struct ieee80211_local *local,
                local->ops->sta_remove_debugfs(&local->hw, &sdata->vif,
                                               sta, dir);
 }
-
-static inline
-void drv_add_interface_debugfs(struct ieee80211_local *local,
-                              struct ieee80211_sub_if_data *sdata)
-{
-       might_sleep();
-
-       check_sdata_in_driver(sdata);
-
-       if (!local->ops->add_interface_debugfs)
-               return;
-
-       local->ops->add_interface_debugfs(&local->hw, &sdata->vif,
-                                         sdata->debugfs.dir);
-}
-
-static inline
-void drv_remove_interface_debugfs(struct ieee80211_local *local,
-                                 struct ieee80211_sub_if_data *sdata)
-{
-       might_sleep();
-
-       check_sdata_in_driver(sdata);
-
-       if (!local->ops->remove_interface_debugfs)
-               return;
-
-       local->ops->remove_interface_debugfs(&local->hw, &sdata->vif,
-                                            sdata->debugfs.dir);
-}
-#else
-static inline
-void drv_add_interface_debugfs(struct ieee80211_local *local,
-                              struct ieee80211_sub_if_data *sdata) {}
-static inline
-void drv_remove_interface_debugfs(struct ieee80211_local *local,
-                                 struct ieee80211_sub_if_data *sdata) {}
 #endif
 
 static inline __must_check
@@ -741,13 +720,14 @@ static inline void drv_rfkill_poll(struct ieee80211_local *local)
                local->ops->rfkill_poll(&local->hw);
 }
 
-static inline void drv_flush(struct ieee80211_local *local, bool drop)
+static inline void drv_flush(struct ieee80211_local *local,
+                            u32 queues, bool drop)
 {
        might_sleep();
 
-       trace_drv_flush(local, drop);
+       trace_drv_flush(local, queues, drop);
        if (local->ops->flush)
-               local->ops->flush(&local->hw, drop);
+               local->ops->flush(&local->hw, queues, drop);
        trace_drv_return_void(local);
 }