qcacmn: Set REO destination indication as per REO HW in BE

In case of Beryllium, REO hardware expects the REO destination indication
needs to be set in extended MSDU structure to consider the reinject of
packets after defragmentation to REO2SW1 ring.

Set the REO DESTINATION INDICATION in msdu_ext_desc_info in case of
Berylliyum initialization while setting MSDU desc info.

CRs-Fixed: 3306818
Change-Id: I6a7862a0448afeb169e04747c1dba352ce12c278
This commit is contained in:
Sreeramya Soratkal
2022-10-06 11:58:18 +05:30
committed by Madan Koyyalamudi
parent 6aef607629
commit 3c9b433d10
2 changed files with 8 additions and 0 deletions

View File

@@ -624,6 +624,8 @@ hal_msdu_desc_info_set_be(hal_soc_handle_t hal_soc_hdl,
{ {
struct rx_msdu_desc_info *msdu_desc_info = struct rx_msdu_desc_info *msdu_desc_info =
(struct rx_msdu_desc_info *)msdu_desc; (struct rx_msdu_desc_info *)msdu_desc;
struct rx_msdu_ext_desc_info *msdu_ext_desc_info =
(struct rx_msdu_ext_desc_info *)(msdu_desc_info + 1);
HAL_RX_MSDU_DESC_INFO_SET(msdu_desc_info, HAL_RX_MSDU_DESC_INFO_SET(msdu_desc_info,
FIRST_MSDU_IN_MPDU_FLAG, 1); FIRST_MSDU_IN_MPDU_FLAG, 1);
@@ -637,6 +639,8 @@ hal_msdu_desc_info_set_be(hal_soc_handle_t hal_soc_hdl,
SA_IS_VALID, 1); SA_IS_VALID, 1);
HAL_RX_MSDU_DESC_INFO_SET(msdu_desc_info, HAL_RX_MSDU_DESC_INFO_SET(msdu_desc_info,
DA_IS_VALID, 1); DA_IS_VALID, 1);
HAL_RX_MSDU_REO_DST_IND_SET(msdu_ext_desc_info,
REO_DESTINATION_INDICATION, dst_ind);
} }
static inline void static inline void

View File

@@ -208,6 +208,10 @@
HAL_RX_FLD_SET(_mpdu_info_ptr, RX_MPDU_DESC_INFO, \ HAL_RX_FLD_SET(_mpdu_info_ptr, RX_MPDU_DESC_INFO, \
_field, _val) _field, _val)
#define HAL_RX_MSDU_REO_DST_IND_SET(_msdu_ext_desc_info_ptr, _field, _val) \
HAL_RX_FLD_SET(_msdu_ext_desc_info_ptr, RX_MSDU_EXT_DESC_INFO, \
_field, _val)
#define HAL_RX_REO_MSDU_REO_DST_IND_GET(reo_desc) \ #define HAL_RX_REO_MSDU_REO_DST_IND_GET(reo_desc) \
(HAL_RX_MSDU_REO_DST_IND_GET(& \ (HAL_RX_MSDU_REO_DST_IND_GET(& \
(((struct reo_destination_ring *) \ (((struct reo_destination_ring *) \