This patch series adds USB peripheral, host and OTG (role switch based on Id pin status) support for MSM SoC. The peripheral controller driver patches include splitting ci13xxx_udc into core and bus glue layers. Peripheral and Host controller drivers depend on Transceiver driver for clock management and low power mode. Peripheral and Host devices are made children of OTG device when devices are registered. Runtime PM functions are used by Peripheral and Host controller drivers to tell their state to transceiver driver which actually takes care of putting hardware into low power mode. Change from V2: 1. Added core_clock in transceiver driver. This clock is introduced from MSM7x30 onwards to remove dependency on AXI bus frequency. 2. Use debugfs instead of sysfs for role switching option. 3. pm_runtime_nocallbacks() is used instead for nop runtime PM methods. 4. Peripheral controller driver makes use of ci13xxx_udc core. Pavankumar Kondeti (11): USB: Add MSM OTG Controller driver USB: EHCI: Add MSM Host Controller driver USB: EHCI: msm: Add support for power management USB: OTG: msm: Add support for power management USB: gadget: Separate out PCI bus code from ci13xxx_udc USB: gadget: Fix "scheduling while atomic" bugs in ci13xxx_udc USB: gadget: Initialize ci13xxx gadget device's coherent DMA mask USB: gadget: Introduce ci13xxx_udc_driver struct USB: gadget: Add USB controller driver for MSM SoC USB: gadget: Implement runtime PM for ci13xxx gadget USB: gadget: Implement runtime PM for MSM bus glue driver drivers/usb/Kconfig | 1 + drivers/usb/gadget/Kconfig | 29 +- drivers/usb/gadget/Makefile | 3 +- drivers/usb/gadget/ci13xxx_msm.c | 134 +++++ drivers/usb/gadget/ci13xxx_pci.c | 176 ++++++ drivers/usb/gadget/ci13xxx_udc.c | 384 ++++++------- drivers/usb/gadget/ci13xxx_udc.h | 19 + drivers/usb/gadget/gadget_chips.h | 16 +- drivers/usb/host/Kconfig | 11 + drivers/usb/host/ehci-hcd.c | 5 + drivers/usb/host/ehci-msm.c | 345 ++++++++++++ drivers/usb/otg/Kconfig | 11 + drivers/usb/otg/Makefile | 1 + drivers/usb/otg/msm72k_otg.c | 1125 +++++++++++++++++++++++++++++++++++++ include/linux/usb/msm_hsusb.h | 112 ++++ include/linux/usb/msm_hsusb_hw.h | 59 ++ 16 files changed, 2203 insertions(+), 228 deletions(-) create mode 100644 drivers/usb/gadget/ci13xxx_msm.c create mode 100644 drivers/usb/gadget/ci13xxx_pci.c create mode 100644 drivers/usb/host/ehci-msm.c create mode 100644 drivers/usb/otg/msm72k_otg.c create mode 100644 include/linux/usb/msm_hsusb.h create mode 100644 include/linux/usb/msm_hsusb_hw.h -- 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