[PATCH v3 0/2] usb: Add driver for USB signal re-mapper

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

 



v3
- Add MODULE_AUTHOR(), LICENSE and DESCRIPTION() so the driver
  can be built as a module.
- Improve Kconfig default entry

v2
- Move file from drivers/usb/host to drivers/usb/misc
- Combine Kconfig/Makefile patch and new driver patch
- Fixed bindings .yaml document based on feedback from Rob Herring
- NOTE: There were suggestions to use a pinmux driver or
  GPIO aggregator, but I think agreement was reached that
  they weren't a good fit.

The Broadcom 7211 has new functionality that allows some USB low
speed side band signals, that go from the XHCI host controller to
pins on the chip, to be remapped to use any GPIO pin instead of the
limited set selectable by hardware. This can be done without changing
the standard driver for the host controller. There is currently
support for three USB signals, PWRON, VBUS_PRESENT and PWRFLT. This
driver will allow the remapping of any of these three signals based
on settings in the Device Tree node for the driver. The driver was
written so that it could handle additional signals added in the
future by just adding the correct properties to the DT node.

Al Cooper (2):
  dt-bindings: Add support for Broadcom USB pin map driver
  usb: Add driver to allow any GPIO to be used for 7211 USB signals

 .../bindings/usb/brcm,usb-pinmap.yaml         |  70 ++++
 MAINTAINERS                                   |   8 +
 drivers/usb/misc/Kconfig                      |   9 +
 drivers/usb/misc/Makefile                     |   1 +
 drivers/usb/misc/brcmstb-usb-pinmap.c         | 351 ++++++++++++++++++
 5 files changed, 439 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/usb/brcm,usb-pinmap.yaml
 create mode 100644 drivers/usb/misc/brcmstb-usb-pinmap.c

-- 
2.17.1




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

  Powered by Linux