User: Password:
Subscribe / Log in / New account

USB Device Controller support for BCM281xx

From:  Matt Porter <>
To:  Felipe Balbi <>, Greg Kroah-Hartman <>, Kishon Vijay Abraham I <>, Rob Herring <>, Pawel Moll <>, Mark Rutland <>, Kumar Gala <>, Ian Campbell <>, Christian Daudt <>, Paul Zimmerman <>
Subject:  [PATCH v8 0/9] USB Device Controller support for BCM281xx
Date:  Thu, 19 Dec 2013 09:23:01 -0500
Message-ID:  <>
Cc:  Tomasz Figa <>, Kamil Debski <>, Kyungmin Park <>, Dinh Nguyen <>, Russell King <>, Linux USB List <>, Linux ARM Kernel List <>, Linux Kernel Mailing List <>, Devicetree List <>, Linaro Patches <>
Archive-link:  Article

Changes since v7:
	- Register phy provider with generic phy subsystem only after
	  the generic phy has been allocated and configured.

Changes since v6:
	- Drop dependency on the Exynos generic phy conversion series
	- Bring back original patch that converts s3c-hsotg to use the
	  generic phy layer with a fall back to the old usb style phy

Changes since v5:
	- tweak s3c-hsotg Kconfig help message to be more generic

Changes since v4:
	- phy_set/get_bus_width now use an int for bus_width

Changes since v3:
	- Rebased on 3.13-rc3
	- Move struct phy bus_width attribute back into struct phy_attrs
	- Fix build issue on !GENERIC_PHY
	- Update dwc2 binding to reflect optional phy properties
	- Rename bcm-kona-phy.txt binding to bcm-phy.txt
	- Reorder bcm kona phy includes and use bitops
	- phy-names changed to "usb2-phy" to match updated s3c-hsotg
	  generic phy-ification series

Changes since v2:
	- Rebased on 3.13-rc1
	- Fix braces in phy_get_bus_width()/phy_set_bus_width()
	- Drop generic phy conversion to use the same support from
	  the Exynos generic phy conversion series
	- Modify dts support to match the "device" phy name required
	  in the v3 Exynos generic phy conversion
	- Add s3c-hsotg phy_init/phy_exit support
	- Fix typo on reg property in kona phy binding
	- Replace phy driver reg struct with offset defines
	- Move phy soft reset to phy driver init
	- Fix dts node names to match ePAPR conventions

Changes since v1:
	- Convert USB phy driver to generic phy subsystem
	- Add phy bus width apis
	- Drop dwc2 phy bus width DT property in favor of querying the
	  phy provider for bus width
	- Add generic phy/clock properties to dwc2 DT binding
	- Add generic phy subsystem support to s3c-hsotg with the
	  existing usb phy and pdata phy methods as a fallback
	- Split bindings out to separate patches to match the latest
	  DT binding review guidelines

This series adds USB Device Controller support for the Broadcom
BCM281xx family of parts. BCM281xx contains a DWC2 OTG block and
s3c-hsotg is used to support UDC operation.

Part 1 adds phy bus width support to the generic phy subsystem

Parts 2-6 allows s3c-hsotg to build on non-Samsung platforms, supports
the dwc2 binding, adds generic phy layer support, and supports fetching
phy bus width using the generic phy layer.

Parts 7-8 add a generic phy binding and driver for the BCM Kona USB PHY.

Part 9 adds the DT nodes to enable UDC support on both BCM281xx boards
in the kernel.

This series depends on:
	- "Update Kona drivers to use clocks" v4 series
	  (relevant portion now queued for 3.14)

Matt Porter (9):
  phy: add phy_get_bus_width()/phy_set_bus_width() calls
  staging: dwc2: update DT binding to add generic clock/phy properties
  usb: gadget: s3c-hsotg: enable build for other platforms
  usb: gadget: s3c-hsotg: add snps,dwc2 compatible string
  usb: gadget: s3c-hsotg: enable generic phy support
  usb: gadget: s3c-hsotg: get phy bus width from phy subsystem
  phy: add Broadcom Kona USB2 PHY DT binding
  phy: add Broadcom Kona USB2 PHY driver
  ARM: dts: add usb udc support to bcm281xx

 Documentation/devicetree/bindings/phy/bcm-phy.txt  |  15 ++
 Documentation/devicetree/bindings/staging/dwc2.txt |  12 ++
 arch/arm/boot/dts/bcm11351-brt.dts                 |   6 +
 arch/arm/boot/dts/bcm11351.dtsi                    |  18 +++
 arch/arm/boot/dts/bcm28155-ap.dts                  |   8 ++
 drivers/phy/Kconfig                                |   6 +
 drivers/phy/Makefile                               |   1 +
 drivers/phy/phy-bcm-kona-usb2.c                    | 158 +++++++++++++++++++++
 drivers/usb/gadget/Kconfig                         |   7 +-
 drivers/usb/gadget/s3c-hsotg.c                     |  72 +++++++---
 drivers/usb/gadget/s3c-hsotg.h                     |   1 +
 include/linux/phy/phy.h                            |  28 ++++
 12 files changed, 309 insertions(+), 23 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/phy/bcm-phy.txt
 create mode 100644 drivers/phy/phy-bcm-kona-usb2.c


To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
More majordomo info at
Please read the FAQ at

Copyright © 2013, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds