diff options
author | Felix Fietkau <nbd@openwrt.org> | 2005-12-28 13:22:51 +0000 |
---|---|---|
committer | Felix Fietkau <nbd@openwrt.org> | 2005-12-28 13:22:51 +0000 |
commit | a50279c334808ccb3bd182bf7139ddeb90c813c3 (patch) | |
tree | 1ec5c42825b0affec4a6d339f33ccb31bff72bb6 /openwrt/target/linux/package/ieee80211-dscape/src/wme.h | |
parent | 354f26489484e71a07d6e8ec1b93748e74ae30d5 (diff) | |
download | mtk-20170518-a50279c334808ccb3bd182bf7139ddeb90c813c3.zip mtk-20170518-a50279c334808ccb3bd182bf7139ddeb90c813c3.tar.gz mtk-20170518-a50279c334808ccb3bd182bf7139ddeb90c813c3.tar.bz2 |
add devicescape 802.11 stack
SVN-Revision: 2791
Diffstat (limited to 'openwrt/target/linux/package/ieee80211-dscape/src/wme.h')
-rw-r--r-- | openwrt/target/linux/package/ieee80211-dscape/src/wme.h | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/openwrt/target/linux/package/ieee80211-dscape/src/wme.h b/openwrt/target/linux/package/ieee80211-dscape/src/wme.h new file mode 100644 index 0000000..9b27947 --- /dev/null +++ b/openwrt/target/linux/package/ieee80211-dscape/src/wme.h @@ -0,0 +1,53 @@ +/* + * IEEE 802.11 driver (80211.o) - QoS datatypes + * Copyright 2004, Instant802 Networks, Inc. + * Copyright 2005, Devicescape Software, Inc. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + */ + +#include <asm/byteorder.h> +#include <net/pkt_sched.h> + +#define QOS_CONTROL_LEN 2 + +#define QOS_CONTROL_ACK_POLICY_NORMAL 0 +#define QOS_CONTROL_ACK_POLICY_NOACK 1 + +#define QOS_CONTROL_TID_MASK 0x0f +#define QOS_CONTROL_ACK_POLICY_SHIFT 5 + +/* This bit field structure should not be used; it can cause compiler to + * generate unaligned accesses and inefficient code. */ +struct qos_control { +#if defined(__LITTLE_ENDIAN_BITFIELD) + u8 tag1d:3, /* bits 0-2 */ + reserved1:1, + eosp:1, + ack_policy:2, + reserved2:1; +#elif defined (__BIG_ENDIAN_BITFIELD) + u8 reserved2:1, + ack_policy:2, + eosp:1, + reserved1:1, + tag1d:3; /* bits 0-2 */ +#else +#error "Please fix <asm/byteorder.h>" +#endif + u8 reserved; +} __attribute__ ((packed)); + +ieee80211_txrx_result +ieee80211_rx_h_parse_qos(struct ieee80211_txrx_data *rx); + +ieee80211_txrx_result +ieee80211_rx_h_remove_qos_control(struct ieee80211_txrx_data *rx); + +void ieee80211_install_qdisc(struct net_device *dev); + +int ieee80211_wme_register(void); +void ieee80211_wme_unregister(void); + |