qcacmn: Add hal_rx_desc_is_first_msdu API

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

Change-Id: I8e8a3aceb225b591b96e6f8453ffbebf1f78e529
CRs-Fixed: 2522133
This commit is contained in:
Venkata Sharath Chandra Manchala
2019-09-20 16:51:48 -07:00
committed by nshrivas
parent 5bf1e5a1da
commit 43d563277d
10 changed files with 123 additions and 9 deletions

View File

@@ -185,6 +185,22 @@ static uint16_t hal_rx_msdu_end_sa_idx_get_9000(uint8_t *buf)
return sa_idx;
}
/**
* hal_rx_desc_is_first_msdu_9000() - Check if first msdu
*
* @hal_soc_hdl: hal_soc handle
* @hw_desc_addr: hardware descriptor address
*
* Return: 0 - success/ non-zero failure
*/
static uint32_t hal_rx_desc_is_first_msdu_9000(void *hw_desc_addr)
{
struct rx_pkt_tlvs *rx_tlvs = (struct rx_pkt_tlvs *)hw_desc_addr;
struct rx_msdu_end *msdu_end = &rx_tlvs->msdu_end_tlv.rx_msdu_end;
return HAL_RX_GET(msdu_end, RX_MSDU_END_5, FIRST_MSDU);
}
struct hal_hw_txrx_ops qcn9000_hal_hw_txrx_ops = {
/* init and setup */
@@ -231,6 +247,7 @@ struct hal_hw_txrx_ops qcn9000_hal_hw_txrx_ops = {
hal_rx_msdu_end_da_is_mcbc_get_9000,
hal_rx_msdu_end_sa_is_valid_get_9000,
hal_rx_msdu_end_sa_idx_get_9000,
hal_rx_desc_is_first_msdu_9000,
};
struct hal_hw_srng_config hw_srng_table_9000[] = {