Hi, > > > DSP FW has no access to userspace so we would need some additional > > > API > > > on top of DMA_BUF_SET_NAME etc to get physical hardware pages ? > > > > The dma-buf api currently can share guest memory sg-lists. > > Ok, IIUC buffers can either be shared using the GPU proposed APIs > (above) or using the dma-buf API to share via userspace ? My preference > would be to use teh more direct GPU APIs sending physical page > addresses from Guest to device driver. I guess this is your use case > too ? I'm not convinced this is useful for audio ... I basically see two modes of operation which are useful: (1) send audio data via virtqueue. (2) map host audio buffers into the guest address space. The audio driver api (i.e. alsa) typically allows to mmap() the audio data buffers, so it is the host audio driver which handles the allocation. Let the audio hardware dma from/to userspace-allocated buffers is not possible[1], but we would need that to allow qemu (or other vmms) use guest-allocated buffers. cheers, Gerd [1] Disclaimer: It's been a while I looked at alsa more closely, so there is a chance this might have changed without /me noticing.