virtio: Fix dmamap_sync calls
Add some missing bus_dmamap_sync calls, noticed with SEV and based on
an earlier diff by hshoexer@.
Some of the required syncing is done in virtio_check_vq(). Make sure
to use that function instead of calling call the virtqueue done
function directly from device specific drivers.
For viogpu this means that we cannot poll with virtio_dequeue() but
must use virtio_check_vq() instead. To make this more clear, rename
viogpu_vq_wait() into viogpu_vq_done(). While there, set the DRIVER_OK
flag even earlier. It must be set before using any virtqueue.
ok kettenis@