[PATCH V3 00/11] Add MSM USB controller driver

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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


[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux