All of lore.kernel.org
 help / color / mirror / Atom feed
From: swarren@wwwdotorg.org (Stephen Warren)
To: linux-arm-kernel@lists.infradead.org
Subject: [Patch v5 08/13] ARM: imx6q: add config-on-boot gpios
Date: Wed, 20 Jun 2012 09:41:26 -0600	[thread overview]
Message-ID: <4FE1EF26.9080401@wwwdotorg.org> (raw)
In-Reply-To: <4FE1DE53.4070202@gmail.com>

On 06/20/2012 08:29 AM, Rob Herring wrote:
> On 06/13/2012 08:33 PM, Richard Zhao wrote:
>> On Wed, Jun 13, 2012 at 11:50:35AM -0500, Rob Herring wrote:
>>> On 06/13/2012 10:28 AM, Richard Zhao wrote:
>>>> On Wed, Jun 13, 2012 at 10:09:54AM -0500, Rob Herring wrote:
>>>>> On 06/13/2012 07:34 AM, Richard Zhao wrote:
>>>>>> Sometimes, boards have gpios that don't own by any driver or owner
>>>>>> by a generic driver that don't like hacks. Such gpios is normally
>>>>>> output and need setup once on boot. So I introduce the config-on-boot
>>>>>> gpios.
...
>>>>>> diff --git a/Documentation/devicetree/bindings/arm/config-on-boot.txt b/Documentation/devicetree/bindings/arm/config-on-boot.txt
...
>>>>>> +Node name: config-on-boot
>>>>>> +  It must be in root node. config-on-boot means to describe settings that needs
>>>>>> +  to be set one time on boot but aren't owned by any driver, or the owned driver
>>>>>> +  is too generic to handle such settings. For example, usb hub uses generic
>>>>>> +  driver in usb core code, a on-board usb may need deassert reset pin.
>>>>>
>>>>> NAK. This is not a h/w description
...
>>> You need to describe that you have a hub on the usb bus and add the gpio
>>> line to that node. Just like PCI is probe-able, you still need DT nodes
>>> sometimes for cases like this.
>>
>> PCI has dev id and may add quirks. But for embedded, I don't know how
>> to connect a of node to a hub device enumerated by usb core code. And
>> it may also pollute the usb core code.
> 
> USB also uses device and manufacturer ids. One of the main reasons for
> putting pci devices into dts is to describe out of band signals just
> like this.
> 
> Creating a binding and support code for full usb bus topology would be a
> lot of work which is why I propose a simpler approach below.
> 
>>> A simpler approach would be to just add
>>> the gpio to the ehci controller node, but that's not exactly correct.
>> That's exactly why this patch comes out.
> 
> I mean just something like "fsl,hub-reset-gpios" in the ehci device
> node. It's at least under a usb node. Whether the ehci driver handles
> this or you just have a separate piece of code to find this property and
> setup the gpio is up to you.

I haven't been following the thread, but just noticed it. Very similar
things (DT nodes for probed devices) are coming up quite a bit recently,
for example:

Re: Where to power on the wifi device before loading the driver.
http://www.spinics.net/lists/arm-kernel/msg180368.html

dt: rfkill-gpio: add bindings documentation
http://www.spinics.net/lists/linux-tegra/msg03977.html

I wonder if there's any kind of infra-structure or standardized bindings
that would be useful here?

WARNING: multiple messages have this Message-ID (diff)
From: Stephen Warren <swarren-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
To: Rob Herring <robherring2-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
Cc: Richard Zhao
	<richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org>,
	marex-ynQEQJNshbs@public.gmane.org,
	B20596-KZfg59tc24xl57MIdRCFDg@public.gmane.org,
	fabio.estevam-KZfg59tc24xl57MIdRCFDg@public.gmane.org,
	alexander.shishkin-VuQAYsv1563Yd54FQh9/CA@public.gmane.org,
	B29397-KZfg59tc24xl57MIdRCFDg@public.gmane.org,
	devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org,
	linux-usb-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	balbi-l0cyMroinI0@public.gmane.org,
	stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz@public.gmane.org,
	kernel-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org,
	gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r@public.gmane.org,
	dong.aisheng-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org,
	linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org,
	Richard Zhao <linuxzsc-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
Subject: Re: [Patch v5 08/13] ARM: imx6q: add config-on-boot gpios
Date: Wed, 20 Jun 2012 09:41:26 -0600	[thread overview]
Message-ID: <4FE1EF26.9080401@wwwdotorg.org> (raw)
In-Reply-To: <4FE1DE53.4070202-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>

On 06/20/2012 08:29 AM, Rob Herring wrote:
> On 06/13/2012 08:33 PM, Richard Zhao wrote:
>> On Wed, Jun 13, 2012 at 11:50:35AM -0500, Rob Herring wrote:
>>> On 06/13/2012 10:28 AM, Richard Zhao wrote:
>>>> On Wed, Jun 13, 2012 at 10:09:54AM -0500, Rob Herring wrote:
>>>>> On 06/13/2012 07:34 AM, Richard Zhao wrote:
>>>>>> Sometimes, boards have gpios that don't own by any driver or owner
>>>>>> by a generic driver that don't like hacks. Such gpios is normally
>>>>>> output and need setup once on boot. So I introduce the config-on-boot
>>>>>> gpios.
...
>>>>>> diff --git a/Documentation/devicetree/bindings/arm/config-on-boot.txt b/Documentation/devicetree/bindings/arm/config-on-boot.txt
...
>>>>>> +Node name: config-on-boot
>>>>>> +  It must be in root node. config-on-boot means to describe settings that needs
>>>>>> +  to be set one time on boot but aren't owned by any driver, or the owned driver
>>>>>> +  is too generic to handle such settings. For example, usb hub uses generic
>>>>>> +  driver in usb core code, a on-board usb may need deassert reset pin.
>>>>>
>>>>> NAK. This is not a h/w description
...
>>> You need to describe that you have a hub on the usb bus and add the gpio
>>> line to that node. Just like PCI is probe-able, you still need DT nodes
>>> sometimes for cases like this.
>>
>> PCI has dev id and may add quirks. But for embedded, I don't know how
>> to connect a of node to a hub device enumerated by usb core code. And
>> it may also pollute the usb core code.
> 
> USB also uses device and manufacturer ids. One of the main reasons for
> putting pci devices into dts is to describe out of band signals just
> like this.
> 
> Creating a binding and support code for full usb bus topology would be a
> lot of work which is why I propose a simpler approach below.
> 
>>> A simpler approach would be to just add
>>> the gpio to the ehci controller node, but that's not exactly correct.
>> That's exactly why this patch comes out.
> 
> I mean just something like "fsl,hub-reset-gpios" in the ehci device
> node. It's at least under a usb node. Whether the ehci driver handles
> this or you just have a separate piece of code to find this property and
> setup the gpio is up to you.

I haven't been following the thread, but just noticed it. Very similar
things (DT nodes for probed devices) are coming up quite a bit recently,
for example:

Re: Where to power on the wifi device before loading the driver.
http://www.spinics.net/lists/arm-kernel/msg180368.html

dt: rfkill-gpio: add bindings documentation
http://www.spinics.net/lists/linux-tegra/msg03977.html

I wonder if there's any kind of infra-structure or standardized bindings
that would be useful here?
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

  parent reply	other threads:[~2012-06-20 15:41 UTC|newest]

Thread overview: 132+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-06-13 12:34 [Patch v5 00/13] add imx usb driver for mx28/6x Richard Zhao
2012-06-13 12:34 ` Richard Zhao
2012-06-13 12:34 ` [Patch v5 01/13] usb: otg: add notify_connect/notify_disconnect callback Richard Zhao
2012-06-13 12:34   ` Richard Zhao
2012-06-13 12:34 ` [Patch v5 02/13] USB: move transceiver from ehci_hcd and ohci_hcd to hcd and rename it as phy Richard Zhao
2012-06-13 12:34   ` Richard Zhao
2012-06-13 18:17   ` Alan Stern
2012-06-13 18:17     ` Alan Stern
2012-06-13 12:34 ` [Patch v5 03/13] USB: notify phy when root hub port connect change Richard Zhao
2012-06-13 12:34   ` Richard Zhao
2012-06-13 18:25   ` Alan Stern
2012-06-13 18:25     ` Alan Stern
2012-06-14  0:36     ` Richard Zhao
2012-06-14  0:36       ` Richard Zhao
2012-06-14 14:11       ` Alan Stern
2012-06-14 14:11         ` Alan Stern
2012-06-13 12:34 ` [Patch v5 04/13] usb: chipidea: permit driver bindings pass phy pointer Richard Zhao
2012-06-13 12:34   ` Richard Zhao
2012-06-13 12:34 ` [Patch v5 05/13] usb: otg: add basic mxs phy driver support Richard Zhao
2012-06-13 12:34   ` Richard Zhao
2012-06-13 21:33   ` Sascha Hauer
2012-06-13 21:33     ` Sascha Hauer
2012-06-13 21:56     ` Marek Vasut
2012-06-13 21:56       ` Marek Vasut
2012-06-13 22:03       ` Sascha Hauer
2012-06-13 22:03         ` Sascha Hauer
2012-06-14  1:12       ` Richard Zhao
2012-06-14  1:12         ` Richard Zhao
2012-06-13 12:34 ` [Patch v5 06/13] usb: chipidea: add imx platform driver Richard Zhao
2012-06-13 12:34   ` Richard Zhao
2012-06-13 21:46   ` Sascha Hauer
2012-06-13 21:46     ` Sascha Hauer
2012-06-13 21:57     ` Marek Vasut
2012-06-13 21:57       ` Marek Vasut
2012-06-13 22:07       ` Sascha Hauer
2012-06-13 22:07         ` Sascha Hauer
2012-06-14  1:21         ` Richard Zhao
2012-06-14  1:21           ` Richard Zhao
2012-06-14  1:56     ` Richard Zhao
2012-06-14  1:56       ` Richard Zhao
2012-06-13 12:34 ` [Patch v5 07/13] ARM: imx6q: correct device name of usbphy and usb controller clock export Richard Zhao
2012-06-13 12:34   ` Richard Zhao
2012-06-13 12:34 ` [Patch v5 08/13] ARM: imx6q: add config-on-boot gpios Richard Zhao
2012-06-13 12:34   ` Richard Zhao
2012-06-13 15:09   ` Rob Herring
2012-06-13 15:09     ` Rob Herring
2012-06-13 15:19     ` Marek Vasut
2012-06-13 15:19       ` Marek Vasut
2012-06-13 16:45       ` Rob Herring
2012-06-13 16:45         ` Rob Herring
2012-06-13 17:15         ` Marek Vasut
2012-06-13 17:15           ` Marek Vasut
2012-06-13 15:28     ` Richard Zhao
2012-06-13 15:28       ` Richard Zhao
2012-06-13 16:00       ` Marek Vasut
2012-06-13 16:00         ` Marek Vasut
2012-06-15 15:34         ` Shawn Guo
2012-06-15 15:34           ` Shawn Guo
2012-06-13 16:50       ` Rob Herring
2012-06-13 16:50         ` Rob Herring
2012-06-14  1:33         ` Richard Zhao
2012-06-14  1:33           ` Richard Zhao
2012-06-20 14:29           ` Rob Herring
2012-06-20 14:29             ` Rob Herring
2012-06-20 15:05             ` Shawn Guo
2012-06-20 15:05               ` Shawn Guo
2012-06-21 21:32               ` Rob Herring
2012-06-21 21:32                 ` Rob Herring
2012-06-20 15:41             ` Stephen Warren [this message]
2012-06-20 15:41               ` Stephen Warren
2012-06-21  1:32               ` Chen Peter-B29397
2012-06-21  1:32                 ` Chen Peter-B29397
2012-06-21 22:22                 ` Stephen Warren
2012-06-21 22:22                   ` Stephen Warren
2012-06-22  0:03                   ` Chen Peter-B29397
2012-06-22  0:03                     ` Chen Peter-B29397
2012-06-25 15:43                     ` Stephen Warren
2012-06-25 15:43                       ` Stephen Warren
2012-06-26  2:05                       ` Chen Peter-B29397
2012-06-26  2:05                         ` Chen Peter-B29397
2012-06-19 23:36   ` Fabio Estevam
2012-06-19 23:36     ` Fabio Estevam
2012-06-19 23:41     ` Richard Zhao
2012-06-19 23:41       ` Richard Zhao
2012-07-17 12:30   ` Dirk Behme
2012-07-17 12:30     ` Dirk Behme
2012-07-19  2:15     ` Richard Zhao
2012-07-19  2:15       ` Richard Zhao
2012-06-13 12:34 ` [Patch v5 09/13] ARM: imx6q: add usbphy clocks Richard Zhao
2012-06-13 12:34   ` Richard Zhao
2012-06-13 21:54   ` Sascha Hauer
2012-06-13 21:54     ` Sascha Hauer
2012-06-14  0:15     ` Chen Peter-B29397
2012-06-14  0:15       ` Chen Peter-B29397
2012-06-13 12:34 ` [Patch v5 10/13] ARM: imx6q: disable usb charger detector Richard Zhao
2012-06-13 12:34   ` Richard Zhao
2012-06-13 12:34 ` [Patch v5 11/13] ARM: dts: imx6q-sabrelite: add usb devices Richard Zhao
2012-06-13 12:34   ` Richard Zhao
2012-06-19 23:39   ` Fabio Estevam
2012-06-19 23:39     ` Fabio Estevam
2012-06-13 12:34 ` [Patch v5 12/13] ARM: mxs: clk_register_clkdev mx28 usb clocks Richard Zhao
2012-06-13 12:34   ` Richard Zhao
2012-06-13 12:34 ` [Patch v5 13/13] ARM: dts: imx28-evk: add usb devices Richard Zhao
2012-06-13 12:34   ` Richard Zhao
2012-06-18 17:10 ` [Patch v5 00/13] add imx usb driver for mx28/6x Fabio Estevam
2012-06-18 17:10   ` Fabio Estevam
2012-06-18 17:13   ` Marek Vasut
2012-06-18 17:13     ` Marek Vasut
2012-06-18 17:25     ` Fabio Estevam
2012-06-18 17:25       ` Fabio Estevam
2012-06-19  1:14       ` Chen Peter-B29397
2012-06-19  1:14         ` Chen Peter-B29397
2012-06-19  1:33         ` Fabio Estevam
2012-06-19  1:33           ` Fabio Estevam
2012-06-19  2:07           ` Marek Vasut
2012-06-19  2:07             ` Marek Vasut
2012-06-19  2:17             ` Fabio Estevam
2012-06-19  2:17               ` Fabio Estevam
2012-06-19  6:14       ` Shawn Guo
2012-06-19  6:14         ` Shawn Guo
2012-06-19 12:24         ` Fabio Estevam
2012-06-19 12:24           ` Fabio Estevam
2012-06-19 12:38           ` Shawn Guo
2012-06-19 12:38             ` Shawn Guo
2012-06-19 13:54             ` Fabio Estevam
2012-06-19 13:54               ` Fabio Estevam
2012-06-19 18:34               ` Fabio Estevam
2012-06-19 18:34                 ` Fabio Estevam
2012-06-19 19:03                 ` Dirk Behme
2012-06-19 12:59           ` Marek Vasut
2012-06-19 12:59             ` Marek Vasut
2012-06-20 17:53 ` Subodh Nijsure

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=4FE1EF26.9080401@wwwdotorg.org \
    --to=swarren@wwwdotorg.org \
    --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.