qcacmn: Create IPA SMMU maps for host replenished bufs

Buffers replenished post processing entries in the
REO2TCL ring do not have ipa smmu mappings created
when RX_PREALLOC_BUFFER_POOL feature is disabled.
This will result in SMMU fault when IPA HW accesses
such replenished buffers.

Fix is to create IPA SMMU mapping for replenished buffers
when RX_PREALLOC_BUFFER_POOL feature is disabled as well.

Change-Id: I0fe611a1279b91a3e45bc269348e05de9015d596
CRs-Fixed: 2915686
このコミットが含まれているのは:
Yeshwanth Sriram Guntuka
2021-04-05 19:00:15 +05:30
committed by snandini
コミット 6512d66c27
2個のファイルの変更6行の追加10行の削除

ファイルの表示

@@ -260,21 +260,12 @@ dp_rx_buffer_pool_nbuf_map(struct dp_soc *soc,
{
QDF_STATUS ret = QDF_STATUS_SUCCESS;
if (!QDF_NBUF_CB_PADDR((nbuf_frag_info_t->virt_addr).nbuf)) {
if (!QDF_NBUF_CB_PADDR((nbuf_frag_info_t->virt_addr).nbuf))
ret = qdf_nbuf_map_nbytes_single(soc->osdev,
(nbuf_frag_info_t->virt_addr).nbuf,
QDF_DMA_FROM_DEVICE,
rx_desc_pool->buf_size);
if (qdf_unlikely(QDF_IS_STATUS_ERROR(ret)))
return ret;
}
dp_ipa_handle_rx_buf_smmu_mapping(soc,
(qdf_nbuf_t)((nbuf_frag_info_t->virt_addr).nbuf),
rx_desc_pool->buf_size,
true);
return ret;
}