qemu-patch-raspberry4/hw/usb
David Gibson e2f89926f1 usb: Convert usb_packet_{map, unmap} to universal DMA helpers
The USB UHCI and EHCI drivers were converted some time ago to use the
pci_dma_*() helper functions.  However, this conversion was not complete
because in some places both these drivers do DMA via the usb_packet_map()
function in usb-libhw.c.  That function directly used
cpu_physical_memory_map().

Now that the sglist code uses DMA wrappers properly, we can convert the
functions in usb-libhw.c, thus conpleting the conversion of UHCI and EHCI
to use the DMA wrappers.

Note that usb_packet_map() invokes dma_memory_map() with a NULL invalidate
callback function.  When IOMMU support is added, this will mean that
usb_packet_map() and the corresponding usb_packet_unmap() must be called in
close proximity without dropping the qemu device lock - otherwise the guest
might invalidate IOMMU mappings while they are still in use by the device
code.

Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2012-06-27 16:33:25 -05:00
..
bus.c usb: restore USBDevice->attached on vmload 2012-06-20 14:46:02 +02:00
core.c usb-ehci: add missing usb_packet_init() call 2012-04-26 12:21:15 +02:00
desc.c qdev: Use wrapper for qdev_get_path 2012-06-18 15:14:38 +02:00
desc.h usb: add serial number generator 2012-04-26 12:21:17 +02:00
dev-audio.c usb: add serial number generator 2012-04-26 12:21:17 +02:00
dev-bluetooth.c Allow machines to configure the QEMU_VERSION that's exposed via hardware 2012-06-19 13:36:56 -05:00
dev-hid.c Allow machines to configure the QEMU_VERSION that's exposed via hardware 2012-06-19 13:36:56 -05:00
dev-hub.c Allow machines to configure the QEMU_VERSION that's exposed via hardware 2012-06-19 13:36:56 -05:00
dev-network.c net: net_client_init(): use error_set() 2012-06-04 13:49:35 -03:00
dev-serial.c Allow machines to configure the QEMU_VERSION that's exposed via hardware 2012-06-19 13:36:56 -05:00
dev-smartcard-reader.c Allow machines to configure the QEMU_VERSION that's exposed via hardware 2012-06-19 13:36:56 -05:00
dev-storage.c Allow machines to configure the QEMU_VERSION that's exposed via hardware 2012-06-19 13:36:56 -05:00
dev-wacom.c Allow machines to configure the QEMU_VERSION that's exposed via hardware 2012-06-19 13:36:56 -05:00
hcd-ehci.c usb: Convert usb_packet_{map, unmap} to universal DMA helpers 2012-06-27 16:33:25 -05:00
hcd-musb.c usb: the big rename 2012-03-13 10:15:32 +01:00
hcd-ohci.c usb-ohci: Use universal DMA helper functions 2012-06-27 16:33:25 -05:00
hcd-uhci.c usb: Convert usb_packet_{map, unmap} to universal DMA helpers 2012-06-27 16:33:25 -05:00
hcd-xhci.c xhci: trace: slots 2012-06-07 10:02:22 +02:00
host-bsd.c usb: the big rename 2012-03-13 10:15:32 +01:00
host-linux.c usb-host: live migration support 2012-06-20 14:46:02 +02:00
host-stub.c usb: the big rename 2012-03-13 10:15:32 +01:00
libhw.c usb: Convert usb_packet_{map, unmap} to universal DMA helpers 2012-06-27 16:33:25 -05:00
Makefile.objs build: convert libhw to nested Makefile.objs 2012-06-07 09:21:17 +02:00
redirect.c Allow machines to configure the QEMU_VERSION that's exposed via hardware 2012-06-19 13:36:56 -05:00