qcacmn: Add hal_rx_msdu_end_first_msdu_get API

Implement hal_rx_msdu_end_first_msdu_get API
based on the chipset as the macro to retrieve
first_msdu value is chipset dependent.

Change-Id: Iea325159a0349c45a249c1ae113664c41a54b0f1
CRs-Fixed: 2522133
这个提交包含在:
Venkata Sharath Chandra Manchala
2019-09-21 11:03:38 -07:00
提交者 nshrivas
父节点 a2d7497e1c
当前提交 cb255b4834
修改 14 个文件,包含 159 行新增18 行删除

查看文件

@@ -254,6 +254,25 @@ static void hal_rx_print_pn_6290(uint8_t *buf)
pn_127_96, pn_95_64, pn_63_32, pn_31_0);
}
/**
* hal_rx_msdu_end_first_msdu_get_6290: API to get first msdu status
* from rx_msdu_end TLV
*
* @buf: pointer to the start of RX PKT TLV headers
* Return: first_msdu
*/
static uint8_t
hal_rx_msdu_end_first_msdu_get_6290(uint8_t *buf)
{
struct rx_pkt_tlvs *pkt_tlvs = (struct rx_pkt_tlvs *)buf;
struct rx_msdu_end *msdu_end = &pkt_tlvs->msdu_end_tlv.rx_msdu_end;
uint8_t first_msdu;
first_msdu = HAL_RX_MSDU_END_FIRST_MSDU_GET(msdu_end);
return first_msdu;
}
struct hal_hw_txrx_ops qca6290_hal_hw_txrx_ops = {
/* init and setup */
hal_srng_dst_hw_init_generic,
@@ -303,6 +322,7 @@ struct hal_hw_txrx_ops qca6290_hal_hw_txrx_ops = {
hal_rx_msdu_end_l3_hdr_padding_get_6290,
hal_rx_encryption_info_valid_6290,
hal_rx_print_pn_6290,
hal_rx_msdu_end_first_msdu_get_6290,
};
struct hal_hw_srng_config hw_srng_table_6290[] = {

查看文件

@@ -95,6 +95,12 @@
RX_MPDU_INFO_7_PN_127_96_MASK, \
RX_MPDU_INFO_7_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_5_FIRST_MSDU_OFFSET)), \
RX_MSDU_END_5_FIRST_MSDU_MASK, \
RX_MSDU_END_5_FIRST_MSDU_LSB))
#if defined(QCA_WIFI_QCA6290_11AX)
#define HAL_RX_MSDU_START_MIMO_SS_BITMAP(_rx_msdu_start)\
(_HAL_MS((*_OFFSET_TO_WORD_PTR((_rx_msdu_start),\