Thanks Philippe & Gred. I would start with the below pointers. Regards, Sai Pavan
> -----Original Message----- > From: Philippe Mathieu-Daudé <phi...@redhat.com> > Sent: Thursday, January 2, 2020 4:56 PM > To: kra...@redhat.com; Sai Pavan Boddu <saip...@xilinx.com> > Cc: peter.mayd...@linaro.org; qemu-devel@nongnu.org > Subject: Re: sysbus usb xhci > > On 1/2/20 10:45 AM, kra...@redhat.com wrote: > > 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, ...) > > The SDHCI commits b635d98cf32..8b7455c75e seem similar to what you > want to achieve (see also commit ce8646034).