From 34675d10cfae033b8a19e8f731b6b79cae48b72a Mon Sep 17 00:00:00 2001 From: spuligil Date: Mon, 11 Jun 2018 17:02:40 -0700 Subject: [PATCH] fw-api: CL 4782452 - update fw common interface files Add HTT_T2H_MSG_TYPE_FLOW_POOL_RESIZE def Change-Id: I0cf249f9d14bb366c7898322ac764c889974882e CRs-Fixed: 1107600 --- fw/htt.h | 67 +++++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 66 insertions(+), 1 deletion(-) diff --git a/fw/htt.h b/fw/htt.h index d0beca2ff3b6..18aa1d9e273f 100644 --- a/fw/htt.h +++ b/fw/htt.h @@ -166,9 +166,10 @@ * 3.49 Add HTT_T2H_MSG_TYPE_MONITOR_MAC_HEADER_IND def * 3.50 Add learning_frame flag to htt_tx_msdu_desc_ext2_t * 3.51 Add SW peer ID and TID num to HTT TX WBM COMPLETION + * 3.52 Add HTT_T2H FLOW_POOL_RESIZE msg def */ #define HTT_CURRENT_VERSION_MAJOR 3 -#define HTT_CURRENT_VERSION_MINOR 51 +#define HTT_CURRENT_VERSION_MINOR 52 #define HTT_NUM_TX_FRAG_DESC 1024 @@ -5564,6 +5565,7 @@ enum htt_t2h_msg_type { HTT_T2H_MSG_TYPE_PEER_MAP_V2 = 0x1e, HTT_T2H_MSG_TYPE_PEER_UNMAP_V2 = 0x1f, HTT_T2H_MSG_TYPE_MONITOR_MAC_HEADER_IND = 0x20, + HTT_T2H_MSG_TYPE_FLOW_POOL_RESIZE = 0x21, HTT_T2H_MSG_TYPE_TEST, /* keep this last */ @@ -10474,5 +10476,68 @@ typedef struct { (((word) & HTT_T2H_MONITOR_MAC_HEADER_NUM_MPDU_M) >> \ HTT_T2H_MONITOR_MAC_HEADER_NUM_MPDU_S) +/** + * @brief HTT_T2H_MSG_TYPE_FLOW_POOL_RESIZE Message + * + * @details + * HTT_T2H_MSG_TYPE_FLOW_POOL_RESIZE message is sent by the target when + * the flow pool associated with the specified ID is resized + * + * The message would appear as follows: + * + * |31 24|23 16|15 8|7 0| + * |----------------+----------------+----------------+----------------| + * | flow Pool ID | reserved0 | Msg type | + * |-------------------------------------------------------------------| + * | reserved1 | flow pool new size | + * |-------------------------------------------------------------------| + * + * The message is interpreted as follows: + * b'0:7 - msg_type: This will be set to + * HTT_T2H_MSG_TYPE_FLOW_POOL_RESIZE + * + * b'8:15 - flow pool ID: Existing flow pool ID + * + * b'16:31 - flow pool new size: new pool size for exisiting flow pool ID + * + */ + +PREPACK struct htt_flow_pool_resize_t { + A_UINT32 msg_type:8, + reserved0:8, + flow_pool_id:16; + A_UINT32 flow_pool_new_size:16, + reserved1:16; +} POSTPACK; + +#define HTT_FLOW_POOL_RESIZE_SZ (sizeof(struct htt_flow_pool_resize_t)) + +#define HTT_FLOW_POOL_RESIZE_FLOW_POOL_ID_M 0xffff0000 +#define HTT_FLOW_POOL_RESIZE_FLOW_POOL_ID_S 16 + +#define HTT_FLOW_POOL_RESIZE_FLOW_POOL_NEW_SIZE_M 0x0000ffff +#define HTT_FLOW_POOL_RESIZE_FLOW_POOL_NEW_SIZE_S 0 + + +#define HTT_FLOW_POOL_RESIZE_FLOW_POOL_ID_GET(_var) \ + (((_var) & HTT_FLOW_POOL_RESIZE_FLOW_POOL_ID_M) >> \ + HTT_FLOW_POOL_RESIZE_FLOW_POOL_ID_S) + +#define HTT_FLOW_POOL_RESIZE_FLOW_POOL_ID_SET(_var, _val) \ + do { \ + HTT_CHECK_SET_VAL(HTT_FLOW_POOL_RESIZE_FLOW_POOL_ID, _val); \ + ((_var) |= ((_val) << HTT_FLOW_POOL_RESIZE_FLOW_POOL_ID_S)); \ + } while (0) + + +#define HTT_FLOW_POOL_RESIZE_FLOW_POOL_NEW_SIZE_GET(_var) \ + (((_var) & HTT_FLOW_POOL_RESIZE_FLOW_POOL_NEW_SIZE_M) >> \ + HTT_FLOW_POOL_RESIZE_FLOW_POOL_NEW_SIZE_S) + +#define HTT_FLOW_POOL_RESIZE_FLOW_POOL_NEW_SIZE_SET(_var, _val) \ + do { \ + HTT_CHECK_SET_VAL(HTT_FLOW_POOL_RESIZE_FLOW_POOL_NEW_SIZE, _val); \ + ((_var) |= ((_val) << HTT_FLOW_POOL_RESIZE_FLOW_POOL_NEW_SIZE_S)); \ + } while (0) #endif