From c27e15c6da17fa41de6938aca9a97eb190631ef8 Mon Sep 17 00:00:00 2001 From: Nandha Kishore Easwaran Date: Wed, 16 Feb 2022 16:51:24 +0530 Subject: [PATCH] qcacmn: Add 64 bit extraction macros for Tx Add 64 bit extraction macros for Tx since many monitor tlvs in QCN9224 use 64 bit offset and shift masks. Change-Id: Ibf910d876d2305ae8eb16955dab1ed2dd9d66290 --- hal/wifi3.0/hal_tx.h | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/hal/wifi3.0/hal_tx.h b/hal/wifi3.0/hal_tx.h index bdba892aa4..e025366ee0 100644 --- a/hal/wifi3.0/hal_tx.h +++ b/hal/wifi3.0/hal_tx.h @@ -52,6 +52,12 @@ #define HAL_SET_FLD_OFFSET(desc, block , field, offset) \ (*(uint32_t *) ((uint8_t *) desc + HAL_OFFSET(block, field) + (offset))) +#define HAL_SET_FLD_64(desc, block, field) \ + (*(uint64_t *)((uint8_t *)desc + HAL_OFFSET(block, field))) + +#define HAL_SET_FLD_OFFSET_64(desc, block, field, offset) \ + (*(uint64_t *)((uint8_t *)desc + HAL_OFFSET(block, field) + (offset))) + #define HAL_TX_DESC_SET_TLV_HDR(desc, tag, len) \ do { \ uint32_t temp = 0; \ @@ -80,6 +86,16 @@ do { \ #define HAL_TX_DESC_SUBBLOCK_GET(desc, block, sub, field) \ HAL_TX_MS(sub, field, HAL_SET_FLD(desc, block, sub)) +#define HAL_TX_DESC_GET_64(desc, block, field) \ + HAL_TX_MS(block, field, HAL_SET_FLD_64(desc, block, field)) + +#define HAL_TX_DESC_OFFSET_GET_64(desc, block, field, offset) \ + HAL_TX_MS(block, field, HAL_SET_FLD_OFFSET_64(desc, block, field,\ + offset)) + +#define HAL_TX_DESC_SUBBLOCK_GET_64(desc, block, sub, field) \ + HAL_TX_MS(sub, field, HAL_SET_FLD_64(desc, block, sub)) + #define HAL_TX_BUF_TYPE_BUFFER 0 #define HAL_TX_BUF_TYPE_EXT_DESC 1