linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: stephen.boyd@linaro.org (Stephen Boyd)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v2 03/22] usb: ulpi: Support device discovery via device properties
Date: Tue, 23 Aug 2016 18:06:31 -0700	[thread overview]
Message-ID: <CAJOFmgy5KLrjZ_8XBGH7V8M4gMdVWo0sCVhbTpv1CsCaxdujnQ@mail.gmail.com> (raw)
In-Reply-To: <CAL_JsqKPgVEr8zuaO7f8NczuxdCqa9ceg+PnVpOBxiT=Lr79eA@mail.gmail.com>

On Tue, Aug 23, 2016 at 4:06 PM, Rob Herring <robh@kernel.org> wrote:
> On Tue, Aug 23, 2016 at 3:00 PM, Stephen Boyd <stephen.boyd@linaro.org> wrote:
>> On Fri, Aug 5, 2016 at 2:40 PM, Stephen Boyd <stephen.boyd@linaro.org> wrote:
>>> Quoting Rob Herring (2016-07-17 19:23:55)
>>>> On Thu, Jul 07, 2016 at 03:20:54PM -0700, Stephen Boyd wrote:
>>>> > +-------
>>>> > +
>>>> > +usb {
>>>> > +     compatible = "vendor,usb-controller";
>>>> > +
>>>> > +     ulpi {
>>>> > +             phy {
>>>> > +                     compatible = "vendor,phy";
>>>> > +                     ulpi-vendor = /bits/ 16 <0x1d6b>;
>>>> > +                     ulpi-product = /bits/ 16 <0x0002>;
>>>> > +             };
>>>> > +     };
>>>>
>>>> I'm still having concerns about describing both phys and devices. If I
>>>> have a controller with 2 ports and 2 devices attached, I'd have
>>>> something like this under the USB controller:
>>>>
>>>> ulpi {
>>>>         phy at 1 {
>>>>         };
>>>>         phy at 2 {
>>>>         };
>>>> };
>>>
>>> My understanding is there would only be one status="ok" node on the ULPI
>>> bus for the single phy that a usb controller would have. At the least,
>>> the kernel's ULPI layer only seems to support one ULPI phy for a
>>> controller right now. So even if there are two ports, it doesn't mean
>>> there are two phys.
>>>
>>>>
>>>> dev at 1 {
>>>> ...
>>>> };
>>>>
>>>> dev at 2 {
>>>> ...
>>>> };
>>>>
>>>>
>>>> That doesn't seem the best, but I don't have a better suggestion. Maybe
>>>> the device nodes need to go under the phy nodes?
>>>>
>>>
>>> What if we moved the dev at 1 and dev at 2 to another sub node like "ports" or
>>> "usb-devices"? Legacy code can support having those devices directly
>>> underneath the usb controller, but future users would always need to put
>>> them in a different sub-node so that we can easily differentiate the
>>> different busses that a usb controller node may support?
>>>
>>> I'm not sure I see any need to relate the phy to the ports that are on
>>> the controller, but if that is needed then perhaps you're right and we
>>> should move the ports underneath the phy. USB core could be modified to
>>> go through the legacy path or through the phy, if it even exists, to
>>> find ports.
>>>
>>> Do we typically do this for other phy designs like sata or pci? The phy
>>> always seemed like a parallel thing to the logical bus that the phy is
>>> used for.
>>
>> Rob does this sound ok to you?
>
> Well, if there's only ever 1 phy under the controller, then as you had
> it is fine.
>

Ok. For ULPI I believe that's the case, but in general usb controllers
can have more than one phy.

  reply	other threads:[~2016-08-24  1:06 UTC|newest]

Thread overview: 65+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-07-07 22:20 [PATCH v2 00/22] Support qcom's HSIC USB and rewrite USB2 HS phy support Stephen Boyd
2016-07-07 22:20 ` [PATCH v2 01/22] of: device: Support loading a module with OF based modalias Stephen Boyd
2016-07-07 22:20 ` [PATCH v2 02/22] of: device: Export of_device_{get_modalias, uvent_modalias} to modules Stephen Boyd
2016-07-07 22:20 ` [PATCH v2 03/22] usb: ulpi: Support device discovery via device properties Stephen Boyd
2016-07-08  9:04   ` Peter Chen
2016-08-05 21:27     ` Stephen Boyd
2016-08-23 19:58       ` Stephen Boyd
2016-08-24  7:31         ` Heikki Krogerus
2016-08-26 18:54           ` Stephen Boyd
2016-07-18  2:23   ` Rob Herring
2016-08-05 21:40     ` Stephen Boyd
2016-08-23 20:00       ` Stephen Boyd
2016-08-23 23:06         ` Rob Herring
2016-08-24  1:06           ` Stephen Boyd [this message]
2016-07-07 22:20 ` [PATCH v2 04/22] usb: chipidea: Only read/write OTGSC from one place Stephen Boyd
2016-07-08  9:14   ` Peter Chen
2016-08-05 21:41     ` Stephen Boyd
2016-08-06  7:42       ` Peter Chen
2016-07-07 22:20 ` [PATCH v2 05/22] usb: chipidea: Handle extcon events properly Stephen Boyd
2016-07-07 22:20 ` [PATCH v2 06/22] usb: chipidea: Add platform flag for wrapper phy management Stephen Boyd
2016-07-08  9:25   ` Peter Chen
2016-08-05 21:46     ` Stephen Boyd
2016-08-06  7:59       ` Peter Chen
2016-08-08 23:46         ` Stephen Boyd
2016-08-09  0:36           ` Peter Chen
2016-07-07 22:20 ` [PATCH v2 07/22] usb: chipidea: Notify events when switching host mode Stephen Boyd
2016-07-08  9:29   ` Peter Chen
2016-07-07 22:20 ` [PATCH v2 08/22] usb: chipidea: Remove locking in ci_udc_start() Stephen Boyd
2016-07-08  9:45   ` Peter Chen
2016-08-05 21:53     ` Stephen Boyd
2016-08-06  7:54       ` Peter Chen
2016-08-08 23:47         ` Stephen Boyd
2016-08-09  0:42           ` Peter Chen
2016-07-07 22:21 ` [PATCH v2 09/22] usb: chipidea: Kick OTG state machine for AVVIS with vbus extcon Stephen Boyd
2016-07-11  2:25   ` Peter Chen
2016-07-07 22:21 ` [PATCH v2 10/22] usb: chipidea: Add support for ULPI PHY bus Stephen Boyd
2016-07-11  3:10   ` Peter Chen
2016-07-11 22:02     ` Stephen Boyd
2016-07-07 22:21 ` [PATCH v2 11/22] usb: chipidea: msm: Mark device as runtime pm active Stephen Boyd
2016-07-11  3:19   ` Peter Chen
2016-07-07 22:21 ` [PATCH v2 12/22] usb: chipidea: msm: Rely on core to override AHBBURST Stephen Boyd
2016-07-11  3:24   ` Peter Chen
2016-07-07 22:21 ` [PATCH v2 13/22] usb: chipidea: msm: Use hw_write_id_reg() instead of writel Stephen Boyd
2016-07-07 22:21 ` [PATCH v2 14/22] usb: chipidea: msm: Add proper clk and reset support Stephen Boyd
2016-07-11  4:32   ` Peter Chen
2016-07-07 22:21 ` [PATCH v2 15/22] usb: chipidea: msm: Mux over secondary phy at the right time Stephen Boyd
2016-07-11  4:43   ` Peter Chen
2016-07-11 22:03     ` Stephen Boyd
2016-07-12  1:07       ` Peter Chen
2016-07-07 22:21 ` [PATCH v2 16/22] usb: chipidea: msm: Restore wrapper settings after reset Stephen Boyd
2016-07-11  5:24   ` Peter Chen
2016-07-07 22:21 ` [PATCH v2 17/22] usb: chipidea: msm: Make platform data driver local instead of global Stephen Boyd
2016-07-11  5:26   ` Peter Chen
2016-07-07 22:21 ` [PATCH v2 18/22] usb: chipidea: msm: Add reset controller for PHY POR bit Stephen Boyd
2016-07-11  5:32   ` Peter Chen
2016-07-11 22:07     ` Stephen Boyd
2016-07-12  1:09       ` Peter Chen
2016-07-07 22:21 ` [PATCH v2 19/22] usb: chipidea: msm: Handle phy power states Stephen Boyd
2016-07-11  5:38   ` Peter Chen
2016-07-07 22:21 ` [PATCH v2 20/22] usb: chipidea: msm: Be silent on probe defer errors Stephen Boyd
2016-07-11  5:39   ` Peter Chen
2016-07-07 22:21 ` [PATCH v2 21/22] phy: Add support for Qualcomm's USB HSIC phy Stephen Boyd
2016-07-18  2:27   ` Rob Herring
2016-07-07 22:21 ` [PATCH v2 22/22] phy: Add support for Qualcomm's USB HS phy Stephen Boyd
2016-07-18  2:28   ` Rob Herring

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=CAJOFmgy5KLrjZ_8XBGH7V8M4gMdVWo0sCVhbTpv1CsCaxdujnQ@mail.gmail.com \
    --to=stephen.boyd@linaro.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 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).