From: peter.chen@freescale.com (Peter Chen)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 2/3] doc: dt-binding: generic onboard USB HUB
Date: Wed, 16 Dec 2015 10:46:32 +0800 [thread overview]
Message-ID: <20151216024631.GA23482@shlinux2> (raw)
In-Reply-To: <CAPDyKFrj_eMNXdBPi25cE0VcO8OQp=NspG8yT+EfSFsbOebuwg@mail.gmail.com>
On Tue, Dec 15, 2015 at 09:21:09PM +0100, Ulf Hansson wrote:
> On 9 December 2015 at 09:55, Arnd Bergmann <arnd@arndb.de> wrote:
> > On Wednesday 09 December 2015 16:12:24 Peter Chen wrote:
> >> On Tue, Dec 08, 2015 at 09:24:03PM -0600, Rob Herring wrote:
> >> > On Tue, Dec 08, 2015 at 10:58:48AM +0100, Arnd Bergmann wrote:
> >> > > On Tuesday 08 December 2015 10:50:49 Philipp Zabel wrote:
> >> > > > This something we don't have to define ad-hoc. The hub hangs off an USB
> >> > > > controller, right? The "Open Firmware recommended practice: USB"
> >> > > > document already describes how to represent USB devices in a generic
> >> > > > manner:
> >> > > > http://www.firmware.org/1275/bindings/usb/usb-1_0.ps
> >> > > >
> >> > > > Is there a reason not to reuse this?
> >> > > >
> >> > > > The usb hub node would be a child of the usb controller node, and it
> >> > > > could use
> >> > > > compatible = "usb,class9"; /* bDeviceClass 9 (Hub) */
> >> > >
> >> > > Good point, I had not thought of that when I looked at the patches.
> >> > >
> >> > > Yes, let's do this way. I don't know if we ever implemented the simple
> >> > > patch to associate a USB device with a device_node, but if not, then
> >> > > let's do it now for this driver. A lot of people have asked for it in
> >> > > the past.
> >> >
> >> > Agreed. Also, some hubs have I2C buses as well, but I still think under
> >> > the USB bus is the right place.
> >> >
> >> > However, one complication here is often (probably this case) these
> >> > addtional signals need to be controlled before the device enumerates.
> >> >
> >>
> >> Yes, I did not find a way to let the USB bus code handle it, so I had to
> >> write a platform driver to do it
> >
> > Looping in Ulf, he solved the same problem for SDIO devices recently,
> > and probably remembers the details best.
> >
>
> Thanks Arnd!
>
> Yes, that was a kind of a long outstanding issue we have had for SDIO devices.
>
> Several generic attempts was made to have a framework/library
> available to support so called "power sequences" for exactly the same
> reasons as above.
> Others and myself failed to get those attempts accepted.
>
> Instead, I invented a mmc subsystem specific DT based solution, the
> "mmc-pwrseq".
>
> DT documentation:
> Documentation/devicetree/bindings/mmc/mmc-pwrseq-simple.txt
> Documentation/devicetree/bindings/mmc/mmc.txt
>
> Long story short: The mmc host device may contain a phandle to a
> mmc-pwrseq, which will describe the resources needed to power on/off
> the SDIO card.
>
> The code is available at:
> drivers/mmc/core/pwrseq*
>
> We didn't implement this as platform driver, but that was mostly
> because I initially wanted things to be simple. Although, nothing
> prevents us from converting to this as a follow up, which would make
> the solution a bit less "hacky".
>
Thanks for your information, Ulf.
--
Best Regards,
Peter Chen
WARNING: multiple messages have this Message-ID (diff)
From: Peter Chen <peter.chen@freescale.com>
To: Ulf Hansson <ulf.hansson@linaro.org>
Cc: "Mark Rutland" <mark.rutland@arm.com>,
"Paweł Moll" <pawel.moll@arm.com>,
"Arnd Bergmann" <arnd@arndb.de>,
"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
"Greg Kroah-Hartman" <gregkh@linuxfoundation.org>,
linux-usb@vger.kernel.org, patryk@kowalczyk.ws,
"Alan Stern" <stern@rowland.harvard.edu>,
"Philipp Zabel" <p.zabel@pengutronix.de>,
"Shawn Guo" <shawnguo@kernel.org>,
"Fabio Estevam" <festevam@gmail.com>,
"Sascha Hauer" <kernel@pengutronix.de>,
"linux-arm-kernel@lists.infradead.org"
<linux-arm-kernel@lists.infradead.org>
Subject: Re: [PATCH 2/3] doc: dt-binding: generic onboard USB HUB
Date: Wed, 16 Dec 2015 10:46:32 +0800 [thread overview]
Message-ID: <20151216024631.GA23482@shlinux2> (raw)
In-Reply-To: <CAPDyKFrj_eMNXdBPi25cE0VcO8OQp=NspG8yT+EfSFsbOebuwg@mail.gmail.com>
On Tue, Dec 15, 2015 at 09:21:09PM +0100, Ulf Hansson wrote:
> On 9 December 2015 at 09:55, Arnd Bergmann <arnd@arndb.de> wrote:
> > On Wednesday 09 December 2015 16:12:24 Peter Chen wrote:
> >> On Tue, Dec 08, 2015 at 09:24:03PM -0600, Rob Herring wrote:
> >> > On Tue, Dec 08, 2015 at 10:58:48AM +0100, Arnd Bergmann wrote:
> >> > > On Tuesday 08 December 2015 10:50:49 Philipp Zabel wrote:
> >> > > > This something we don't have to define ad-hoc. The hub hangs off an USB
> >> > > > controller, right? The "Open Firmware recommended practice: USB"
> >> > > > document already describes how to represent USB devices in a generic
> >> > > > manner:
> >> > > > http://www.firmware.org/1275/bindings/usb/usb-1_0.ps
> >> > > >
> >> > > > Is there a reason not to reuse this?
> >> > > >
> >> > > > The usb hub node would be a child of the usb controller node, and it
> >> > > > could use
> >> > > > compatible = "usb,class9"; /* bDeviceClass 9 (Hub) */
> >> > >
> >> > > Good point, I had not thought of that when I looked at the patches.
> >> > >
> >> > > Yes, let's do this way. I don't know if we ever implemented the simple
> >> > > patch to associate a USB device with a device_node, but if not, then
> >> > > let's do it now for this driver. A lot of people have asked for it in
> >> > > the past.
> >> >
> >> > Agreed. Also, some hubs have I2C buses as well, but I still think under
> >> > the USB bus is the right place.
> >> >
> >> > However, one complication here is often (probably this case) these
> >> > addtional signals need to be controlled before the device enumerates.
> >> >
> >>
> >> Yes, I did not find a way to let the USB bus code handle it, so I had to
> >> write a platform driver to do it
> >
> > Looping in Ulf, he solved the same problem for SDIO devices recently,
> > and probably remembers the details best.
> >
>
> Thanks Arnd!
>
> Yes, that was a kind of a long outstanding issue we have had for SDIO devices.
>
> Several generic attempts was made to have a framework/library
> available to support so called "power sequences" for exactly the same
> reasons as above.
> Others and myself failed to get those attempts accepted.
>
> Instead, I invented a mmc subsystem specific DT based solution, the
> "mmc-pwrseq".
>
> DT documentation:
> Documentation/devicetree/bindings/mmc/mmc-pwrseq-simple.txt
> Documentation/devicetree/bindings/mmc/mmc.txt
>
> Long story short: The mmc host device may contain a phandle to a
> mmc-pwrseq, which will describe the resources needed to power on/off
> the SDIO card.
>
> The code is available at:
> drivers/mmc/core/pwrseq*
>
> We didn't implement this as platform driver, but that was mostly
> because I initially wanted things to be simple. Although, nothing
> prevents us from converting to this as a follow up, which would make
> the solution a bit less "hacky".
>
Thanks for your information, Ulf.
--
Best Regards,
Peter Chen
next prev parent reply other threads:[~2015-12-16 2:46 UTC|newest]
Thread overview: 70+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-12-08 1:37 [PATCH 0/3] USB: add generic onboard USB HUB driver Peter Chen
2015-12-08 1:37 ` Peter Chen
2015-12-08 1:37 ` [PATCH 1/3] usb: misc: generic_onboard_hub: " Peter Chen
2015-12-08 1:37 ` Peter Chen
2015-12-08 2:59 ` Felipe Balbi
2015-12-08 2:59 ` Felipe Balbi
2015-12-08 9:18 ` Peter Chen
2015-12-08 9:18 ` Peter Chen
2015-12-08 13:55 ` Felipe Balbi
2015-12-08 13:55 ` Felipe Balbi
2015-12-09 8:45 ` Peter Chen
2015-12-09 8:45 ` Peter Chen
2015-12-08 3:16 ` kbuild test robot
2015-12-08 3:16 ` kbuild test robot
2015-12-08 9:36 ` Peter Chen
2015-12-08 9:36 ` Peter Chen
2015-12-08 6:19 ` Sascha Hauer
2015-12-08 6:19 ` Sascha Hauer
2015-12-08 9:26 ` Peter Chen
2015-12-08 9:26 ` Peter Chen
2015-12-08 9:44 ` Sascha Hauer
2015-12-08 9:44 ` Sascha Hauer
2015-12-09 8:23 ` Peter Chen
2015-12-09 8:23 ` Peter Chen
2015-12-08 9:48 ` Arnd Bergmann
2015-12-08 9:48 ` Arnd Bergmann
2015-12-09 8:14 ` Peter Chen
2015-12-09 8:14 ` Peter Chen
2015-12-08 15:36 ` Mathieu Poirier
2015-12-08 15:36 ` Mathieu Poirier
2015-12-09 8:50 ` Peter Chen
2015-12-09 8:50 ` Peter Chen
2015-12-09 8:57 ` Lucas Stach
2015-12-09 8:57 ` Lucas Stach
2015-12-09 9:00 ` Peter Chen
2015-12-09 9:00 ` Peter Chen
2015-12-09 9:13 ` Lucas Stach
2015-12-09 9:13 ` Lucas Stach
2015-12-09 9:29 ` Peter Chen
2015-12-09 9:29 ` Peter Chen
2015-12-09 9:10 ` Arnd Bergmann
2015-12-09 9:10 ` Arnd Bergmann
2015-12-09 9:08 ` Peter Chen
2015-12-09 9:08 ` Peter Chen
2015-12-08 1:37 ` [PATCH 2/3] doc: dt-binding: generic onboard USB HUB Peter Chen
2015-12-08 1:37 ` Peter Chen
2015-12-08 2:30 ` Fabio Estevam
2015-12-08 2:30 ` Fabio Estevam
2015-12-08 9:20 ` Peter Chen
2015-12-08 9:20 ` Peter Chen
2015-12-08 9:45 ` Arnd Bergmann
2015-12-08 9:45 ` Arnd Bergmann
2015-12-08 9:50 ` Philipp Zabel
2015-12-08 9:50 ` Philipp Zabel
2015-12-08 9:58 ` Arnd Bergmann
2015-12-08 9:58 ` Arnd Bergmann
2015-12-09 3:24 ` Rob Herring
2015-12-09 3:24 ` Rob Herring
2015-12-09 8:12 ` Peter Chen
2015-12-09 8:12 ` Peter Chen
2015-12-09 8:55 ` Arnd Bergmann
2015-12-09 8:55 ` Arnd Bergmann
2015-12-15 20:21 ` Ulf Hansson
2015-12-15 20:21 ` Ulf Hansson
2015-12-16 2:46 ` Peter Chen [this message]
2015-12-16 2:46 ` Peter Chen
2015-12-09 8:09 ` Peter Chen
2015-12-09 8:09 ` Peter Chen
2015-12-08 1:37 ` [PATCH 3/3] ARM: dts: imx6qdl-udoo.dtsi: fix onboard USB HUB property Peter Chen
2015-12-08 1:37 ` Peter Chen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20151216024631.GA23482@shlinux2 \
--to=peter.chen@freescale.com \
--cc=linux-arm-kernel@lists.infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.