|
@@ -1571,6 +1571,144 @@ typedef enum HTT_PPDU_STATS_RESP_PPDU_TYPE HTT_PPDU_STATS_RESP_PPDU_TYPE;
|
|
|
((_var) |= ((_val) << HTT_PPDU_STATS_USER_RATE_TLV_RESP_PPDU_TYPE_S)); \
|
|
|
} while (0)
|
|
|
|
|
|
+#define HTT_PPDU_STATS_USER_RATE_TLV_RU_FORMAT_M 0x0000f000
|
|
|
+#define HTT_PPDU_STATS_USER_RATE_TLV_RU_FORMAT_S 12
|
|
|
+
|
|
|
+#define HTT_PPDU_STATS_USER_RATE_TLV_RU_FORMAT_GET(_var) \
|
|
|
+ (((_var) & HTT_PPDU_STATS_USER_RATE_TLV_RU_FORMAT_M) >> \
|
|
|
+ HTT_PPDU_STATS_USER_RATE_TLV_RU_FORMAT_S)
|
|
|
+
|
|
|
+#define HTT_PPDU_STATS_USER_RATE_TLV_RU_FORMAT_SET(_var, _val) \
|
|
|
+ do { \
|
|
|
+ HTT_CHECK_SET_VAL(HTT_PPDU_STATS_USER_RATE_TLV_RU_FORMAT, _val); \
|
|
|
+ ((_var) |= ((_val) << HTT_PPDU_STATS_USER_RATE_TLV_RU_FORMAT_S)); \
|
|
|
+ } while (0)
|
|
|
+
|
|
|
+
|
|
|
+#define HTT_PPDU_STATS_USER_RATE_TLV_RU_END_M 0x0000ffff
|
|
|
+#define HTT_PPDU_STATS_USER_RATE_TLV_RU_END_S 0
|
|
|
+
|
|
|
+#define HTT_PPDU_STATS_USER_RATE_TLV_RU_END_GET(_var) \
|
|
|
+ (((_var) & HTT_PPDU_STATS_USER_RATE_TLV_RU_END_M) >> \
|
|
|
+ HTT_PPDU_STATS_USER_RATE_TLV_RU_END_S)
|
|
|
+
|
|
|
+#define HTT_PPDU_STATS_USER_RATE_TLV_RU_END_SET(_var, _val) \
|
|
|
+ do { \
|
|
|
+ HTT_CHECK_SET_VAL(HTT_PPDU_STATS_USER_RATE_TLV_RU_END, _val); \
|
|
|
+ ((_var) |= ((_val) << HTT_PPDU_STATS_USER_RATE_TLV_RU_END_S)); \
|
|
|
+ } while (0)
|
|
|
+
|
|
|
+
|
|
|
+#define HTT_PPDU_STATS_USER_RATE_TLV_RU_START_M 0xffff0000
|
|
|
+#define HTT_PPDU_STATS_USER_RATE_TLV_RU_START_S 16
|
|
|
+
|
|
|
+#define HTT_PPDU_STATS_USER_RATE_TLV_RU_START_GET(_var) \
|
|
|
+ (((_var) & HTT_PPDU_STATS_USER_RATE_TLV_RU_START_M) >> \
|
|
|
+ HTT_PPDU_STATS_USER_RATE_TLV_RU_START_S)
|
|
|
+
|
|
|
+#define HTT_PPDU_STATS_USER_RATE_TLV_RU_START_SET(_var, _val) \
|
|
|
+ do { \
|
|
|
+ HTT_CHECK_SET_VAL(HTT_PPDU_STATS_USER_RATE_TLV_RU_START, _val); \
|
|
|
+ ((_var) |= ((_val) << HTT_PPDU_STATS_USER_RATE_TLV_RU_START_S)); \
|
|
|
+ } while (0)
|
|
|
+
|
|
|
+
|
|
|
+#define HTT_PPDU_STATS_USER_RATE_TLV_RU_INDEX_M 0x0000ffff
|
|
|
+#define HTT_PPDU_STATS_USER_RATE_TLV_RU_INDEX_S 0
|
|
|
+
|
|
|
+#define HTT_PPDU_STATS_USER_RATE_TLV_RU_INDEX_GET(_var) \
|
|
|
+ (((_var) & HTT_PPDU_STATS_USER_RATE_TLV_RU_INDEX_M) >> \
|
|
|
+ HTT_PPDU_STATS_USER_RATE_TLV_RU_INDEX_S)
|
|
|
+
|
|
|
+#define HTT_PPDU_STATS_USER_RATE_TLV_RU_INDEX_SET(_var, _val) \
|
|
|
+ do { \
|
|
|
+ HTT_CHECK_SET_VAL(HTT_PPDU_STATS_USER_RATE_TLV_RU_INDEX, _val); \
|
|
|
+ ((_var) |= ((_val) << HTT_PPDU_STATS_USER_RATE_TLV_RU_INDEX_S)); \
|
|
|
+ } while (0)
|
|
|
+
|
|
|
+
|
|
|
+#define HTT_PPDU_STATS_USER_RATE_TLV_RU_SIZE_M 0xffff0000
|
|
|
+#define HTT_PPDU_STATS_USER_RATE_TLV_RU_SIZE_S 16
|
|
|
+
|
|
|
+#define HTT_PPDU_STATS_USER_RATE_TLV_RU_SIZE_GET(_var) \
|
|
|
+ (((_var) & HTT_PPDU_STATS_USER_RATE_TLV_RU_SIZE_M) >> \
|
|
|
+ HTT_PPDU_STATS_USER_RATE_TLV_RU_SIZE_S)
|
|
|
+
|
|
|
+#define HTT_PPDU_STATS_USER_RATE_TLV_RU_SIZE_SET(_var, _val) \
|
|
|
+ do { \
|
|
|
+ HTT_CHECK_SET_VAL(HTT_PPDU_STATS_USER_RATE_TLV_RU_SIZE, _val); \
|
|
|
+ ((_var) |= ((_val) << HTT_PPDU_STATS_USER_RATE_TLV_RU_SIZE_S)); \
|
|
|
+ } while (0)
|
|
|
+
|
|
|
+
|
|
|
+#define HTT_PPDU_STATS_USER_RATE_TLV_RESP_RU_END_M 0x0000ffff
|
|
|
+#define HTT_PPDU_STATS_USER_RATE_TLV_RESP_RU_END_S 0
|
|
|
+
|
|
|
+#define HTT_PPDU_STATS_USER_RATE_TLV_RESP_RU_END_GET(_var) \
|
|
|
+ (((_var) & HTT_PPDU_STATS_USER_RATE_TLV_RESP_RU_END_M) >> \
|
|
|
+ HTT_PPDU_STATS_USER_RATE_TLV_RESP_RU_END_S)
|
|
|
+
|
|
|
+#define HTT_PPDU_STATS_USER_RATE_TLV_RESP_RU_END_SET(_var, _val) \
|
|
|
+ do { \
|
|
|
+ HTT_CHECK_SET_VAL(HTT_PPDU_STATS_USER_RATE_TLV_RESP_RU_END, _val); \
|
|
|
+ ((_var) |= ((_val) << HTT_PPDU_STATS_USER_RATE_TLV_RESP_RU_END_S)); \
|
|
|
+ } while (0)
|
|
|
+
|
|
|
+
|
|
|
+#define HTT_PPDU_STATS_USER_RATE_TLV_RESP_RU_START_M 0xffff0000
|
|
|
+#define HTT_PPDU_STATS_USER_RATE_TLV_RESP_RU_START_S 16
|
|
|
+
|
|
|
+#define HTT_PPDU_STATS_USER_RATE_TLV_RESP_RU_START_GET(_var) \
|
|
|
+ (((_var) & HTT_PPDU_STATS_USER_RATE_TLV_RESP_RU_START_M) >> \
|
|
|
+ HTT_PPDU_STATS_USER_RATE_TLV_RESP_RU_START_S)
|
|
|
+
|
|
|
+#define HTT_PPDU_STATS_USER_RATE_TLV_RESP_RU_START_SET(_var, _val) \
|
|
|
+ do { \
|
|
|
+ HTT_CHECK_SET_VAL(HTT_PPDU_STATS_USER_RATE_TLV_RESP_RU_START, _val); \
|
|
|
+ ((_var) |= ((_val) << HTT_PPDU_STATS_USER_RATE_TLV_RESP_RU_START_S)); \
|
|
|
+ } while (0)
|
|
|
+
|
|
|
+
|
|
|
+#define HTT_PPDU_STATS_USER_RATE_TLV_RESP_RU_INDEX_M 0x0000ffff
|
|
|
+#define HTT_PPDU_STATS_USER_RATE_TLV_RESP_RU_INDEX_S 0
|
|
|
+
|
|
|
+#define HTT_PPDU_STATS_USER_RATE_TLV_RESP_RU_INDEX_GET(_var) \
|
|
|
+ (((_var) & HTT_PPDU_STATS_USER_RATE_TLV_RESP_RU_INDEX_M) >> \
|
|
|
+ HTT_PPDU_STATS_USER_RATE_TLV_RESP_RU_INDEX_S)
|
|
|
+
|
|
|
+#define HTT_PPDU_STATS_USER_RATE_TLV_RESP_RU_INDEX_SET(_var, _val) \
|
|
|
+ do { \
|
|
|
+ HTT_CHECK_SET_VAL(HTT_PPDU_STATS_USER_RATE_TLV_RESP_RU_INDEX, _val); \
|
|
|
+ ((_var) |= ((_val) << HTT_PPDU_STATS_USER_RATE_TLV_RESP_RU_INDEX_S)); \
|
|
|
+ } while (0)
|
|
|
+
|
|
|
+
|
|
|
+#define HTT_PPDU_STATS_USER_RATE_TLV_RESP_RU_SIZE_M 0xffff0000
|
|
|
+#define HTT_PPDU_STATS_USER_RATE_TLV_RESP_RU_SIZE_S 16
|
|
|
+
|
|
|
+#define HTT_PPDU_STATS_USER_RATE_TLV_RESP_RU_SIZE_GET(_var) \
|
|
|
+ (((_var) & HTT_PPDU_STATS_USER_RATE_TLV_RESP_RU_SIZE_M) >> \
|
|
|
+ HTT_PPDU_STATS_USER_RATE_TLV_RESP_RU_SIZE_S)
|
|
|
+
|
|
|
+#define HTT_PPDU_STATS_USER_RATE_TLV_RESP_RU_SIZE_SET(_var, _val) \
|
|
|
+ do { \
|
|
|
+ HTT_CHECK_SET_VAL(HTT_PPDU_STATS_USER_RATE_TLV_RESP_RU_SIZE, _val); \
|
|
|
+ ((_var) |= ((_val) << HTT_PPDU_STATS_USER_RATE_TLV_RESP_RU_SIZE_S)); \
|
|
|
+ } while (0)
|
|
|
+
|
|
|
+#define HTT_PPDU_STATS_USER_RATE_TLV_PUNC_PATTERN_BITMAP_M 0x0000ffff
|
|
|
+#define HTT_PPDU_STATS_USER_RATE_TLV_PUNC_PATTERN_BITMAP_S 0
|
|
|
+
|
|
|
+#define HTT_PPDU_STATS_USER_RATE_TLV_PUNC_PATTERN_BITMAP_GET(_var) \
|
|
|
+ (((_var) & HTT_PPDU_STATS_USER_RATE_TLV_PUNC_PATTERN_BITMAP_M) >> \
|
|
|
+ HTT_PPDU_STATS_USER_RATE_TLV_PUNC_PATTERN_BITMAP_S)
|
|
|
+
|
|
|
+#define HTT_PPDU_STATS_USER_RATE_TLV_PUNC_PATTERN_BITMAP_SET (_var , _val) \
|
|
|
+ do { \
|
|
|
+ HTT_CHECK_SET_VAL(HTT_PPDU_STATS_USER_RATE_TLV_PUNC_PATTERN_BITMAP, _val); \
|
|
|
+ ((_var) |= ((_val) << HTT_PPDU_STATS_USER_RATE_TLV_PUNC_PATTERN_BITMAP_S)); \
|
|
|
+ } while (0)
|
|
|
+
|
|
|
typedef enum HTT_PPDU_STATS_RU_SIZE {
|
|
|
HTT_PPDU_STATS_RU_26,
|
|
|
HTT_PPDU_STATS_RU_52,
|
|
@@ -1754,10 +1892,11 @@ typedef struct {
|
|
|
};
|
|
|
|
|
|
/*
|
|
|
- * This is an unused word that can be safely renamed / used
|
|
|
- * by any future feature.
|
|
|
+ * BIT [15:0] :- Punctured BW bitmap pattern to indicate which BWs are
|
|
|
+ * punctured.
|
|
|
*/
|
|
|
- A_UINT32 reserved4;
|
|
|
+ A_UINT32 punc_pattern_bitmap: 16,
|
|
|
+ reserved4: 16;
|
|
|
} htt_ppdu_stats_user_rate_tlv;
|
|
|
|
|
|
#define HTT_PPDU_STATS_USR_RATE_VALID_M 0x80000000
|