Skip to content

usb: musb: fix USB enumeration issue in OMAP3 platform

Kishon Vijay Abraham I linux-arm-kernel linux-omap lkml 2 versions – In review

Get series with b4
b4 am [email protected]

Versions newest first · linked by author and title

  1. v2 Latest4 patches 6 repliesIn review
  2. v14 patches 2 repliesSuperseded

Changes in v2 from the cover letter

*) Rebased to the latest mainline kernel

Patches in v2 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/4arm: omap: Add phy binding info for musb in plat dataarch/arm/mach-omap2/usb-musb.c include/linux/usb/musb.h+6 -01 reply
2/4usb: phy: add a new API to get PHY ref by labeldrivers/usb/phy/phy.c include/linux/usb/phy.h+91 -00 replies
3/4usb: musb: omap: use the new API to get PHY reference by labeldrivers/usb/musb/musb_core.c drivers/usb/musb/musb_core.h drivers/usb/musb/omap2430.c+3 -10 replies
4/4arm: omap: remove using usb_bind_phy for binding musb and phyarch/arm/mach-omap2/board-2430sdp.c arch/arm/mach-omap2/board-3430sdp.c arch/arm/mach-omap2/board-cm-t35.c +13 more+0 -161 reply

Reviews trailers per patch

All 4 patches have a Reviewed-by or Acked-by.

PatchFelipe BalbiTomi ValkeinenTony Lindgren
1/4A-b T-b A-b
2/4A-b T-b
3/4A-b T-b
4/4A-b T-b

Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes. Scroll the table sideways for all 3 reviewers.

Read the v2 thread

Cover letter [PATCH v2 0/4] usb: musb: fix USB enumeration issue in OMAP3 platform

This series fixes the USB enumeration issue caused because of the controller not able to get a reference to the PHY because of incorrect binding in the board file.

In the case of non-dt boot, the platform specific initialization file (board file) will do usb_bind_phy that binds the usb controller with the PHY using device names. After the device names are created using PLATFORM_DEVID_AUTO, our original method of binding by device names doesn't work reliably (since the device name changes). Hence the usb controller is made to use labels for getting the PHY.

Here the PHY name is added in the plat data of USB controller device which should be used by the controller driver to get the PHY.
Two new APIs usb_get_phy_by_name and devm_usb_get_phy_by_name are added to be used by the controller to get the PHY by name.

Changes from v1:
*) Rebased to the latest mainline kernel

Changes from RFC
*) Changed the signature of usb_get_phy_by_name() not to use struct device *

Kishon Vijay Abraham I (4):
arm: omap: Add phy binding info for musb in plat data
usb: phy: add a new API to get PHY ref by label
usb: musb: omap: use the new API to get PHY reference by label
arm: omap: remove using usb_bind_phy for binding musb and phy

 arch/arm/mach-omap2/board-2430sdp.c          |    1 -
 arch/arm/mach-omap2/board-3430sdp.c          |    1 -
 arch/arm/mach-omap2/board-cm-t35.c           |    1 -
 arch/arm/mach-omap2/board-devkit8000.c       |    1 -
 arch/arm/mach-omap2/board-igep0020.c         |    1 -
 arch/arm/mach-omap2/board-ldp.c              |    1 -
 arch/arm/mach-omap2/board-omap3beagle.c      |    1 -
 arch/arm/mach-omap2/board-omap3evm.c         |    1 -
 arch/arm/mach-omap2/board-omap3logic.c       |    1 -
 arch/arm/mach-omap2/board-omap3pandora.c     |    1 -
 arch/arm/mach-omap2/board-omap3stalker.c     |    1 -
 arch/arm/mach-omap2/board-omap3touchbook.c   |    1 -
 arch/arm/mach-omap2/board-overo.c            |    1 -
 arch/arm/mach-omap2/board-rm680.c            |    1 -
 arch/arm/mach-omap2/board-rx51.c             |    1 -
 arch/arm/mach-omap2/board-zoom-peripherals.c |    1 -
 arch/arm/mach-omap2/usb-musb.c               |    3 +
 drivers/usb/musb/musb_core.c                 |    1 +
 drivers/usb/musb/musb_core.h                 |    1 +
 drivers/usb/musb/omap2430.c                  |    2 +-
 drivers/usb/phy/phy.c                        |   77 ++++++++++++++++++++++++++
 include/linux/usb/musb.h                     |    3 +
 include/linux/usb/phy.h                      |   14 +++++
 23 files changed, 100 insertions(+), 17 deletions(-)
Signature · 1 line
1.7.10.4