wme.h 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. /*
  2. * IEEE 802.11 driver (80211.o) - QoS datatypes
  3. * Copyright 2004, Instant802 Networks, Inc.
  4. * Copyright 2005, Devicescape Software, Inc.
  5. *
  6. * This program is free software; you can redistribute it and/or modify
  7. * it under the terms of the GNU General Public License version 2 as
  8. * published by the Free Software Foundation.
  9. */
  10. #ifndef _WME_H
  11. #define _WME_H
  12. #include <linux/netdevice.h>
  13. #include "ieee80211_i.h"
  14. #define QOS_CONTROL_LEN 2
  15. #define QOS_CONTROL_ACK_POLICY_NORMAL 0
  16. #define QOS_CONTROL_ACK_POLICY_NOACK 1
  17. #define QOS_CONTROL_ACK_POLICY_SHIFT 5
  18. extern const int ieee802_1d_to_ac[8];
  19. #ifdef CONFIG_MAC80211_QOS
  20. void ieee80211_install_qdisc(struct net_device *dev);
  21. int ieee80211_qdisc_installed(struct net_device *dev);
  22. int ieee80211_ht_agg_queue_add(struct ieee80211_local *local,
  23. struct sta_info *sta, u16 tid);
  24. void ieee80211_ht_agg_queue_remove(struct ieee80211_local *local,
  25. struct sta_info *sta, u16 tid,
  26. u8 requeue);
  27. void ieee80211_requeue(struct ieee80211_local *local, int queue);
  28. int ieee80211_wme_register(void);
  29. void ieee80211_wme_unregister(void);
  30. #else
  31. static inline void ieee80211_install_qdisc(struct net_device *dev)
  32. {
  33. }
  34. static inline int ieee80211_qdisc_installed(struct net_device *dev)
  35. {
  36. return 0;
  37. }
  38. static inline int ieee80211_ht_agg_queue_add(struct ieee80211_local *local,
  39. struct sta_info *sta, u16 tid)
  40. {
  41. return -EAGAIN;
  42. }
  43. static inline void ieee80211_ht_agg_queue_remove(struct ieee80211_local *local,
  44. struct sta_info *sta, u16 tid,
  45. u8 requeue)
  46. {
  47. }
  48. static inline void ieee80211_requeue(struct ieee80211_local *local, int queue)
  49. {
  50. }
  51. static inline int ieee80211_wme_register(void)
  52. {
  53. return 0;
  54. }
  55. static inline void ieee80211_wme_unregister(void)
  56. {
  57. }
  58. #endif /* CONFIG_NET_SCHED */
  59. #endif /* _WME_H */