diff --git a/hal/wifi3.0/li/hal_li_api.h b/hal/wifi3.0/li/hal_li_api.h index 49b6182a0b..44cbfc53d8 100644 --- a/hal/wifi3.0/li/hal_li_api.h +++ b/hal/wifi3.0/li/hal_li_api.h @@ -102,7 +102,6 @@ void hal_tx_init_data_ring_li(hal_soc_handle_t hal_soc_hdl, */ void hal_hw_txrx_default_ops_attach_li(struct hal_soc *soc); -void hal_rx_wbm_err_info_get_generic_li(void *wbm_desc, void *wbm_er_info1); uint32_t hal_rx_wbm_err_src_get_li(hal_ring_desc_t ring_desc); uint8_t hal_rx_ret_buf_manager_get_li(hal_ring_desc_t ring_desc); diff --git a/hal/wifi3.0/li/hal_li_generic_api.c b/hal/wifi3.0/li/hal_li_generic_api.c index 32c6a2056c..bbb8d1157b 100644 --- a/hal/wifi3.0/li/hal_li_generic_api.c +++ b/hal/wifi3.0/li/hal_li_generic_api.c @@ -727,50 +727,6 @@ uint32_t hal_rx_wbm_err_src_get_li(hal_ring_desc_t ring_desc) return HAL_WBM2SW_RELEASE_SRC_GET(ring_desc); } -#define HAL_RX_WBM_REO_PUSH_REASON_GET(wbm_desc) \ - (_HAL_MS((*_OFFSET_TO_WORD_PTR(wbm_desc, \ - WBM_RELEASE_RING_2_REO_PUSH_REASON_OFFSET)), \ - WBM_RELEASE_RING_2_REO_PUSH_REASON_MASK, \ - WBM_RELEASE_RING_2_REO_PUSH_REASON_LSB)) - -#define HAL_RX_WBM_REO_ERROR_CODE_GET(wbm_desc) \ - (_HAL_MS((*_OFFSET_TO_WORD_PTR(wbm_desc, \ - WBM_RELEASE_RING_2_REO_ERROR_CODE_OFFSET)), \ - WBM_RELEASE_RING_2_REO_ERROR_CODE_MASK, \ - WBM_RELEASE_RING_2_REO_ERROR_CODE_LSB)) - -#define HAL_RX_WBM_RXDMA_PUSH_REASON_GET(wbm_desc) \ - (((*(((uint32_t *)wbm_desc) + \ - (WBM_RELEASE_RING_2_RXDMA_PUSH_REASON_OFFSET >> 2))) & \ - WBM_RELEASE_RING_2_RXDMA_PUSH_REASON_MASK) >> \ - WBM_RELEASE_RING_2_RXDMA_PUSH_REASON_LSB) - -#define HAL_RX_WBM_RXDMA_ERROR_CODE_GET(wbm_desc) \ - (((*(((uint32_t *)wbm_desc) + \ - (WBM_RELEASE_RING_2_RXDMA_ERROR_CODE_OFFSET >> 2))) & \ - WBM_RELEASE_RING_2_RXDMA_ERROR_CODE_MASK) >> \ - WBM_RELEASE_RING_2_RXDMA_ERROR_CODE_LSB) - -/** - * hal_rx_wbm_err_info_get_generic_li(): Retrieves WBM error code and reason and - * save it to hal_wbm_err_desc_info structure passed by caller - * @wbm_desc: wbm ring descriptor - * @wbm_er_info1: hal_wbm_err_desc_info structure, output parameter. - * Return: void - */ -void hal_rx_wbm_err_info_get_generic_li(void *wbm_desc, - void *wbm_er_info1) -{ - struct hal_wbm_err_desc_info *wbm_er_info = - (struct hal_wbm_err_desc_info *)wbm_er_info1; - - wbm_er_info->wbm_err_src = HAL_WBM2SW_RELEASE_SRC_GET(wbm_desc); - wbm_er_info->reo_psh_rsn = HAL_RX_WBM_REO_PUSH_REASON_GET(wbm_desc); - wbm_er_info->reo_err_code = HAL_RX_WBM_REO_ERROR_CODE_GET(wbm_desc); - wbm_er_info->rxdma_psh_rsn = HAL_RX_WBM_RXDMA_PUSH_REASON_GET(wbm_desc); - wbm_er_info->rxdma_err_code = HAL_RX_WBM_RXDMA_ERROR_CODE_GET(wbm_desc); -} - /** * hal_rx_ret_buf_manager_get_li() - Get return buffer manager from ring desc * @ring_desc: ring descriptor diff --git a/hal/wifi3.0/li/hal_li_generic_api.h b/hal/wifi3.0/li/hal_li_generic_api.h index 151aaf2a32..c82713f947 100644 --- a/hal/wifi3.0/li/hal_li_generic_api.h +++ b/hal/wifi3.0/li/hal_li_generic_api.h @@ -23,6 +23,50 @@ #include "hal_li_tx.h" #include "hal_li_rx.h" +#define HAL_RX_WBM_REO_PUSH_REASON_GET(wbm_desc) \ + (_HAL_MS((*_OFFSET_TO_WORD_PTR(wbm_desc, \ + WBM_RELEASE_RING_2_REO_PUSH_REASON_OFFSET)), \ + WBM_RELEASE_RING_2_REO_PUSH_REASON_MASK, \ + WBM_RELEASE_RING_2_REO_PUSH_REASON_LSB)) + +#define HAL_RX_WBM_REO_ERROR_CODE_GET(wbm_desc) \ + (_HAL_MS((*_OFFSET_TO_WORD_PTR(wbm_desc, \ + WBM_RELEASE_RING_2_REO_ERROR_CODE_OFFSET)), \ + WBM_RELEASE_RING_2_REO_ERROR_CODE_MASK, \ + WBM_RELEASE_RING_2_REO_ERROR_CODE_LSB)) + +#define HAL_RX_WBM_RXDMA_PUSH_REASON_GET(wbm_desc) \ + (((*(((uint32_t *)wbm_desc) + \ + (WBM_RELEASE_RING_2_RXDMA_PUSH_REASON_OFFSET >> 2))) & \ + WBM_RELEASE_RING_2_RXDMA_PUSH_REASON_MASK) >> \ + WBM_RELEASE_RING_2_RXDMA_PUSH_REASON_LSB) + +#define HAL_RX_WBM_RXDMA_ERROR_CODE_GET(wbm_desc) \ + (((*(((uint32_t *)wbm_desc) + \ + (WBM_RELEASE_RING_2_RXDMA_ERROR_CODE_OFFSET >> 2))) & \ + WBM_RELEASE_RING_2_RXDMA_ERROR_CODE_MASK) >> \ + WBM_RELEASE_RING_2_RXDMA_ERROR_CODE_LSB) + +/** + * hal_rx_wbm_err_info_get_generic_li(): Retrieves WBM error code and reason and + * save it to hal_wbm_err_desc_info structure passed by caller + * @wbm_desc: wbm ring descriptor + * @wbm_er_info1: hal_wbm_err_desc_info structure, output parameter. + * Return: void + */ +static inline void hal_rx_wbm_err_info_get_generic_li(void *wbm_desc, + void *wbm_er_info1) +{ + struct hal_wbm_err_desc_info *wbm_er_info = + (struct hal_wbm_err_desc_info *)wbm_er_info1; + + wbm_er_info->wbm_err_src = HAL_WBM2SW_RELEASE_SRC_GET(wbm_desc); + wbm_er_info->reo_psh_rsn = HAL_RX_WBM_REO_PUSH_REASON_GET(wbm_desc); + wbm_er_info->reo_err_code = HAL_RX_WBM_REO_ERROR_CODE_GET(wbm_desc); + wbm_er_info->rxdma_psh_rsn = HAL_RX_WBM_RXDMA_PUSH_REASON_GET(wbm_desc); + wbm_er_info->rxdma_err_code = HAL_RX_WBM_RXDMA_ERROR_CODE_GET(wbm_desc); +} + /** * hal_tx_comp_get_status() - TQM Release reason * @hal_desc: completion ring Tx status