Hello everyone I want to ask your advice on the best approach for implementing a new XHCI host controller. I am going to add Linux support for a new XHCI host controller for Marvell SOCs. I looked around the latest XHCI support code in the kernel and found that a platform driver called “xhci-hcd” exists. And there is also one XHCI device (DRD dwc3 used by Samsung and TI) that bounds to this driver. My case is somewhat simpler than the dwc3 since it’s not a Dual Role Device. Basically I need to initialize some SOC level registers and then register an xhci-hcd device. Also I need to implement suspend/resume hooks to save and restore the SOC registers initialized at the probe function. I was thinking to take the following approach: 1. Under drivers/usb/host - Register a new platform driver called “xhci-mv” which will initialize the SOC specific stuff and register an “xhci-hcd” platform device. 2. In the machine code – Register an “xhci-mv” platform device and initialize its resources based on device tree. I appreciate any input or comment Thanks in advance Yehuda Yitschak -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html