[PATCH v2 0/5] iommu/sun50i: Fix various fixes

From: Jernej Skrabec
Date: Tue Oct 25 2022 - 12:54:41 EST


Testing IOMMU together with video decoder (Cedrus) exposed many bugs in
sun50i-iommu driver. This series addresses all issues so video decoder
works well with IOMMU.

First two patches address recovery issues in interrupt when either page
faults or permission errors were reported. Third patch fixes permission
domain assignment. Fourth patch fixes dma sync size. Sometimes sync also
touched some other buffers and kernel generated warning in dmesg. Fifth
patch fixes issue with syncing PDE and PTE tables. Without it, page
faults were randomly generated even with valid iova addresses.

Please take a look.

Best regards,
Jernej

Changes from v1:
- rebase on top of v6.1-rc1
- replace last patch with new one - Implement iotlb_sync_map instead
of invalidating each page at each allocation

Jernej Skrabec (5):
iommu/sun50i: Fix reset release
iommu/sun50i: Consider all fault sources for reset
iommu/sun50i: Fix R/W permission check
iommu/sun50i: Fix flush size
iommu/sun50i: Implement .iotlb_sync_map

drivers/iommu/sun50i-iommu.c | 88 ++++++++++++++++++++++++++++++++++--
1 file changed, 83 insertions(+), 5 deletions(-)

--
2.38.1