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, ...) cheers, Gerd