sound: usb: Handle iova map/unmap properly for SMMU stage 1

When SMMU stage 1 is enabled, sg table entry may return different
page size entries for a xfer buffer. Calling uaudio_get_iova()
for each table entry may result into non-contiguous iova address
mapped for one xfer buffer. This results into page fault when
remote entity tries to access unmapped iova hole. Fix this issue
by calling uaudio_get_iova() first to get contiguous iova and then
map entire iova region by going over sg table entry. Also replace
print format %pa to %pK.

Change-Id: I7c74f25e6b76cf994717ca069948ac08631b5cd7
Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
1 file changed