diff --git a/dp/wifi3.0/dp_ipa.c b/dp/wifi3.0/dp_ipa.c index ec0025f16ca1..3729dc18b9e9 100644 --- a/dp/wifi3.0/dp_ipa.c +++ b/dp/wifi3.0/dp_ipa.c @@ -1727,4 +1727,16 @@ bool dp_ipa_rx_intrabss_fwd(struct cdp_vdev *pvdev, qdf_nbuf_t nbuf, return true; } +#ifdef MDM_PLATFORM +bool dp_ipa_is_mdm_platform(void) +{ + return true; +} +#else +bool dp_ipa_is_mdm_platform(void) +{ + return false; +} +#endif + #endif diff --git a/dp/wifi3.0/dp_ipa.h b/dp/wifi3.0/dp_ipa.h index 67737c503acb..65712b7f7b43 100644 --- a/dp/wifi3.0/dp_ipa.h +++ b/dp/wifi3.0/dp_ipa.h @@ -111,6 +111,8 @@ QDF_STATUS dp_ipa_handle_rx_buf_smmu_mapping(struct dp_soc *soc, bool dp_reo_remap_config(struct dp_soc *soc, uint32_t *remap1, uint32_t *remap2); +bool dp_ipa_is_mdm_platform(void); + #else static inline int dp_ipa_uc_detach(struct dp_soc *soc, struct dp_pdev *pdev) { diff --git a/dp/wifi3.0/dp_main.c b/dp/wifi3.0/dp_main.c index 25418a9f4b21..b0de4f25ed3f 100644 --- a/dp/wifi3.0/dp_main.c +++ b/dp/wifi3.0/dp_main.c @@ -5094,6 +5094,9 @@ static void dp_peer_setup_get_reo_hash(struct dp_vdev *vdev, if (vdev->opmode == wlan_op_mode_ap) { *reo_dest = IPA_REO_DEST_RING_IDX + 1; *hash_based = 0; + } else if (vdev->opmode == wlan_op_mode_sta && + dp_ipa_is_mdm_platform()) { + *reo_dest = IPA_REO_DEST_RING_IDX + 1; } } }