.. revert out a local change that I hadn't yet completely finished fleshing
out and testing. sorry!
This commit is contained in:
parent
5efbb6f6e6
commit
57c81ebaa2
@ -27,10 +27,7 @@
|
|||||||
#ifndef __IEEE80211_ALQ_H__
|
#ifndef __IEEE80211_ALQ_H__
|
||||||
#define __IEEE80211_ALQ_H__
|
#define __IEEE80211_ALQ_H__
|
||||||
|
|
||||||
/*
|
#define IEEE80211_ALQ_PAYLOAD_SIZE 24
|
||||||
* 64 byte ieee80211_alq_rec size.
|
|
||||||
*/
|
|
||||||
#define IEEE80211_ALQ_PAYLOAD_SIZE 52
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* timestamp
|
* timestamp
|
||||||
@ -53,124 +50,4 @@ struct ieee80211_alq_rec {
|
|||||||
extern void ieee80211_alq_log(struct ieee80211vap *vap, uint8_t op,
|
extern void ieee80211_alq_log(struct ieee80211vap *vap, uint8_t op,
|
||||||
u_char *p, int l);
|
u_char *p, int l);
|
||||||
|
|
||||||
/*
|
|
||||||
* Debugging entry points
|
|
||||||
*/
|
|
||||||
|
|
||||||
/*
|
|
||||||
* This should be called by the driver on each RX frame.
|
|
||||||
*/
|
|
||||||
#define IEEE80211_ALQ_OP_RXFRAME 0x1
|
|
||||||
#define IEEE80211_ALQ_OP_TXFRAME 0x2
|
|
||||||
#define IEEE80211_ALQ_OP_TXCOMPLETE 0x3
|
|
||||||
#define IEEE80211_ALQ_OP_TX_BAW 0x4
|
|
||||||
|
|
||||||
/* Driver-specific - for descriptor contents, etc */
|
|
||||||
#define IEEE80211_ALQ_OP_RX_DESC 0x81
|
|
||||||
#define IEEE80211_ALQ_OP_TX_DESC 0x82
|
|
||||||
#define IEEE80211_ALQ_OP_TX_DESCCOMP 0x83
|
|
||||||
|
|
||||||
struct ieee80211_alq_rx_frame_struct {
|
|
||||||
uint64_t tsf; /* Network order */
|
|
||||||
uintptr_t bf; /* Driver-specific buffer ptr */
|
|
||||||
uint8_t rxq; /* Driver-specific RX queue */
|
|
||||||
uint8_t pad[3]; /* Pad alignment */
|
|
||||||
struct ieee80211_qosframe wh; /* XXX 4 bytes, QoS? */
|
|
||||||
};
|
|
||||||
|
|
||||||
struct ieee80211_alq_tx_frame {
|
|
||||||
uint64_t tsf; /* Network order */
|
|
||||||
uintptr_t bf; /* Driver-specific buffer ptr */
|
|
||||||
uint32_t tx_flags; /* Driver-specific TX flags */
|
|
||||||
uint8_t txq; /* Driver-specific TX queue */
|
|
||||||
uint8_t pad[3]; /* Pad alignment */
|
|
||||||
struct ieee80211_qosframe wh; /* XXX 4 bytes, QoS? */
|
|
||||||
};
|
|
||||||
|
|
||||||
struct ieee80211_alq_tx_frame_complete {
|
|
||||||
uint64_t tsf; /* Network order */
|
|
||||||
uintptr_t bf; /* Driver-specific buffer ptr */
|
|
||||||
uint8_t txq; /* Driver-specific TX queue */
|
|
||||||
uint8_t txstatus; /* driver-specific TX status */
|
|
||||||
uint8_t pad[2]; /* Pad alignment */
|
|
||||||
struct ieee80211_qosframe wh; /* XXX 4 bytes, QoS? */
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
/*
|
|
||||||
* This is used for frame RX.
|
|
||||||
*/
|
|
||||||
static inline void
|
|
||||||
ieee80211_alq_rx_frame(struct ieee80211vap *vap,
|
|
||||||
struct ieee80211_frame *wh, uint64_t tsf, void *bf, uint8_t rxq)
|
|
||||||
{
|
|
||||||
struct ieee80211_alq_rx_frame_struct rf;
|
|
||||||
|
|
||||||
memset(&rf, 0, sizeof(rf));
|
|
||||||
rf.tsf = htole64(tsf);
|
|
||||||
rf.bf = (uintptr_t) bf;
|
|
||||||
rf.rxq = rxq;
|
|
||||||
memcpy(&rf.wh, wh, sizeof(struct ieee80211_qosframe));
|
|
||||||
ieee80211_alq_log(vap, IEEE80211_ALQ_OP_RXFRAME, (char *) &rf,
|
|
||||||
sizeof(rf));
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Frame TX scheduling
|
|
||||||
*/
|
|
||||||
static inline void
|
|
||||||
ieee80211_alq_tx_frame(struct ieee80211vap *vap,
|
|
||||||
struct ieee80211_frame *wh, uint64_t tsf, void *bf, uint8_t txq,
|
|
||||||
uint32_t tx_flags)
|
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Frame TX completion
|
|
||||||
*/
|
|
||||||
static inline void
|
|
||||||
ieee80211_alq_tx_frame_comp(struct ieee80211vap *vap,
|
|
||||||
struct ieee80211_frame *wh, uint64_t tsf, void *bf, uint8_t txq,
|
|
||||||
uint8_t tx_status)
|
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
struct ieee80211_alq_tx_baw_note_struct {
|
|
||||||
uintptr_t bf;
|
|
||||||
uint8_t tid;
|
|
||||||
uint8_t what;
|
|
||||||
uint16_t baw;
|
|
||||||
uint16_t wnd;
|
|
||||||
uint16_t new_baw;
|
|
||||||
};
|
|
||||||
|
|
||||||
/*
|
|
||||||
* TX BAW noting - add, remove, etc
|
|
||||||
*/
|
|
||||||
|
|
||||||
#define IEEE80211_ALQ_TX_BAW_ADD 0x1
|
|
||||||
#define IEEE80211_ALQ_TX_BAW_COMPLETE 0x2
|
|
||||||
|
|
||||||
static inline void
|
|
||||||
ieee80211_alq_tx_baw_note(struct ieee80211vap *vap,
|
|
||||||
struct ieee80211_frame *wh, void *bf, uint8_t tid, uint8_t what,
|
|
||||||
uint16_t baw, uint16_t wnd, uint16_t new_baw)
|
|
||||||
{
|
|
||||||
struct ieee80211_alq_tx_baw_note_struct tb;
|
|
||||||
|
|
||||||
memset(&tb, 0, sizeof(tb));
|
|
||||||
|
|
||||||
tb.bf = (uintptr_t) bf;
|
|
||||||
tb.tid = tid;
|
|
||||||
tb.what = what;
|
|
||||||
tb.baw = htons(baw);
|
|
||||||
tb.wnd = htons(wnd);
|
|
||||||
tb.new_baw = htons(new_baw);
|
|
||||||
|
|
||||||
ieee80211_alq_log(vap, IEEE80211_ALQ_OP_TX_BAW, (char *) &tb,
|
|
||||||
sizeof(tb));
|
|
||||||
}
|
|
||||||
|
|
||||||
#endif /* __IEEE80211_ALQ_H__ */
|
#endif /* __IEEE80211_ALQ_H__ */
|
||||||
|
Loading…
Reference in New Issue
Block a user