qcacmn: Support WLAN IPA WDI 3.0 SMMU
Support WLAN IPA WDI 3.0 with SMMU-S1 enabled. Key design considerations are captured below. - ring base addresses are passed as struct sg_table and IPA driver will do the IOVA mapping to IPA domain. - ring doorbell addresses are passed as physical address and IPA driver will do the IOVA mapping to IPA domain. - TX/RX buffers need to be mapped to IPA domain by WLAN driver via ipa_wdi_create|release_smmu_mapping API. - IPA doorbell addresses returned from ipa_wdi_conn_pipes are DDR addresses and WLAN driver needs to do the IOVA mapping to WLAN domain. Change-Id: I2398df58c9a9d002af7035f239eda37a86f5d00f CRs-Fixed: 2422155
This commit is contained in:
@@ -90,6 +90,9 @@ int dp_ipa_uc_detach(struct dp_soc *soc, struct dp_pdev *pdev);
|
||||
int dp_ipa_uc_attach(struct dp_soc *soc, struct dp_pdev *pdev);
|
||||
int dp_ipa_ring_resource_setup(struct dp_soc *soc,
|
||||
struct dp_pdev *pdev);
|
||||
QDF_STATUS dp_ipa_handle_rx_buf_smmu_mapping(struct dp_soc *soc,
|
||||
qdf_nbuf_t nbuf,
|
||||
bool create);
|
||||
#else
|
||||
static inline int dp_ipa_uc_detach(struct dp_soc *soc, struct dp_pdev *pdev)
|
||||
{
|
||||
@@ -106,5 +109,12 @@ static inline int dp_ipa_ring_resource_setup(struct dp_soc *soc,
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
static inline QDF_STATUS dp_ipa_handle_rx_buf_smmu_mapping(struct dp_soc *soc,
|
||||
qdf_nbuf_t nbuf,
|
||||
bool create)
|
||||
{
|
||||
return QDF_STATUS_SUCCESS;
|
||||
}
|
||||
#endif
|
||||
#endif /* _DP_IPA_H_ */
|
||||
|
Verwijs in nieuw issue
Block a user