From: Dinh Nguyen <dinguyen@xxxxxxxxxx> Hello, This patch series combines the dwc2 host driver and the s3c-hsotg peripheral driver into a single dual-roler driver similar to the dwc3. The patch series moves the s3c-hsotg files into the /dwc2 folder, so this is the final location of the driver. When the driver is built as a kernel module, it will be dwc2.ko and dwc2_platform.ko. patch 1/7 : Edit the defines in dwc2/hw.h so that the s3c-hsotg driver can use the defines in hw.h. So we can remove s3c-hsotg.h in a subsequent patch. patch 2/7 : Moves the s3c-hsotg driver into /dwc2 folder. Building the s3c-hsotg driver will now be a Kconfig option under DWC2. Also replaces the s3c-hsotg.h header file for dwc2/hw.h. patch 3/7 : Moves the s3c-hsotg data structure into a common place, core.h, so that final DRD can use it. patch 4/7 : Add the gadget data structure to a common data structure, dwc2_hsotg, which is the data structure that will encapsulate host and peripheral modes for the final DRD. The bulk for this patch is edits the in s3c-hsotg.c to reference the new data structure. patch 5/7 : Replaces the s3c_hostg_irq handler with the dwc2_handle_common_intr in dwc2. Updates the dwc2 IRQ routines to call the s3c-hsotg gadget functions for peripheral mode. patch 6/7 : Update the Kconfig and Makefile to enable building of the single DRD. At this stage the the driver is behaving as a dual-role driver. patch 7/7 : Decouple host/peripheral functionality when buildling the driver in host or peripheral mode only. This patchset is based on 3.14-rc2. I have only tested on the SOCFPGA platform which has v2.93a of dual-role IP. Thanks, Dinh Nguyen (7): usb: dwc2: Add defines to support the s3c-hsotg driver usb: s3c-hsotg: Move s3c-hsotg into dwc2 folder usb: s3c-hsotg: Move s3c-hsotg data structures usb: dwc2: Add the s3c-hsotg data structures to main dwc2_hsotg data structure usb: dwc2: combine the dwc2 and s3c_hsotg to use a single IRQ handler usb: dwc2: Enable the dwc2/s3c-hsotg to be a single dual-role driver usb: dwc2: Split out the dwc2/sc3-hsotg driver mode's build dependency drivers/usb/dwc2/Kconfig | 28 + drivers/usb/dwc2/Makefile | 17 +- drivers/usb/dwc2/core.c | 1 + drivers/usb/dwc2/core.h | 225 +++- drivers/usb/dwc2/core_intr.c | 108 +- drivers/usb/dwc2/hcd.c | 7 +- drivers/usb/dwc2/hcd.h | 23 +- drivers/usb/dwc2/hw.h | 23 +- drivers/usb/dwc2/platform.c | 50 +- drivers/usb/{gadget => dwc2}/s3c-hsotg.c | 1807 +++++++++++------------------- drivers/usb/gadget/Kconfig | 7 - drivers/usb/gadget/Makefile | 1 - drivers/usb/gadget/s3c-hsotg.h | 378 ------- 13 files changed, 1128 insertions(+), 1547 deletions(-) rename drivers/usb/{gadget => dwc2}/s3c-hsotg.c (57%) delete mode 100644 drivers/usb/gadget/s3c-hsotg.h --- Cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> Cc: Paul Zimmerman <paulz@xxxxxxxxxxxx> Cc: Felipe Balbi <balbi@xxxxxx> Cc: Ben Dooks <ben-linux@xxxxxxxxx> Cc: Matt Porter <mporter@xxxxxxxxxx> Cc: Kukjin Kim <kgene.kim@xxxxxxxxxxx> Cc: Stephen Warren <swarren@xxxxxxxxxxxxx> Cc: Matthijs Kooijman <matthijs@xxxxxxxx> Cc: Jingoo Han <jg1.han@xxxxxxxxxxx> Cc: Sachin Kamat <sachin.kamat@xxxxxxxxxx> Cc: Robert Baldyga <r.baldyga@xxxxxxxxxxx> -- 1.7.9.5 -- 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