xilinx_zynq: add USB controllers
Add the two usb controllers in Zynq.
Signed-off-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com>Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
uhci: dynamic type generation
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
uhci: stick irq routing info into UHCIInfo too.
Kills the ugly "switch (device_id) { ... }" struct and makes it easierto figure what the differences between the uhci variants are.
Need our own DeviceClass struct for that so we can allocate some spaceto store UHCIInfo....
uhci: add ich9 00:1a.* variants
usb/ehci: seperate out PCIisms
Seperate the PCI stuff from the EHCI components. Extracted the PCIDeviceout into a new wrapper struct to make EHCIState non-PCI-specific. Seperatedtho non PCI init component out into a seperate "common" init function.
Signed-off-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com>...
usb/ehci: Guard definition of EHCI_DEBUG
Guard against re-definition of EHCI_DEBUG. Allows for turning on of debug infofrom configure (using --qemu-extra-cflags="-DEHCI_DEBUG=1") rather than sourcecode hacking.
usb/ehci: split into multiple source files
usb/ehci: add sysbus variant
usb/ehci: parameterise the register region offsets
The capabilities register and operational register offsets can vary from oneEHCI implementation to the next. Parameterise accordingly.
usb/ehci: Abstract away PCI DMA API
Pull the DMAContext for the PCI DMA out at device init time and put it intothe device state. Use dma_memory_read/write() instead of pci specific versions.
View all revisions | View revisions
Also available in: Atom