Bhadram Varka d58825f314 osi: dma: fix SMMU faults with iova address 0x0
Issue: Transmit buffer address is pupulated in transmit
descriptor only if buffer address is less than UINT_MAX.
If the buffer address equals to UINT_MAX then descriptor
will have value of zero which is filled during transmit
completions. Because of this HW tries to fetch the address
zero which not valid and results in SMMU fault.

Fix: Fill all tdesc0 using with lower 32 bits and tdesc1
with higher 32 bits

Bug 200779695

Change-Id: I3706234d3f8c561f8291ffd63a1b1d63d046d2f2
Signed-off-by: Bhadram Varka <vbhadram@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/kernel/nvethernetrm/+/2604615
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: Nagarjuna Kristam <nkristam@nvidia.com>
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: Narayan Reddy <narayanr@nvidia.com>
Reviewed-by: Krishna Thota <kthota@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
GVS: Gerrit_Virtual_Submit
2021-10-06 18:17:03 -07:00
Description
No description provided
10 MiB