linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: robherring2@gmail.com (Rob Herring)
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:29:39 -0500	[thread overview]
Message-ID: <4FE1DE53.4070202@gmail.com> (raw)
In-Reply-To: <20120614013343.GD29684@b20223-02.ap.freescale.net>

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.
>>>>>
>>>>> Signed-off-by: Richard Zhao <richard.zhao@freescale.com>
>>>>> Cc: Shawn Guo <shawn.guo@linaro.org>
>>>>> Cc: Rob Herring <rob.herring@calxeda.com>
>>>>> Cc: Grant Likely <grant.likely@secretlab.ca>
>>>>> ---
>>>>>  .../devicetree/bindings/arm/config-on-boot.txt     |   12 +++++++
>>>>>  arch/arm/boot/dts/imx6q-sabrelite.dts              |    7 ++++
>>>>>  arch/arm/mach-imx/mach-imx6q.c                     |   35 ++++++++++++++++++++
>>>>>  3 files changed, 54 insertions(+)
>>>>>  create mode 100644 Documentation/devicetree/bindings/arm/config-on-boot.txt
>>>>>
>>>>> diff --git a/Documentation/devicetree/bindings/arm/config-on-boot.txt b/Documentation/devicetree/bindings/arm/config-on-boot.txt
>>>>> new file mode 100644
>>>>> index 0000000..f98ed74
>>>>> --- /dev/null
>>>>> +++ b/Documentation/devicetree/bindings/arm/config-on-boot.txt
>>>>> @@ -0,0 +1,12 @@
>>>>> +* Configure on Boot
>>>>> +
>>>>> +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
>>> It's misc things, but is hw description.
>>
>> You are defining something based on whether linux has a driver or not.
>> That should not matter to DT. That's backwards.
> I just define the board needs some misc settings. If you think
> config-on-boot is not good, we can name it like config-misc.

Even worse.

>>
>>>> and should be solved within the
>>>> kernel or bootloader. Either fix this in u-boot,
>>> Kernel might be better not to depend on uboot.
>>>> the platform code, or
>>> How do I get gpio in platfrom code without dts description?
>>>> make the generic driver support this in a generic way.
>>> It's called just after populate devices. It's hard for generic driver to
>>> decide when it's called.
>>
>> 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.

Rob

  reply	other threads:[~2012-06-20 14:29 UTC|newest]

Thread overview: 67+ 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 ` [Patch v5 01/13] usb: otg: add notify_connect/notify_disconnect callback 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 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 18:25   ` Alan Stern
2012-06-14  0:36     ` Richard Zhao
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 ` [Patch v5 05/13] usb: otg: add basic mxs phy driver support Richard Zhao
2012-06-13 21:33   ` Sascha Hauer
2012-06-13 21:56     ` Marek Vasut
2012-06-13 22:03       ` Sascha Hauer
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 21:46   ` Sascha Hauer
2012-06-13 21:57     ` Marek Vasut
2012-06-13 22:07       ` Sascha Hauer
2012-06-14  1:21         ` 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 ` [Patch v5 08/13] ARM: imx6q: add config-on-boot gpios Richard Zhao
2012-06-13 15:09   ` Rob Herring
2012-06-13 15:19     ` Marek Vasut
2012-06-13 16:45       ` Rob Herring
2012-06-13 17:15         ` Marek Vasut
2012-06-13 15:28     ` Richard Zhao
2012-06-13 16:00       ` Marek Vasut
2012-06-15 15:34         ` Shawn Guo
2012-06-13 16:50       ` Rob Herring
2012-06-14  1:33         ` Richard Zhao
2012-06-20 14:29           ` Rob Herring [this message]
2012-06-20 15:05             ` Shawn Guo
2012-06-21 21:32               ` Rob Herring
2012-06-20 15:41             ` Stephen Warren
2012-06-21  1:32               ` Chen Peter-B29397
2012-06-21 22:22                 ` Stephen Warren
2012-06-22  0:03                   ` Chen Peter-B29397
2012-06-25 15:43                     ` Stephen Warren
2012-06-26  2:05                       ` Chen Peter-B29397
2012-06-19 23:36   ` Fabio Estevam
2012-06-19 23:41     ` Richard Zhao
2012-07-17 12:30   ` Dirk Behme
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 21:54   ` Sascha Hauer
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 ` [Patch v5 11/13] ARM: dts: imx6q-sabrelite: add usb devices Richard Zhao
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 ` [Patch v5 13/13] ARM: dts: imx28-evk: add usb devices Richard Zhao
2012-06-18 17:10 ` [Patch v5 00/13] add imx usb driver for mx28/6x Fabio Estevam
2012-06-18 17:13   ` Marek Vasut
2012-06-18 17:25     ` Fabio Estevam
2012-06-19  1:14       ` Chen Peter-B29397
2012-06-19  1:33         ` Fabio Estevam
2012-06-19  2:07           ` Marek Vasut
2012-06-19  2:17             ` Fabio Estevam
2012-06-19  6:14       ` Shawn Guo
2012-06-19 12:24         ` Fabio Estevam
2012-06-19 12:38           ` Shawn Guo
2012-06-19 13:54             ` 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-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=4FE1DE53.4070202@gmail.com \
    --to=robherring2@gmail.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 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).