linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] watchdog: meson-wdt: add support for the watchdog on Meson8 and Meson8m2
@ 2017-06-11  9:52 Martin Blumenstingl
  2017-06-12  7:38 ` Neil Armstrong
  2017-06-15 17:25 ` Guenter Roeck
  0 siblings, 2 replies; 8+ messages in thread
From: Martin Blumenstingl @ 2017-06-11  9:52 UTC (permalink / raw)
  To: linux-arm-kernel

The watchdog IP block on Meson8 and Meson8m2 is already supported by the
existing meson-wdt driver. Meson8 uses the same register bits as Meson6,
while the newer Meson8m2 SoC uses the same register bits as Meson8b.

Currently watchdog support on Meson8 SoC already works because
meson8.dtsi simply uses the "amlogic,meson6-wdt" compatible. Adding a
separate compatible for Meson8 makes this more explicit though.

Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
---
 Documentation/devicetree/bindings/watchdog/meson-wdt.txt | 6 +++++-
 drivers/watchdog/meson_wdt.c                             | 2 ++
 2 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/Documentation/devicetree/bindings/watchdog/meson-wdt.txt b/Documentation/devicetree/bindings/watchdog/meson-wdt.txt
index ae70185d96e6..f2fbe1a39d31 100644
--- a/Documentation/devicetree/bindings/watchdog/meson-wdt.txt
+++ b/Documentation/devicetree/bindings/watchdog/meson-wdt.txt
@@ -2,7 +2,11 @@ Meson SoCs Watchdog timer
 
 Required properties:
 
-- compatible : should be "amlogic,meson6-wdt" or "amlogic,meson8b-wdt"
+- compatible : depending on the SoC this should be one of:
+	"amlogic,meson6-wdt"
+	"amlogic,meson8-wdt"
+	"amlogic,meson8b-wdt"
+	"amlogic,meson8m2-wdt"
 - reg : Specifies base physical address and size of the registers.
 
 Example:
diff --git a/drivers/watchdog/meson_wdt.c b/drivers/watchdog/meson_wdt.c
index 491b9bf13d84..304274c67735 100644
--- a/drivers/watchdog/meson_wdt.c
+++ b/drivers/watchdog/meson_wdt.c
@@ -155,7 +155,9 @@ static const struct watchdog_ops meson_wdt_ops = {
 
 static const struct of_device_id meson_wdt_dt_ids[] = {
 	{ .compatible = "amlogic,meson6-wdt", .data = &meson6_wdt_data },
+	{ .compatible = "amlogic,meson8-wdt", .data = &meson6_wdt_data },
 	{ .compatible = "amlogic,meson8b-wdt", .data = &meson8b_wdt_data },
+	{ .compatible = "amlogic,meson8m2-wdt", .data = &meson8b_wdt_data },
 	{ /* sentinel */ }
 };
 MODULE_DEVICE_TABLE(of, meson_wdt_dt_ids);
-- 
2.13.1

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [PATCH] watchdog: meson-wdt: add support for the watchdog on Meson8 and Meson8m2
  2017-06-11  9:52 [PATCH] watchdog: meson-wdt: add support for the watchdog on Meson8 and Meson8m2 Martin Blumenstingl
@ 2017-06-12  7:38 ` Neil Armstrong
  2017-06-15 17:25 ` Guenter Roeck
  1 sibling, 0 replies; 8+ messages in thread
From: Neil Armstrong @ 2017-06-12  7:38 UTC (permalink / raw)
  To: linux-arm-kernel

On 06/11/2017 11:52 AM, Martin Blumenstingl wrote:
> The watchdog IP block on Meson8 and Meson8m2 is already supported by the
> existing meson-wdt driver. Meson8 uses the same register bits as Meson6,
> while the newer Meson8m2 SoC uses the same register bits as Meson8b.
> 
> Currently watchdog support on Meson8 SoC already works because
> meson8.dtsi simply uses the "amlogic,meson6-wdt" compatible. Adding a
> separate compatible for Meson8 makes this more explicit though.
> 
> Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
> ---
>  Documentation/devicetree/bindings/watchdog/meson-wdt.txt | 6 +++++-
>  drivers/watchdog/meson_wdt.c                             | 2 ++
>  2 files changed, 7 insertions(+), 1 deletion(-)
> 
> diff --git a/Documentation/devicetree/bindings/watchdog/meson-wdt.txt b/Documentation/devicetree/bindings/watchdog/meson-wdt.txt
> index ae70185d96e6..f2fbe1a39d31 100644
> --- a/Documentation/devicetree/bindings/watchdog/meson-wdt.txt
> +++ b/Documentation/devicetree/bindings/watchdog/meson-wdt.txt
> @@ -2,7 +2,11 @@ Meson SoCs Watchdog timer
>  
>  Required properties:
>  
> -- compatible : should be "amlogic,meson6-wdt" or "amlogic,meson8b-wdt"
> +- compatible : depending on the SoC this should be one of:
> +	"amlogic,meson6-wdt"
> +	"amlogic,meson8-wdt"
> +	"amlogic,meson8b-wdt"
> +	"amlogic,meson8m2-wdt"
>  - reg : Specifies base physical address and size of the registers.
>  
>  Example:
> diff --git a/drivers/watchdog/meson_wdt.c b/drivers/watchdog/meson_wdt.c
> index 491b9bf13d84..304274c67735 100644
> --- a/drivers/watchdog/meson_wdt.c
> +++ b/drivers/watchdog/meson_wdt.c
> @@ -155,7 +155,9 @@ static const struct watchdog_ops meson_wdt_ops = {
>  
>  static const struct of_device_id meson_wdt_dt_ids[] = {
>  	{ .compatible = "amlogic,meson6-wdt", .data = &meson6_wdt_data },
> +	{ .compatible = "amlogic,meson8-wdt", .data = &meson6_wdt_data },
>  	{ .compatible = "amlogic,meson8b-wdt", .data = &meson8b_wdt_data },
> +	{ .compatible = "amlogic,meson8m2-wdt", .data = &meson8b_wdt_data },
>  	{ /* sentinel */ }
>  };
>  MODULE_DEVICE_TABLE(of, meson_wdt_dt_ids);
> 

Reviewed-by: Neil Armstrong <narmstrong@baylibre.com>

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [PATCH] watchdog: meson-wdt: add support for the watchdog on Meson8 and Meson8m2
  2017-06-11  9:52 [PATCH] watchdog: meson-wdt: add support for the watchdog on Meson8 and Meson8m2 Martin Blumenstingl
  2017-06-12  7:38 ` Neil Armstrong
@ 2017-06-15 17:25 ` Guenter Roeck
  2017-06-15 21:13   ` Martin Blumenstingl
  1 sibling, 1 reply; 8+ messages in thread
From: Guenter Roeck @ 2017-06-15 17:25 UTC (permalink / raw)
  To: linux-arm-kernel

On Sun, Jun 11, 2017 at 11:52:19AM +0200, Martin Blumenstingl wrote:
> The watchdog IP block on Meson8 and Meson8m2 is already supported by the
> existing meson-wdt driver. Meson8 uses the same register bits as Meson6,
> while the newer Meson8m2 SoC uses the same register bits as Meson8b.
> 
> Currently watchdog support on Meson8 SoC already works because
> meson8.dtsi simply uses the "amlogic,meson6-wdt" compatible. Adding a
> separate compatible for Meson8 makes this more explicit though.
> 
> Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>

Reviewed-by: Guenter Roeck <linux@roeck-us.net>

In general, changes like this are not necessary, though. The dts file
is supposed to reference both generic and specific compatible strings.

Thanks,
Guenter

> ---
>  Documentation/devicetree/bindings/watchdog/meson-wdt.txt | 6 +++++-
>  drivers/watchdog/meson_wdt.c                             | 2 ++
>  2 files changed, 7 insertions(+), 1 deletion(-)
> 
> diff --git a/Documentation/devicetree/bindings/watchdog/meson-wdt.txt b/Documentation/devicetree/bindings/watchdog/meson-wdt.txt
> index ae70185d96e6..f2fbe1a39d31 100644
> --- a/Documentation/devicetree/bindings/watchdog/meson-wdt.txt
> +++ b/Documentation/devicetree/bindings/watchdog/meson-wdt.txt
> @@ -2,7 +2,11 @@ Meson SoCs Watchdog timer
>  
>  Required properties:
>  
> -- compatible : should be "amlogic,meson6-wdt" or "amlogic,meson8b-wdt"
> +- compatible : depending on the SoC this should be one of:
> +	"amlogic,meson6-wdt"
> +	"amlogic,meson8-wdt"
> +	"amlogic,meson8b-wdt"
> +	"amlogic,meson8m2-wdt"
>  - reg : Specifies base physical address and size of the registers.
>  
>  Example:
> diff --git a/drivers/watchdog/meson_wdt.c b/drivers/watchdog/meson_wdt.c
> index 491b9bf13d84..304274c67735 100644
> --- a/drivers/watchdog/meson_wdt.c
> +++ b/drivers/watchdog/meson_wdt.c
> @@ -155,7 +155,9 @@ static const struct watchdog_ops meson_wdt_ops = {
>  
>  static const struct of_device_id meson_wdt_dt_ids[] = {
>  	{ .compatible = "amlogic,meson6-wdt", .data = &meson6_wdt_data },
> +	{ .compatible = "amlogic,meson8-wdt", .data = &meson6_wdt_data },
>  	{ .compatible = "amlogic,meson8b-wdt", .data = &meson8b_wdt_data },
> +	{ .compatible = "amlogic,meson8m2-wdt", .data = &meson8b_wdt_data },
>  	{ /* sentinel */ }
>  };
>  MODULE_DEVICE_TABLE(of, meson_wdt_dt_ids);
> -- 
> 2.13.1
> 

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [PATCH] watchdog: meson-wdt: add support for the watchdog on Meson8 and Meson8m2
  2017-06-15 17:25 ` Guenter Roeck
@ 2017-06-15 21:13   ` Martin Blumenstingl
  2017-06-15 21:22     ` Guenter Roeck
  2017-06-18 14:04     ` Rob Herring
  0 siblings, 2 replies; 8+ messages in thread
From: Martin Blumenstingl @ 2017-06-15 21:13 UTC (permalink / raw)
  To: linux-arm-kernel

On Thu, Jun 15, 2017 at 7:25 PM, Guenter Roeck <linux@roeck-us.net> wrote:
> On Sun, Jun 11, 2017 at 11:52:19AM +0200, Martin Blumenstingl wrote:
>> The watchdog IP block on Meson8 and Meson8m2 is already supported by the
>> existing meson-wdt driver. Meson8 uses the same register bits as Meson6,
>> while the newer Meson8m2 SoC uses the same register bits as Meson8b.
>>
>> Currently watchdog support on Meson8 SoC already works because
>> meson8.dtsi simply uses the "amlogic,meson6-wdt" compatible. Adding a
>> separate compatible for Meson8 makes this more explicit though.
>>
>> Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
>
> Reviewed-by: Guenter Roeck <linux@roeck-us.net>
thank you!
is there anything holding you up from taking this patch (for example:
are you still missing any specific Signed-off-by / Acked-by)?

> In general, changes like this are not necessary, though. The dts file
> is supposed to reference both generic and specific compatible strings.
I thought about skipping this patch, but I find that it looks strange without.

the hierarchy and the corresponding compatible strings would be:
meson.dtsi / compatible = "amlogic,meson6-wdt";
|- meson8.dtsi / compatible = "amlogic,meson8-wdt", "amlogic,meson6-wdt";
   |- meson8m2.dtsi (upcoming) / compatible = "amlogic,meson8m2-wdt",
"amlogic,meson8b-wdt";
|- meson8b.dtsi / compatible = "amlogic,meson8b-wdt";

instead of this seemingly random mixup of compatible strings I decided
to introduce separate ones for each SoC.

Martin

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [PATCH] watchdog: meson-wdt: add support for the watchdog on Meson8 and Meson8m2
  2017-06-15 21:13   ` Martin Blumenstingl
@ 2017-06-15 21:22     ` Guenter Roeck
  2017-06-18 14:04     ` Rob Herring
  1 sibling, 0 replies; 8+ messages in thread
From: Guenter Roeck @ 2017-06-15 21:22 UTC (permalink / raw)
  To: linux-arm-kernel

On Thu, Jun 15, 2017 at 11:13:07PM +0200, Martin Blumenstingl wrote:
> On Thu, Jun 15, 2017 at 7:25 PM, Guenter Roeck <linux@roeck-us.net> wrote:
> > On Sun, Jun 11, 2017 at 11:52:19AM +0200, Martin Blumenstingl wrote:
> >> The watchdog IP block on Meson8 and Meson8m2 is already supported by the
> >> existing meson-wdt driver. Meson8 uses the same register bits as Meson6,
> >> while the newer Meson8m2 SoC uses the same register bits as Meson8b.
> >>
> >> Currently watchdog support on Meson8 SoC already works because
> >> meson8.dtsi simply uses the "amlogic,meson6-wdt" compatible. Adding a
> >> separate compatible for Meson8 makes this more explicit though.
> >>
> >> Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
> >
> > Reviewed-by: Guenter Roeck <linux@roeck-us.net>
> thank you!
> is there anything holding you up from taking this patch (for example:
> are you still missing any specific Signed-off-by / Acked-by)?
> 

>From Rob.

Guenter

> > In general, changes like this are not necessary, though. The dts file
> > is supposed to reference both generic and specific compatible strings.
> I thought about skipping this patch, but I find that it looks strange without.
> 
> the hierarchy and the corresponding compatible strings would be:
> meson.dtsi / compatible = "amlogic,meson6-wdt";
> |- meson8.dtsi / compatible = "amlogic,meson8-wdt", "amlogic,meson6-wdt";
>    |- meson8m2.dtsi (upcoming) / compatible = "amlogic,meson8m2-wdt",
> "amlogic,meson8b-wdt";
> |- meson8b.dtsi / compatible = "amlogic,meson8b-wdt";
> 
> instead of this seemingly random mixup of compatible strings I decided
> to introduce separate ones for each SoC.
> 
> Martin

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [PATCH] watchdog: meson-wdt: add support for the watchdog on Meson8 and Meson8m2
  2017-06-15 21:13   ` Martin Blumenstingl
  2017-06-15 21:22     ` Guenter Roeck
@ 2017-06-18 14:04     ` Rob Herring
  2017-06-19 18:50       ` Martin Blumenstingl
  1 sibling, 1 reply; 8+ messages in thread
From: Rob Herring @ 2017-06-18 14:04 UTC (permalink / raw)
  To: linux-arm-kernel

On Thu, Jun 15, 2017 at 11:13:07PM +0200, Martin Blumenstingl wrote:
> On Thu, Jun 15, 2017 at 7:25 PM, Guenter Roeck <linux@roeck-us.net> wrote:
> > On Sun, Jun 11, 2017 at 11:52:19AM +0200, Martin Blumenstingl wrote:
> >> The watchdog IP block on Meson8 and Meson8m2 is already supported by the
> >> existing meson-wdt driver. Meson8 uses the same register bits as Meson6,
> >> while the newer Meson8m2 SoC uses the same register bits as Meson8b.
> >>
> >> Currently watchdog support on Meson8 SoC already works because
> >> meson8.dtsi simply uses the "amlogic,meson6-wdt" compatible. Adding a
> >> separate compatible for Meson8 makes this more explicit though.
> >>
> >> Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
> >
> > Reviewed-by: Guenter Roeck <linux@roeck-us.net>
> thank you!
> is there anything holding you up from taking this patch (for example:
> are you still missing any specific Signed-off-by / Acked-by)?
> 
> > In general, changes like this are not necessary, though. The dts file
> > is supposed to reference both generic and specific compatible strings.
> I thought about skipping this patch, but I find that it looks strange without.
> 
> the hierarchy and the corresponding compatible strings would be:
> meson.dtsi / compatible = "amlogic,meson6-wdt";
> |- meson8.dtsi / compatible = "amlogic,meson8-wdt", "amlogic,meson6-wdt";
>    |- meson8m2.dtsi (upcoming) / compatible = "amlogic,meson8m2-wdt",
> "amlogic,meson8b-wdt";
> |- meson8b.dtsi / compatible = "amlogic,meson8b-wdt";
> 
> instead of this seemingly random mixup of compatible strings I decided
> to introduce separate ones for each SoC.

But if the block is backwards compatible, you should also provide a 
fallback compatible string.

Rob

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [PATCH] watchdog: meson-wdt: add support for the watchdog on Meson8 and Meson8m2
  2017-06-18 14:04     ` Rob Herring
@ 2017-06-19 18:50       ` Martin Blumenstingl
  2017-06-22  3:22         ` Rob Herring
  0 siblings, 1 reply; 8+ messages in thread
From: Martin Blumenstingl @ 2017-06-19 18:50 UTC (permalink / raw)
  To: linux-arm-kernel

Hi Rob,

On Sun, Jun 18, 2017 at 4:04 PM, Rob Herring <robh@kernel.org> wrote:
> On Thu, Jun 15, 2017 at 11:13:07PM +0200, Martin Blumenstingl wrote:
>> On Thu, Jun 15, 2017 at 7:25 PM, Guenter Roeck <linux@roeck-us.net> wrote:
>> > On Sun, Jun 11, 2017 at 11:52:19AM +0200, Martin Blumenstingl wrote:
>> >> The watchdog IP block on Meson8 and Meson8m2 is already supported by the
>> >> existing meson-wdt driver. Meson8 uses the same register bits as Meson6,
>> >> while the newer Meson8m2 SoC uses the same register bits as Meson8b.
>> >>
>> >> Currently watchdog support on Meson8 SoC already works because
>> >> meson8.dtsi simply uses the "amlogic,meson6-wdt" compatible. Adding a
>> >> separate compatible for Meson8 makes this more explicit though.
>> >>
>> >> Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
>> >
>> > Reviewed-by: Guenter Roeck <linux@roeck-us.net>
>> thank you!
>> is there anything holding you up from taking this patch (for example:
>> are you still missing any specific Signed-off-by / Acked-by)?
>>
>> > In general, changes like this are not necessary, though. The dts file
>> > is supposed to reference both generic and specific compatible strings.
>> I thought about skipping this patch, but I find that it looks strange without.
>>
>> the hierarchy and the corresponding compatible strings would be:
>> meson.dtsi / compatible = "amlogic,meson6-wdt";
>> |- meson8.dtsi / compatible = "amlogic,meson8-wdt", "amlogic,meson6-wdt";
>>    |- meson8m2.dtsi (upcoming) / compatible = "amlogic,meson8m2-wdt",
>> "amlogic,meson8b-wdt";
>> |- meson8b.dtsi / compatible = "amlogic,meson8b-wdt";
>>
>> instead of this seemingly random mixup of compatible strings I decided
>> to introduce separate ones for each SoC.
>
> But if the block is backwards compatible, you should also provide a
> fallback compatible string.
OK, fine with me - do you want me to update the documentation to
reflect this (or is it enough if I take care of it in the .dts files)?
the resulting documentation could look like this:
       "amlogic,meson6-wdt" on Meson6 SoCs
       "amlogic,meson8-wdt" along with "amlogic,meson6-wdt" on Meson8 SoCs
       "amlogic,meson8b-wdt" on Meson8b SoCs
       "amlogic,meson8m2-wdt" along with "amlogic,meson8b-wdt" on Meson8m2 SoCs

Regards,
Martin

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [PATCH] watchdog: meson-wdt: add support for the watchdog on Meson8 and Meson8m2
  2017-06-19 18:50       ` Martin Blumenstingl
@ 2017-06-22  3:22         ` Rob Herring
  0 siblings, 0 replies; 8+ messages in thread
From: Rob Herring @ 2017-06-22  3:22 UTC (permalink / raw)
  To: linux-arm-kernel

On Mon, Jun 19, 2017 at 1:50 PM, Martin Blumenstingl
<martin.blumenstingl@googlemail.com> wrote:
> Hi Rob,
>
> On Sun, Jun 18, 2017 at 4:04 PM, Rob Herring <robh@kernel.org> wrote:
>> On Thu, Jun 15, 2017 at 11:13:07PM +0200, Martin Blumenstingl wrote:
>>> On Thu, Jun 15, 2017 at 7:25 PM, Guenter Roeck <linux@roeck-us.net> wrote:
>>> > On Sun, Jun 11, 2017 at 11:52:19AM +0200, Martin Blumenstingl wrote:
>>> >> The watchdog IP block on Meson8 and Meson8m2 is already supported by the
>>> >> existing meson-wdt driver. Meson8 uses the same register bits as Meson6,
>>> >> while the newer Meson8m2 SoC uses the same register bits as Meson8b.
>>> >>
>>> >> Currently watchdog support on Meson8 SoC already works because
>>> >> meson8.dtsi simply uses the "amlogic,meson6-wdt" compatible. Adding a
>>> >> separate compatible for Meson8 makes this more explicit though.
>>> >>
>>> >> Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
>>> >
>>> > Reviewed-by: Guenter Roeck <linux@roeck-us.net>
>>> thank you!
>>> is there anything holding you up from taking this patch (for example:
>>> are you still missing any specific Signed-off-by / Acked-by)?
>>>
>>> > In general, changes like this are not necessary, though. The dts file
>>> > is supposed to reference both generic and specific compatible strings.
>>> I thought about skipping this patch, but I find that it looks strange without.
>>>
>>> the hierarchy and the corresponding compatible strings would be:
>>> meson.dtsi / compatible = "amlogic,meson6-wdt";
>>> |- meson8.dtsi / compatible = "amlogic,meson8-wdt", "amlogic,meson6-wdt";
>>>    |- meson8m2.dtsi (upcoming) / compatible = "amlogic,meson8m2-wdt",
>>> "amlogic,meson8b-wdt";
>>> |- meson8b.dtsi / compatible = "amlogic,meson8b-wdt";
>>>
>>> instead of this seemingly random mixup of compatible strings I decided
>>> to introduce separate ones for each SoC.
>>
>> But if the block is backwards compatible, you should also provide a
>> fallback compatible string.
> OK, fine with me - do you want me to update the documentation to
> reflect this (or is it enough if I take care of it in the .dts files)?
> the resulting documentation could look like this:
>        "amlogic,meson6-wdt" on Meson6 SoCs
>        "amlogic,meson8-wdt" along with "amlogic,meson6-wdt" on Meson8 SoCs
>        "amlogic,meson8b-wdt" on Meson8b SoCs
>        "amlogic,meson8m2-wdt" along with "amlogic,meson8b-wdt" on Meson8m2 SoCs

Yes, like this.

Rob

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2017-06-22  3:22 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-06-11  9:52 [PATCH] watchdog: meson-wdt: add support for the watchdog on Meson8 and Meson8m2 Martin Blumenstingl
2017-06-12  7:38 ` Neil Armstrong
2017-06-15 17:25 ` Guenter Roeck
2017-06-15 21:13   ` Martin Blumenstingl
2017-06-15 21:22     ` Guenter Roeck
2017-06-18 14:04     ` Rob Herring
2017-06-19 18:50       ` Martin Blumenstingl
2017-06-22  3:22         ` Rob Herring

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).