summaryrefslogtreecommitdiffstats
path: root/sys/dev/ath/ath_hal
diff options
context:
space:
mode:
authoradrian <adrian@FreeBSD.org>2012-07-27 12:08:49 +0000
committeradrian <adrian@FreeBSD.org>2012-07-27 12:08:49 +0000
commitb409f92b1f3583afa5926905eb8be2832c2ce02d (patch)
tree41b0b9969ff9d226a5a119d6783c76be1e90857b /sys/dev/ath/ath_hal
parentc6bb14ece4eeb295a9073fb6eca01cc0b02480e1 (diff)
downloadFreeBSD-src-b409f92b1f3583afa5926905eb8be2832c2ce02d.zip
FreeBSD-src-b409f92b1f3583afa5926905eb8be2832c2ce02d.tar.gz
Tidy up the TX status fields a little and add a couple new flags.
* shuffle things around so things fall on natural padding boundaries; * add a couple of new flags to specify LDPC and whether to switch to the low power RX chain configuration after this TX has completed. Obtained from: Qualcomm Atheros
Diffstat (limited to 'sys/dev/ath/ath_hal')
-rw-r--r--sys/dev/ath/ath_hal/ah_desc.h23
1 files changed, 14 insertions, 9 deletions
diff --git a/sys/dev/ath/ath_hal/ah_desc.h b/sys/dev/ath/ath_hal/ah_desc.h
index 1203ebb..542453f 100644
--- a/sys/dev/ath/ath_hal/ah_desc.h
+++ b/sys/dev/ath/ath_hal/ah_desc.h
@@ -57,16 +57,19 @@ struct ath_tx_status {
uint8_t ts_finaltsi; /* final transmit series index */
#ifdef AH_SUPPORT_AR5416
/* 802.11n status */
- uint8_t ts_flags; /* misc flags */
- int8_t ts_rssi_ctl[3]; /* tx ack RSSI [ctl, chain 0-2] */
- int8_t ts_rssi_ext[3]; /* tx ack RSSI [ext, chain 0-2] */
-/* #define ts_rssi ts_rssi_combined */
- uint32_t ts_ba_low; /* blockack bitmap low */
- uint32_t ts_ba_high; /* blockack bitmap high */
+ uint8_t ts_flags; /* misc flags */
+ uint8_t ts_queue_id; /* AR9300: TX queue id */
+ uint8_t ts_desc_id; /* AR9300: TX descriptor id */
uint8_t ts_tid; /* TID */
- uint32_t ts_evm0; /* evm bytes */
- uint32_t ts_evm1;
- uint32_t ts_evm2;
+/* #define ts_rssi ts_rssi_combined */
+ uint32_t ts_ba_low; /* blockack bitmap low */
+ uint32_t ts_ba_high; /* blockack bitmap high */
+ uint32_t ts_evm0; /* evm bytes */
+ uint32_t ts_evm1;
+ uint32_t ts_evm2;
+ int8_t ts_rssi_ctl[3]; /* tx ack RSSI [ctl, chain 0-2] */
+ int8_t ts_rssi_ext[3]; /* tx ack RSSI [ext, chain 0-2] */
+ uint8_t ts_pad[2];
#endif /* AH_SUPPORT_AR5416 */
};
@@ -243,6 +246,8 @@ struct ath_desc_status {
#define HAL_TXDESC_EXT_ONLY 0x0080 /* send on ext channel only (11n) */
#define HAL_TXDESC_EXT_AND_CTL 0x0100 /* send on ext + ctl channels (11n) */
#define HAL_TXDESC_VMF 0x0200 /* virtual more frag */
+#define HAL_TXDESC_LOWRXCHAIN 0x0400 /* switch to low RX chain */
+#define HAL_TXDESC_LDPC 0x1000
/* flags passed to rx descriptor setup methods */
#define HAL_RXDESC_INTREQ 0x0020 /* enable per-descriptor interrupt */
OpenPOWER on IntegriCloud