linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Rob Herring <robh+dt@kernel.org>
To: Felipe Balbi <balbi@kernel.org>
Cc: John Stultz <john.stultz@linaro.org>,
	lkml <linux-kernel@vger.kernel.org>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Mark Rutland <mark.rutland@arm.com>,
	ShuFan Lee <shufan_lee@richtek.com>,
	Heikki Krogerus <heikki.krogerus@linux.intel.com>,
	Suzuki K Poulose <suzuki.poulose@arm.com>,
	Chunfeng Yun <chunfeng.yun@mediatek.com>,
	Yu Chen <chenyu56@huawei.com>,
	Hans de Goede <hdegoede@redhat.com>,
	Andy Shevchenko <andy.shevchenko@gmail.com>,
	Jun Li <lijun.kernel@gmail.com>,
	Valentin Schneider <valentin.schneider@arm.com>,
	Jack Pham <jackp@codeaurora.org>,
	Linux USB List <linux-usb@vger.kernel.org>,
	"open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS" 
	<devicetree@vger.kernel.org>
Subject: Re: [PATCH v4 6/9] usb: dwc3: Rework resets initialization to be more flexible
Date: Thu, 7 Nov 2019 15:45:12 -0600	[thread overview]
Message-ID: <CAL_JsqL5_6vLJ4sfaNr=76S8kDWEpfKT05xaLktqFM_xH3puGA@mail.gmail.com> (raw)
In-Reply-To: <87k18mhaiq.fsf@gmail.com>

On Wed, Oct 30, 2019 at 4:01 AM Felipe Balbi <balbi@kernel.org> wrote:
>
>
> Hi,
>
> John Stultz <john.stultz@linaro.org> writes:
>
> > On Tue, Oct 29, 2019 at 2:17 AM Felipe Balbi <balbi@kernel.org> wrote:
> >> John Stultz <john.stultz@linaro.org> writes:
> >> > The dwc3 core binding specifies one reset.
> >> >
> >> > However some variants of the hardware my not have more.
> >>                                         ^^
> >>                                         may
> >>
> >> According to synopsys databook, there's a single *input* reset signal on
> >> this IP. What is this extra reset you have?
> >>
> >> Is this, perhaps, specific to your glue layer around the synopsys ip?
> >
> > Likely (again, I unfortunately don't have a ton of detail on the hardware).
> >
> >> Should, perhaps, your extra reset be managed by the glue layer?

An extra clock or reset is a silly reason to have a whole other node
and driver. If there's additional blocks and registers, then yes a
glue node makes sense.

> > So yes the dwc3-of-simple does much of this already (it handles
> > multiple resets, and variable clocks), but unfortunately we seem to
> > need new bindings for each device added?  I think the suggestion from
> > Rob was due to the sprawl of bindings for the glue code, and the extra
> > complexity of the parent node.  So I believe Rob just thought it made
> > sense to collapse this down into the core?
> >
> > I'm not really passionate about either approach, and am happy to
> > rework (as long as there is eventual progress :).
> > Just let me know what you'd prefer.
>
> Well, I was under the impression we were supposed to describe the
> HW. Synopsys IP has a single reset input :-p

John is. His chip requires 2 resets to use the USB block and the
compatible provides that distinction. Maybe HiSilicon has a newer or
customized IP version that has 2 resets. The block could have external
RAMs (because every process has its own) which may have their own
reset. With NDA specifications and little knowledge of the full
revision history, we can really never know. Also, omitting clocks and
resets from the dwc3 node entirely is just as much not describing the
h/w (only the glue needs clocks?).

This block is the oddball. I think there's 1 or 2 other blocks where
this glue node was done, but please stop. If we did this every time
there's a variation in clocks or resets, we'd pretty much have glue
nodes everywhere.

Rob

  reply	other threads:[~2019-11-07 21:45 UTC|newest]

Thread overview: 53+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-10-28 21:59 [PATCH v4 0/9] Prereqs for HiKey960 USB support John Stultz
2019-10-28 21:59 ` [PATCH v4 1/9] dt-bindings: usb: rt1711h: Add connector bindings John Stultz
2019-10-28 21:59 ` [PATCH v4 2/9] usb: dwc3: Execute GCTL Core Soft Reset while switch modes John Stultz
2019-10-29  9:09   ` Felipe Balbi
2019-10-29 21:21     ` John Stultz
2019-10-28 21:59 ` [PATCH v4 3/9] usb: dwc3: Increase timeout for CmdAct cleared by device controller John Stultz
2019-10-29  9:11   ` Felipe Balbi
2019-10-29 21:17     ` John Stultz
2020-05-06  9:00       ` Jun Li
2020-05-06 22:27         ` John Stultz
2020-05-07  3:08           ` Jun Li
2020-05-08 12:22             ` Jun Li
2020-05-08 12:35               ` Felipe Balbi
2020-05-09  8:28                 ` Jun Li
2020-05-08 12:33         ` Felipe Balbi
2020-05-09  8:10           ` Jun Li
2020-05-15  9:31             ` Felipe Balbi
2020-05-15 10:07               ` Jun Li
2020-05-15 10:41                 ` Felipe Balbi
2020-05-16  0:25                 ` Thinh Nguyen
2020-05-16  7:12                   ` Felipe Balbi
2020-05-16  9:20                     ` Jun Li
2020-05-16 11:57                       ` Felipe Balbi
2020-05-19  2:24                         ` Jun Li
2020-05-19  6:28                           ` Thinh Nguyen
2020-05-19  6:46                             ` Thinh Nguyen
2020-05-19  7:39                               ` Jun Li
2020-05-21  1:07                                 ` Thinh Nguyen
2020-05-21  1:55                                   ` Thinh Nguyen
2020-05-21  6:20                                     ` Felipe Balbi
2020-05-21  6:22                                       ` Felipe Balbi
2020-05-21  7:47                                         ` Jun Li
2020-05-21  7:33                                     ` Jun Li
2019-10-28 21:59 ` [PATCH v4 4/9] dt-bindings: usb: dwc3: Allow clock list & resets to be more flexible John Stultz
2019-10-28 21:59 ` [PATCH v4 5/9] usb: dwc3: Rework clock initialization " John Stultz
2019-10-29  9:13   ` Felipe Balbi
2019-10-29 16:08     ` John Stultz
2019-10-30  9:02       ` Felipe Balbi
2019-11-07 21:53     ` Rob Herring
2019-10-28 21:59 ` [PATCH v4 6/9] usb: dwc3: Rework resets " John Stultz
2019-10-29  9:17   ` Felipe Balbi
2019-10-29 18:05     ` John Stultz
2019-10-30  9:01       ` Felipe Balbi
2019-11-07 21:45         ` Rob Herring [this message]
2019-10-28 21:59 ` [PATCH v4 7/9] usb: dwc3: Registering a role switch in the DRD code John Stultz
2019-10-29  9:21   ` Felipe Balbi
2019-11-07 23:20     ` John Stultz
2019-10-28 21:59 ` [PATCH v4 8/9] dt-bindings: usb: generic: Add role-switch-default-host binding John Stultz
2019-10-29  9:23   ` Felipe Balbi
2019-10-29 18:26     ` John Stultz
2019-10-28 21:59 ` [PATCH v4 9/9] usb: dwc3: Add host-mode as default support John Stultz
2019-10-29  9:25   ` Felipe Balbi
2019-11-07 22:23     ` John Stultz

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='CAL_JsqL5_6vLJ4sfaNr=76S8kDWEpfKT05xaLktqFM_xH3puGA@mail.gmail.com' \
    --to=robh+dt@kernel.org \
    --cc=andy.shevchenko@gmail.com \
    --cc=balbi@kernel.org \
    --cc=chenyu56@huawei.com \
    --cc=chunfeng.yun@mediatek.com \
    --cc=devicetree@vger.kernel.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=hdegoede@redhat.com \
    --cc=heikki.krogerus@linux.intel.com \
    --cc=jackp@codeaurora.org \
    --cc=john.stultz@linaro.org \
    --cc=lijun.kernel@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-usb@vger.kernel.org \
    --cc=mark.rutland@arm.com \
    --cc=shufan_lee@richtek.com \
    --cc=suzuki.poulose@arm.com \
    --cc=valentin.schneider@arm.com \
    /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).