linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/3] Add power sequence for hard-wired USB devices
@ 2016-03-03 10:01 Peter Chen
  2016-03-03 10:01 ` [PATCH 1/3] usb: core: add power sequence for " Peter Chen
                   ` (2 more replies)
  0 siblings, 3 replies; 22+ messages in thread
From: Peter Chen @ 2016-03-03 10:01 UTC (permalink / raw)
  To: linux-arm-kernel

Hi all,

I have a patch for adding device tree support for USB device [1] some
days ago, this is a follow-up to support the USB devices which need
to do some power sequence like enabling USB PHY clock, toggling reset
gpio, etc, before this device can work normal. I have seen some use
cases for it.

In the 1st patch, the USB HUB driver will iterate all its sub devices
described at dts, and do power on sequence if there is a phandle "usb-pwrseq"
for it. The user can add its specific clock and reset pin in its dts to
support this feature.

In the 2nd patch, there is a workaround for chipidea driver to let the
hcd know its device node.

In the 3rd patch, it is a user case for this problem.
@Maciej @Fabio, would you kind to test it at udoo boards, and supply
the related vid/pid for this HUB?
@troy, would you kind add your dts for it at nitrogen6x board?

[1] http://www.spinics.net/lists/linux-usb/msg136698.html

Peter Chen (3):
  usb: core: add power sequence for USB devices
  usb: chipidea: host: let the hcd know's parent device node
  ARM: dts: imx6qdl-udoo.dtsi: fix onboard USB HUB property

 .../devicetree/bindings/usb/usb-device.txt         |  41 +++++-
 arch/arm/boot/dts/imx6qdl-udoo.dtsi                |  35 ++---
 drivers/usb/chipidea/host.c                        |  18 ++-
 drivers/usb/core/Makefile                          |   2 +-
 drivers/usb/core/hub.c                             |  32 +++++
 drivers/usb/core/pwrseq.c                          | 149 +++++++++++++++++++++
 include/linux/usb/of.h                             |  10 ++
 7 files changed, 260 insertions(+), 27 deletions(-)
 create mode 100644 drivers/usb/core/pwrseq.c

-- 
1.9.1

^ permalink raw reply	[flat|nested] 22+ messages in thread
* [PATCH 0/3] USB: add generic onboard USB HUB driver
@ 2015-12-08  1:37 Peter Chen
  2015-12-08  1:37 ` [PATCH 3/3] ARM: dts: imx6qdl-udoo.dtsi: fix onboard USB HUB property Peter Chen
  0 siblings, 1 reply; 22+ messages in thread
From: Peter Chen @ 2015-12-08  1:37 UTC (permalink / raw)
  To: linux-arm-kernel

Hi all,

There is a known issue that the USB code can't handle USB HUB's
external pins well, in that case, it may cause some onboard
USB HUBs can't work since their PHY's clock or reset pin needs to
operate.

The user reported this issue at below:
http://www.spinics.net/lists/linux-usb/msg131502.html

In this patch set, I add a generic onboard USB HUB driver to
handle this problem, the external signals will be configured
before usb controller's initialization, it much likes we did
it at board code before.

The user needs to add this generic hub node at dts or add releted
platform data to support it.

The udoo users, help to test please.

Peter Chen (3):
  usb: misc: generic_onboard_hub: add generic onboard USB HUB driver
  doc: dt-binding: generic onboard USB HUB
  ARM: dts: imx6qdl-udoo.dtsi: fix onboard USB HUB property

 .../bindings/usb/generic-onboard-hub.txt           |  28 ++++
 MAINTAINERS                                        |   7 +
 arch/arm/boot/dts/imx6qdl-udoo.dtsi                |  25 +---
 drivers/usb/misc/Kconfig                           |   9 ++
 drivers/usb/misc/Makefile                          |   1 +
 drivers/usb/misc/generic_onboard_hub.c             | 162 +++++++++++++++++++++
 include/linux/usb/generic_onboard_hub.h            |  11 ++
 7 files changed, 224 insertions(+), 19 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/usb/generic-onboard-hub.txt
 create mode 100644 drivers/usb/misc/generic_onboard_hub.c
 create mode 100644 include/linux/usb/generic_onboard_hub.h

-- 
1.9.1

^ permalink raw reply	[flat|nested] 22+ messages in thread

end of thread, other threads:[~2016-04-05  9:35 UTC | newest]

Thread overview: 22+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-03-03 10:01 [PATCH 0/3] Add power sequence for hard-wired USB devices Peter Chen
2016-03-03 10:01 ` [PATCH 1/3] usb: core: add power sequence for " Peter Chen
2016-03-03 18:31   ` Alan Stern
2016-03-04  2:07     ` Peter Chen
2016-03-03 20:54   ` Rob Herring
2016-03-04  2:02     ` Peter Chen
2016-03-04  2:23       ` Andrew Lunn
2016-03-04  2:37         ` Peter Chen
2016-03-05  4:28           ` Rob Herring
2016-03-05  8:33             ` Peter Chen
2016-03-05 14:10               ` Andrew Lunn
2016-03-14 10:42                 ` Peter Chen
2016-04-05  9:35                   ` Peter Chen
2016-03-03 10:01 ` [PATCH 2/3] usb: chipidea: host: let the hcd know's parent device node Peter Chen
2016-03-03 14:42   ` Andrew Lunn
2016-03-04  1:53     ` Peter Chen
2016-03-04  2:17       ` Andrew Lunn
2016-03-04  2:32         ` Peter Chen
2016-03-03 10:01 ` [PATCH 3/3] ARM: dts: imx6qdl-udoo.dtsi: fix onboard USB HUB property Peter Chen
2016-03-03 22:30   ` Maciej S. Szmigiero
2016-03-04  2:04     ` Peter Chen
  -- strict thread matches above, loose matches on Subject: below --
2015-12-08  1:37 [PATCH 0/3] USB: add generic onboard USB HUB driver Peter Chen
2015-12-08  1:37 ` [PATCH 3/3] ARM: dts: imx6qdl-udoo.dtsi: fix onboard USB HUB property Peter Chen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).