On Thu, Jan 02, 2020 at 07:13:25AM +0000, Sai Pavan Boddu wrote:
Hi Gred,
We are seeing of options to reuse the hcd-xhci model and use it over system bus
interface rather than pci. (for Xilinx ZynqMP SOC, usb emulation)
Are there any plans of implementing a sysbus device ? if none it would be good
if provided few pointers to start.
There have been some discussions about this for a (IIRC) sbsa machine,
but I'm not sure whenever that where just ideas or some code exists.
Im looking at hcd-ehci/ochi as a reference, let me know if there are any know
limitations for this usecase.
Yep, the path for xhci would be quite simliar: Create a new
XHCIPciState struct, move over all pci-specific bits from XHCIState,
leaving the generic stuff in XHCIState for sharing with sysbus.
Possibly move all pci-specific code bits into a new source file (for
cleanup, will also allow to build qemu with CONFIG_PCI=n and still have
XHCI enabled).
Once this separation is done you should be able to create a sysbus
device, reusing the generic xhci code and adding sysbus plumbing
(mmio, irq, ...)