From: "Andrew F. Davis" <afd-l0cyMroinI0@public.gmane.org>
To: Rob Herring <robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>,
Philipp Zabel <p.zabel-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
Cc: Pawel Moll <pawel.moll-5wv7dgnIgG8@public.gmane.org>,
Mark Rutland <mark.rutland-5wv7dgnIgG8@public.gmane.org>,
Ian Campbell
<ijc+devicetree-KcIKpvwj1kUDXYZnReoRVg@public.gmane.org>,
Kumar Gala <galak-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>,
Suman Anna <s-anna-l0cyMroinI0@public.gmane.org>,
"devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org"
<devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
"linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org"
<linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>
Subject: Re: [PATCH v3 0/2] Add support for SYSCON reset
Date: Mon, 20 Jun 2016 13:44:44 -0500 [thread overview]
Message-ID: <5768399C.30201@ti.com> (raw)
In-Reply-To: <CAL_JsqKL+njqxTUB3MPgX=qJK72bmXXWH4gOuYMC2NFg5u7eqg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
On 06/15/2016 09:13 PM, Rob Herring wrote:
> On Wed, Jun 15, 2016 at 11:45 AM, Philipp Zabel <p.zabel-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org> wrote:
>> Hi Andrew,
>>
>> Am Mittwoch, den 15.06.2016, 10:48 -0500 schrieb Andrew F. Davis:
>>> On 06/01/2016 01:41 PM, Andrew F. Davis wrote:
>>>> Some SoCs contain reset controls for modules that are memory-mapped to
>>>> areas shared with other module configuration settings. This requires
>>>> synchronization across all drivers accessing this memory area. This
>>>> series adds a generic SYSCON reset driver to allow resets toggled
>>>> by bits in memory-mapped registers through SYSCON.
>>>>
>>>> Changes from v2:
>>>> - Rebased on v4.7-rc1
>>>> - Removed the need to give reset specifier nodes an index address
>>>>
>>>> Changes from v1:
>>>> - Reset control information is now described in the reset node, this
>>>> keeps the reset information centralized for easy verification
>>>> - Other small fixups
>>>>
>>>> Andrew F. Davis (2):
>>>> Documentation: dt: reset: Add syscon reset binding
>>>> reset: add a SYSCON based reset driver
>>>>
>>>> .../devicetree/bindings/reset/syscon-reset.txt | 105 ++++++++
>>>> drivers/reset/Kconfig | 10 +
>>>> drivers/reset/Makefile | 1 +
>>>> drivers/reset/reset-syscon.c | 289 +++++++++++++++++++++
>>>> include/dt-bindings/reset/syscon.h | 23 ++
>>>> 5 files changed, 428 insertions(+)
>>>> create mode 100644 Documentation/devicetree/bindings/reset/syscon-reset.txt
>>>> create mode 100644 drivers/reset/reset-syscon.c
>>>> create mode 100644 include/dt-bindings/reset/syscon.h
>>>>
>>>
>>> Is there any additional feedback for this driver? I normally try to
>>> refrain from pings, but this may begin to block further upstreaming of
>>> IPs that uses this reset if it can not be taken this cycle.
>>
>> There's still Rob's concern that this binding needs a device tree node
>> per single register bit in the worst case, which seems a bit overkill.
>
> Yes, that's still my concern with this.
>
>> I'd still prefer to have this information hidden in the drivers, but if
>> you absolutely have to put it in the device tree, maybe an approach more
>> similar to pinctrl-simple, where you could list all resets, one per
>> line, in a single property, would be more acceptable:
>>
>> pscrst: reset-controller {
>> compatible = "ti,<chip>-pscrst", "syscon-reset";
>>
>> /* syscon-reset,bits = <ctrl_reg ctrl_bit stat_reg stat_bit flags>; */
>
> ti,reset-bits
>
>> syscon-reset,bits = <0xa3c 8 0x83c 8 RESET_ASSERT_CLEAR /* 0: pcrst-dsp */
>> 0xa40 5 0 0 RESET_TRIGGER_SET>; /* 1: pcrst-example */
>> };
>>
>> dsp0: dsp {
>> resets = <&pscrst 0>;
>> };
>
> Otherwise, this seems okay. It is more concise.
>
If this is what you would both be okay with then I'll do it this way,
pushing v4 in a moment.
>>
>>> If there is still an objection to calling this a generic reset solution
>>> we would not strongly object to relabeling this to something implying
>>> more TI exclusivity.
>>
>> Good. Right now there don't seem to be that many reset controllers in
>> the wild for which this binding would be a good fit. If this turns out
>> to be useful for others, we can add more compatibles to the driver.
>
> Certainly other users would make a generic solution more compelling.
>
I believe some other current reset drivers could have made use of this
without having resorted to new drivers, I guess we will have to just
wait to see if it gets traction with new platforms or not, before we can
decide if this solution is really as general as I think it can be.
Andrew
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
WARNING: multiple messages have this Message-ID (diff)
From: "Andrew F. Davis" <afd@ti.com>
To: Rob Herring <robh+dt@kernel.org>, Philipp Zabel <p.zabel@pengutronix.de>
Cc: Pawel Moll <pawel.moll@arm.com>,
Mark Rutland <mark.rutland@arm.com>,
Ian Campbell <ijc+devicetree@hellion.org.uk>,
Kumar Gala <galak@codeaurora.org>, Suman Anna <s-anna@ti.com>,
"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH v3 0/2] Add support for SYSCON reset
Date: Mon, 20 Jun 2016 13:44:44 -0500 [thread overview]
Message-ID: <5768399C.30201@ti.com> (raw)
In-Reply-To: <CAL_JsqKL+njqxTUB3MPgX=qJK72bmXXWH4gOuYMC2NFg5u7eqg@mail.gmail.com>
On 06/15/2016 09:13 PM, Rob Herring wrote:
> On Wed, Jun 15, 2016 at 11:45 AM, Philipp Zabel <p.zabel@pengutronix.de> wrote:
>> Hi Andrew,
>>
>> Am Mittwoch, den 15.06.2016, 10:48 -0500 schrieb Andrew F. Davis:
>>> On 06/01/2016 01:41 PM, Andrew F. Davis wrote:
>>>> Some SoCs contain reset controls for modules that are memory-mapped to
>>>> areas shared with other module configuration settings. This requires
>>>> synchronization across all drivers accessing this memory area. This
>>>> series adds a generic SYSCON reset driver to allow resets toggled
>>>> by bits in memory-mapped registers through SYSCON.
>>>>
>>>> Changes from v2:
>>>> - Rebased on v4.7-rc1
>>>> - Removed the need to give reset specifier nodes an index address
>>>>
>>>> Changes from v1:
>>>> - Reset control information is now described in the reset node, this
>>>> keeps the reset information centralized for easy verification
>>>> - Other small fixups
>>>>
>>>> Andrew F. Davis (2):
>>>> Documentation: dt: reset: Add syscon reset binding
>>>> reset: add a SYSCON based reset driver
>>>>
>>>> .../devicetree/bindings/reset/syscon-reset.txt | 105 ++++++++
>>>> drivers/reset/Kconfig | 10 +
>>>> drivers/reset/Makefile | 1 +
>>>> drivers/reset/reset-syscon.c | 289 +++++++++++++++++++++
>>>> include/dt-bindings/reset/syscon.h | 23 ++
>>>> 5 files changed, 428 insertions(+)
>>>> create mode 100644 Documentation/devicetree/bindings/reset/syscon-reset.txt
>>>> create mode 100644 drivers/reset/reset-syscon.c
>>>> create mode 100644 include/dt-bindings/reset/syscon.h
>>>>
>>>
>>> Is there any additional feedback for this driver? I normally try to
>>> refrain from pings, but this may begin to block further upstreaming of
>>> IPs that uses this reset if it can not be taken this cycle.
>>
>> There's still Rob's concern that this binding needs a device tree node
>> per single register bit in the worst case, which seems a bit overkill.
>
> Yes, that's still my concern with this.
>
>> I'd still prefer to have this information hidden in the drivers, but if
>> you absolutely have to put it in the device tree, maybe an approach more
>> similar to pinctrl-simple, where you could list all resets, one per
>> line, in a single property, would be more acceptable:
>>
>> pscrst: reset-controller {
>> compatible = "ti,<chip>-pscrst", "syscon-reset";
>>
>> /* syscon-reset,bits = <ctrl_reg ctrl_bit stat_reg stat_bit flags>; */
>
> ti,reset-bits
>
>> syscon-reset,bits = <0xa3c 8 0x83c 8 RESET_ASSERT_CLEAR /* 0: pcrst-dsp */
>> 0xa40 5 0 0 RESET_TRIGGER_SET>; /* 1: pcrst-example */
>> };
>>
>> dsp0: dsp {
>> resets = <&pscrst 0>;
>> };
>
> Otherwise, this seems okay. It is more concise.
>
If this is what you would both be okay with then I'll do it this way,
pushing v4 in a moment.
>>
>>> If there is still an objection to calling this a generic reset solution
>>> we would not strongly object to relabeling this to something implying
>>> more TI exclusivity.
>>
>> Good. Right now there don't seem to be that many reset controllers in
>> the wild for which this binding would be a good fit. If this turns out
>> to be useful for others, we can add more compatibles to the driver.
>
> Certainly other users would make a generic solution more compelling.
>
I believe some other current reset drivers could have made use of this
without having resorted to new drivers, I guess we will have to just
wait to see if it gets traction with new platforms or not, before we can
decide if this solution is really as general as I think it can be.
Andrew
next prev parent reply other threads:[~2016-06-20 18:44 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-06-01 18:41 [PATCH v3 0/2] Add support for SYSCON reset Andrew F. Davis
2016-06-01 18:41 ` Andrew F. Davis
2016-06-01 18:41 ` [PATCH v3 1/2] Documentation: dt: reset: Add syscon reset binding Andrew F. Davis
2016-06-01 18:41 ` Andrew F. Davis
[not found] ` <20160601184125.20241-1-afd-l0cyMroinI0@public.gmane.org>
2016-06-01 18:41 ` [PATCH v3 2/2] reset: add a SYSCON based reset driver Andrew F. Davis
2016-06-01 18:41 ` Andrew F. Davis
2016-06-15 16:51 ` Suman Anna
2016-06-15 16:51 ` Suman Anna
2016-06-15 16:52 ` Andrew F. Davis
2016-06-15 16:52 ` Andrew F. Davis
2016-06-15 15:48 ` [PATCH v3 0/2] Add support for SYSCON reset Andrew F. Davis
2016-06-15 15:48 ` Andrew F. Davis
2016-06-15 16:45 ` Philipp Zabel
2016-06-16 2:13 ` Rob Herring
[not found] ` <CAL_JsqKL+njqxTUB3MPgX=qJK72bmXXWH4gOuYMC2NFg5u7eqg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-06-20 18:44 ` Andrew F. Davis [this message]
2016-06-20 18:44 ` Andrew F. Davis
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=5768399C.30201@ti.com \
--to=afd-l0cymroini0@public.gmane.org \
--cc=devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=galak-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org \
--cc=ijc+devicetree-KcIKpvwj1kUDXYZnReoRVg@public.gmane.org \
--cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=mark.rutland-5wv7dgnIgG8@public.gmane.org \
--cc=p.zabel-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org \
--cc=pawel.moll-5wv7dgnIgG8@public.gmane.org \
--cc=robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org \
--cc=s-anna-l0cyMroinI0@public.gmane.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.