
Implement hal_rx_msdu_end_dat API based on the chipset as the macro to retrieve da_is_valid value is chipset dependent. Change-Id: I79f06eaa2576e7516c21f963b2c149aac7f62c64 CRs-Fixed: 2522133
90 行
3.4 KiB
C
90 行
3.4 KiB
C
/*
|
|
* Copyright (c) 2019 The Linux Foundation. All rights reserved.
|
|
*
|
|
* Permission to use, copy, modify, and/or distribute this software for
|
|
* any purpose with or without fee is hereby granted, provided that the
|
|
* above copyright notice and this permission notice appear in all
|
|
* copies.
|
|
*
|
|
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
|
|
* WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
|
|
* WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
|
|
* AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
|
|
* DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
|
|
* PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
|
|
* TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
* PERFORMANCE OF THIS SOFTWARE.
|
|
*/
|
|
|
|
#define HAL_RX_MPDU_GET_SEQUENCE_NUMBER(_rx_mpdu_info) \
|
|
(_HAL_MS((*_OFFSET_TO_WORD_PTR(_rx_mpdu_info, \
|
|
RX_MPDU_INFO_11_MPDU_SEQUENCE_NUMBER_OFFSET)), \
|
|
RX_MPDU_INFO_11_MPDU_SEQUENCE_NUMBER_MASK, \
|
|
RX_MPDU_INFO_11_MPDU_SEQUENCE_NUMBER_LSB))
|
|
|
|
#define HAL_RX_MSDU_END_DA_IS_MCBC_GET(_rx_msdu_end) \
|
|
(_HAL_MS((*_OFFSET_TO_WORD_PTR(_rx_msdu_end, \
|
|
RX_MSDU_END_10_DA_IS_MCBC_OFFSET)), \
|
|
RX_MSDU_END_10_DA_IS_MCBC_MASK, \
|
|
RX_MSDU_END_10_DA_IS_MCBC_LSB))
|
|
|
|
#define HAL_RX_MSDU_END_SA_IS_VALID_GET(_rx_msdu_end) \
|
|
(_HAL_MS((*_OFFSET_TO_WORD_PTR(_rx_msdu_end, \
|
|
RX_MSDU_END_10_SA_IS_VALID_OFFSET)), \
|
|
RX_MSDU_END_10_SA_IS_VALID_MASK, \
|
|
RX_MSDU_END_10_SA_IS_VALID_LSB))
|
|
|
|
#define HAL_RX_MSDU_END_SA_IDX_GET(_rx_msdu_end) \
|
|
(_HAL_MS((*_OFFSET_TO_WORD_PTR(_rx_msdu_end, \
|
|
RX_MSDU_END_11_SA_IDX_OFFSET)), \
|
|
RX_MSDU_END_11_SA_IDX_MASK, \
|
|
RX_MSDU_END_11_SA_IDX_LSB))
|
|
|
|
#define HAL_RX_MSDU_END_L3_HEADER_PADDING_GET(_rx_msdu_end) \
|
|
(_HAL_MS((*_OFFSET_TO_WORD_PTR(_rx_msdu_end, \
|
|
RX_MSDU_END_10_L3_HEADER_PADDING_OFFSET)), \
|
|
RX_MSDU_END_10_L3_HEADER_PADDING_MASK, \
|
|
RX_MSDU_END_10_L3_HEADER_PADDING_LSB))
|
|
|
|
#define HAL_RX_MPDU_ENCRYPTION_INFO_VALID(_rx_mpdu_info) \
|
|
(_HAL_MS((*_OFFSET_TO_WORD_PTR(_rx_mpdu_info, \
|
|
RX_MPDU_INFO_11_FRAME_ENCRYPTION_INFO_VALID_OFFSET)), \
|
|
RX_MPDU_INFO_11_FRAME_ENCRYPTION_INFO_VALID_MASK, \
|
|
RX_MPDU_INFO_11_FRAME_ENCRYPTION_INFO_VALID_LSB))
|
|
|
|
#define HAL_RX_MPDU_PN_31_0_GET(_rx_mpdu_info) \
|
|
(_HAL_MS((*_OFFSET_TO_WORD_PTR(_rx_mpdu_info, \
|
|
RX_MPDU_INFO_3_PN_31_0_OFFSET)), \
|
|
RX_MPDU_INFO_3_PN_31_0_MASK, \
|
|
RX_MPDU_INFO_3_PN_31_0_LSB))
|
|
|
|
#define HAL_RX_MPDU_PN_63_32_GET(_rx_mpdu_info) \
|
|
(_HAL_MS((*_OFFSET_TO_WORD_PTR(_rx_mpdu_info, \
|
|
RX_MPDU_INFO_4_PN_63_32_OFFSET)), \
|
|
RX_MPDU_INFO_4_PN_63_32_MASK, \
|
|
RX_MPDU_INFO_4_PN_63_32_LSB))
|
|
|
|
#define HAL_RX_MPDU_PN_95_64_GET(_rx_mpdu_info) \
|
|
(_HAL_MS((*_OFFSET_TO_WORD_PTR(_rx_mpdu_info, \
|
|
RX_MPDU_INFO_5_PN_95_64_OFFSET)), \
|
|
RX_MPDU_INFO_5_PN_95_64_MASK, \
|
|
RX_MPDU_INFO_5_PN_95_64_LSB))
|
|
|
|
#define HAL_RX_MPDU_PN_127_96_GET(_rx_mpdu_info) \
|
|
(_HAL_MS((*_OFFSET_TO_WORD_PTR(_rx_mpdu_info, \
|
|
RX_MPDU_INFO_6_PN_127_96_OFFSET)), \
|
|
RX_MPDU_INFO_6_PN_127_96_MASK, \
|
|
RX_MPDU_INFO_6_PN_127_96_LSB))
|
|
|
|
#define HAL_RX_MSDU_END_FIRST_MSDU_GET(_rx_msdu_end) \
|
|
(_HAL_MS((*_OFFSET_TO_WORD_PTR(_rx_msdu_end, \
|
|
RX_MSDU_END_10_FIRST_MSDU_OFFSET)), \
|
|
RX_MSDU_END_10_FIRST_MSDU_MASK, \
|
|
RX_MSDU_END_10_FIRST_MSDU_LSB))
|
|
|
|
#define HAL_RX_MSDU_END_DA_IS_VALID_GET(_rx_msdu_end) \
|
|
(_HAL_MS((*_OFFSET_TO_WORD_PTR(_rx_msdu_end, \
|
|
RX_MSDU_END_10_DA_IS_VALID_OFFSET)), \
|
|
RX_MSDU_END_10_DA_IS_VALID_MASK, \
|
|
RX_MSDU_END_10_DA_IS_VALID_LSB))
|