On Thu, Apr 20, 2023 at 05:11:48PM +0800, Xuan Zhuo wrote: > I know that the current design of DMA API only supports some physical hardware, > but can it be modified or expanded? I think the important point is that for some cases there is no need to dma map at all, and upper layers should be fine by that by just doing the dma mapping in helpers called by the driver. The virtio drivers then check if platform_access is set, then call the generic dma mapping helper, or if not just allocate memory using alloc_pages and also skip all the sync calls.