From: Simon Horman <hidden> Date: 2014-08-27 05:28:17
[Repost with correct deviceetree email address]
In general Renesas hardware is not documented to the extent where the
relationship between IP blocks on different SoCs can be assumed although
they may appear to operate the same way. Furthermore the documentation
typically does not specify a version for individual IP blocks. For these
reasons a convention of using the SoC name in place of a version and
providing SoC-specific compat strings has been adopted.
Although not universally liked this convention is used in the bindings for
the drivers a number of drivers for Renesas hardware. The purpose of this
patch is to update the Renesas clocksource drivers to follow this convention.
I plan to follow up with patches to use these new bindings in the
dtsi files for the affected SoCs.
Simon Horman (3):
clocksource: sh_cmt: Document SoC specific bindings
clocksource: sh_mtu2: Document r7s72100 binding
clocksource: sh_tmu: Document r8a7779 binding
.../devicetree/bindings/timer/renesas,cmt.txt | 26 +++++++++++++++++++++-
.../devicetree/bindings/timer/renesas,mtu2.txt | 6 +++--
.../devicetree/bindings/timer/renesas,tmu.txt | 6 +++--
3 files changed, 33 insertions(+), 5 deletions(-)
--
2.0.1
From: Simon Horman <hidden> Date: 2014-08-27 05:28:18
In general Renesas hardware is not documented to the extent
where the relationship between IP blocks on different SoCs can be assumed
although they may appear to operate the same way. Furthermore the
documentation typically does not specify a version for individual
IP blocks. For these reasons a convention of using the SoC name in place
of a version and providing SoC-specific compat strings has been adopted.
Although not universally liked this convention is used in the bindings
for the drivers a number of drivers for Renesas hardware. The purpose
of this patch is to update the Renesas R-Car Compare Match Timer (CMT)
driver to follow this convention.
Signed-off-by: Simon Horman <redacted>
---
* I plan to follow up with patches to use these new bindings in the
dtsi files for the affected SoCs.
---
.../devicetree/bindings/timer/renesas,cmt.txt | 26 +++++++++++++++++++++-
1 file changed, 25 insertions(+), 1 deletion(-)
@@ -16,10 +16,34 @@ Required Properties: (CMT0 on sh7372, sh73a0 and r8a7740) - "renesas,cmt-32-fast" for the 32-bit CMT with fast clock support (CMT[234] on sh7372, sh73a0 and r8a7740)+ - "renesas,cmt-32-fast-r8a7740" for the R8A7740 32-bit CMT with fast+ clock support (CMT[234])+ - "renesas,cmt-32-fast-sh7372" for the SH7372 32-bit CMT with fast+ clock support (CMT[234])+ - "renesas,cmt-32-fast-sh73a0" for the SH73A0 32-bit CMT with fast+ clock support (CMT[234])+ - "renesas,cmt-32-r8a7740" for the R8a7740 32-bit CMT+ (CMT0)+ - "renesas,cmt-32-sh7372" for the SH7372 32-bit CMT+ (CMT0)+ - "renesas,cmt-32-sh73a0" for the SH73a0 32-bit CMT+ (CMT0) - "renesas,cmt-48" for the 48-bit CMT (CMT1 on sh7372, sh73a0 and r8a7740) - "renesas,cmt-48-gen2" for the second generation 48-bit CMT (CMT[01] on r8a73a4, r8a7790 and r8a7791)+ - "renesas,cmt-48-r8a73a4" for the R8A73A4 48-bit CMT+ (CMT[01])+ - "renesas,cmt-48-r8a7740" for the R8A7740 48-bit CMT+ (CMT1)+ - "renesas,cmt-48-r8a7790" for the R8A7790 48-bit CMT+ (CMT[01])+ - "renesas,cmt-48-r8a7791" for the R8A7791 48-bit CMT+ (CMT[01])+ - "renesas,cmt-48-sh7372" for the SH7372 48-bit CMT+ (CMT1)+ - "renesas,cmt-48-sh73a0" for the SH73A0 48-bit CMT+ (CMT1) - reg: base address and length of the registers block for the timer module. - interrupts: interrupt-specifier for the timer, one per channel.
@@ -36,7 +60,7 @@ Example: R8A7790 (R-Car H2) CMT0 node them channels 0 and 1 in the documentation. cmt0: timer at ffca0000 {- compatible = "renesas,cmt-48-gen2";+ compatible = "renesas,cmt-48-r8a7790", "renesas,cmt-48-gen2"; reg = <0 0xffca0000 0 0x1004>; interrupts = <0 142 IRQ_TYPE_LEVEL_HIGH>, <0 142 IRQ_TYPE_LEVEL_HIGH>;
From: Simon Horman <hidden> Date: 2014-08-27 05:28:19
In general Renesas hardware is not documented to the extent
where the relationship between IP blocks on different SoCs can be assumed
although they may appear to operate the same way. Furthermore the
documentation typically does not specify a version for individual
IP blocks. For these reasons a convention of using the SoC name in place
of a version and providing SoC-specific compat strings has been adopted.
Although not universally liked this convention is used in the bindings
for the drivers a number of drivers for Renesas hardware. The purpose
of this patch is to update the Renesas R-Car Multi-Function Timer Pulse
Unit 2 (MTU2) driver to follow this convention.
Signed-off-by: Simon Horman <redacted>
---
* I plan to follow up with a patch patch to use the new binding in the
dtsi files for the r7s72100 SoC.
---
Documentation/devicetree/bindings/timer/renesas,mtu2.txt | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
@@ -8,7 +8,9 @@ are independent. The MTU2 hardware supports five channels indexed from 0 to 4. Required Properties:- - compatible: must contain "renesas,mtu2"+ - compatible: must be one of the following.+ - "renesas,mtu2" for generic MTU2+ - "renesas,mtu2-r7s72100" for R7S72100 MTU2 - reg: base address and length of the registers block for the timer module.
From: Simon Horman <hidden> Date: 2014-08-27 05:28:20
In general Renesas hardware is not documented to the extent
where the relationship between IP blocks on different SoCs can be assumed
although they may appear to operate the same way. Furthermore the
documentation typically does not specify a version for individual
IP blocks. For these reasons a convention of using the SoC name in place
of a version and providing SoC-specific compat strings has been adopted.
Although not universally liked this convention is used in the bindings
for the drivers a number of drivers for Renesas hardware. The purpose
of this patch is to update the Renesas R-Car Timer Unit (TMU)
driver to follow this convention.
Signed-off-by: Simon Horman <redacted>
---
* I plan to follow up with a patch patch to use the new binding in the
dtsi files for the r8a7779 SoC.
---
Documentation/devicetree/bindings/timer/renesas,tmu.txt | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
@@ -8,7 +8,9 @@ are independent. The TMU hardware supports up to three channels. Required Properties:- - compatible: must contain "renesas,tmu"+ - compatible: must contain one of the following.+ - "renesas,tmu" generic TMU+ - "renesas,tmu-r8a7779" R8A7779 TMU - reg: base address and length of the registers block for the timer module.
Hi Simon,
On Wed, Aug 27, 2014 at 7:28 AM, Simon Horman
[off-list ref] wrote:
n general Renesas hardware is not documented to the extent
where the relationship between IP blocks on different SoCs can be assumed
although they may appear to operate the same way. Furthermore the
documentation typically does not specify a version for individual
IP blocks. For these reasons a convention of using the SoC name in place
of a version and providing SoC-specific compat strings has been adopted.
Although not universally liked this convention is used in the bindings
for the drivers a number of drivers for Renesas hardware. The purpose
s/the drivers //
of this patch is to update the Renesas R-Car Compare Match Timer (CMT)
driver to follow this convention.
Signed-off-by: Simon Horman <redacted>
quoted hunk
---
* I plan to follow up with patches to use these new bindings in the
dtsi files for the affected SoCs.
---
.../devicetree/bindings/timer/renesas,cmt.txt | 26 +++++++++++++++++++++-
1 file changed, 25 insertions(+), 1 deletion(-)
@@ -16,10 +16,34 @@ Required Properties: (CMT0 on sh7372, sh73a0 and r8a7740) - "renesas,cmt-32-fast" for the 32-bit CMT with fast clock support (CMT[234] on sh7372, sh73a0 and r8a7740)+ - "renesas,cmt-32-fast-r8a7740" for the R8A7740 32-bit CMT with fast+ clock support (CMT[234])+ - "renesas,cmt-32-fast-sh7372" for the SH7372 32-bit CMT with fast+ clock support (CMT[234])+ - "renesas,cmt-32-fast-sh73a0" for the SH73A0 32-bit CMT with fast+ clock support (CMT[234])
+ - "renesas,cmt-32-r8a7740" for the R8a7740 32-bit CMT
+ (CMT0)
+ - "renesas,cmt-32-sh7372" for the SH7372 32-bit CMT
+ (CMT0)
+ - "renesas,cmt-32-sh73a0" for the SH73a0 32-bit CMT
+ (CMT0)
I'd move these 3 non-fast "renesas,cmt-32-*" values up, under
"renesas,cmt-32".
- "renesas,cmt-48" for the 48-bit CMT
(CMT1 on sh7372, sh73a0 and r8a7740)
- "renesas,cmt-48-gen2" for the second generation 48-bit CMT
(CMT[01] on r8a73a4, r8a7790 and r8a7791)
+ - "renesas,cmt-48-r8a73a4" for the R8A73A4 48-bit CMT
+ (CMT[01])
+ - "renesas,cmt-48-r8a7740" for the R8A7740 48-bit CMT
+ (CMT1)
+ - "renesas,cmt-48-r8a7790" for the R8A7790 48-bit CMT
+ (CMT[01])
+ - "renesas,cmt-48-r8a7791" for the R8A7791 48-bit CMT
+ (CMT[01])
+ - "renesas,cmt-48-sh7372" for the SH7372 48-bit CMT
+ (CMT1)
+ - "renesas,cmt-48-sh73a0" for the SH73A0 48-bit CMT
+ (CMT1)
I'd split the above in original and gen2.
Perhaps you can also add blank lines in between the 4 blocks of
types; the list is getting long?
Apart from the minor issues above
Acked-by: Geert Uytterhoeven <geert+renesas@glider.be>
(for the whole series)
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert at linux-m68k.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
From: Simon Horman <horms@verge.net.au> Date: 2014-08-27 08:09:47
On Wed, Aug 27, 2014 at 08:55:36AM +0200, Geert Uytterhoeven wrote:
Hi Simon,
On Wed, Aug 27, 2014 at 7:28 AM, Simon Horman
[off-list ref] wrote:
quoted
n general Renesas hardware is not documented to the extent
where the relationship between IP blocks on different SoCs can be assumed
although they may appear to operate the same way. Furthermore the
documentation typically does not specify a version for individual
IP blocks. For these reasons a convention of using the SoC name in place
of a version and providing SoC-specific compat strings has been adopted.
Although not universally liked this convention is used in the bindings
for the drivers a number of drivers for Renesas hardware. The purpose
s/the drivers //
Thanks.
quoted
of this patch is to update the Renesas R-Car Compare Match Timer (CMT)
driver to follow this convention.
Signed-off-by: Simon Horman <redacted>
quoted
---
* I plan to follow up with patches to use these new bindings in the
dtsi files for the affected SoCs.
---
.../devicetree/bindings/timer/renesas,cmt.txt | 26 +++++++++++++++++++++-
1 file changed, 25 insertions(+), 1 deletion(-)
@@ -16,10 +16,34 @@ Required Properties: (CMT0 on sh7372, sh73a0 and r8a7740) - "renesas,cmt-32-fast" for the 32-bit CMT with fast clock support (CMT[234] on sh7372, sh73a0 and r8a7740)+ - "renesas,cmt-32-fast-r8a7740" for the R8A7740 32-bit CMT with fast+ clock support (CMT[234])+ - "renesas,cmt-32-fast-sh7372" for the SH7372 32-bit CMT with fast+ clock support (CMT[234])+ - "renesas,cmt-32-fast-sh73a0" for the SH73A0 32-bit CMT with fast+ clock support (CMT[234])
quoted
+ - "renesas,cmt-32-r8a7740" for the R8a7740 32-bit CMT
+ (CMT0)
+ - "renesas,cmt-32-sh7372" for the SH7372 32-bit CMT
+ (CMT0)
+ - "renesas,cmt-32-sh73a0" for the SH73a0 32-bit CMT
+ (CMT0)
I'd move these 3 non-fast "renesas,cmt-32-*" values up, under
"renesas,cmt-32".
quoted
- "renesas,cmt-48" for the 48-bit CMT
(CMT1 on sh7372, sh73a0 and r8a7740)
- "renesas,cmt-48-gen2" for the second generation 48-bit CMT
(CMT[01] on r8a73a4, r8a7790 and r8a7791)
+ - "renesas,cmt-48-r8a73a4" for the R8A73A4 48-bit CMT
+ (CMT[01])
+ - "renesas,cmt-48-r8a7740" for the R8A7740 48-bit CMT
+ (CMT1)
+ - "renesas,cmt-48-r8a7790" for the R8A7790 48-bit CMT
+ (CMT[01])
+ - "renesas,cmt-48-r8a7791" for the R8A7791 48-bit CMT
+ (CMT[01])
+ - "renesas,cmt-48-sh7372" for the SH7372 48-bit CMT
+ (CMT1)
+ - "renesas,cmt-48-sh73a0" for the SH73A0 48-bit CMT
+ (CMT1)
I'd split the above in original and gen2.
Sure. I'll re-order things as you suggest.
Perhaps you can also add blank lines in between the 4 blocks of
types; the list is getting long?
Good idea.
Apart from the minor issues above
Acked-by: Geert Uytterhoeven <geert+renesas@glider.be>
(for the whole series)
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert at linux-m68k.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
From: Mark Rutland <mark.rutland@arm.com> Date: 2014-08-27 09:51:03
Hi Simon,
On Wed, Aug 27, 2014 at 06:28:18AM +0100, Simon Horman wrote:
In general Renesas hardware is not documented to the extent
where the relationship between IP blocks on different SoCs can be assumed
although they may appear to operate the same way. Furthermore the
documentation typically does not specify a version for individual
IP blocks. For these reasons a convention of using the SoC name in place
of a version and providing SoC-specific compat strings has been adopted.
Although not universally liked this convention is used in the bindings
for the drivers a number of drivers for Renesas hardware. The purpose
of this patch is to update the Renesas R-Car Compare Match Timer (CMT)
driver to follow this convention.
Having really specific strings to give us the flexibility if necessary
makes sense, so I the addition of the strings below is fine.
I see in the example update the existing "renesas,cmt-48-gen2" string
remains. I take it we expect that as a fallback in the compatible list
for all of the new strings, and the driver can jsut match on that for
the moment?
If so, it would be nice to be more explicit as to what we expect as
fallback compatible entries.
Cheers,
Mark.
quoted hunk
Signed-off-by: Simon Horman <redacted>
---
* I plan to follow up with patches to use these new bindings in the
dtsi files for the affected SoCs.
---
.../devicetree/bindings/timer/renesas,cmt.txt | 26 +++++++++++++++++++++-
1 file changed, 25 insertions(+), 1 deletion(-)
@@ -16,10 +16,34 @@ Required Properties: (CMT0 on sh7372, sh73a0 and r8a7740) - "renesas,cmt-32-fast" for the 32-bit CMT with fast clock support (CMT[234] on sh7372, sh73a0 and r8a7740)+ - "renesas,cmt-32-fast-r8a7740" for the R8A7740 32-bit CMT with fast+ clock support (CMT[234])+ - "renesas,cmt-32-fast-sh7372" for the SH7372 32-bit CMT with fast+ clock support (CMT[234])+ - "renesas,cmt-32-fast-sh73a0" for the SH73A0 32-bit CMT with fast+ clock support (CMT[234])+ - "renesas,cmt-32-r8a7740" for the R8a7740 32-bit CMT+ (CMT0)+ - "renesas,cmt-32-sh7372" for the SH7372 32-bit CMT+ (CMT0)+ - "renesas,cmt-32-sh73a0" for the SH73a0 32-bit CMT+ (CMT0) - "renesas,cmt-48" for the 48-bit CMT (CMT1 on sh7372, sh73a0 and r8a7740) - "renesas,cmt-48-gen2" for the second generation 48-bit CMT (CMT[01] on r8a73a4, r8a7790 and r8a7791)+ - "renesas,cmt-48-r8a73a4" for the R8A73A4 48-bit CMT+ (CMT[01])+ - "renesas,cmt-48-r8a7740" for the R8A7740 48-bit CMT+ (CMT1)+ - "renesas,cmt-48-r8a7790" for the R8A7790 48-bit CMT+ (CMT[01])+ - "renesas,cmt-48-r8a7791" for the R8A7791 48-bit CMT+ (CMT[01])+ - "renesas,cmt-48-sh7372" for the SH7372 48-bit CMT+ (CMT1)+ - "renesas,cmt-48-sh73a0" for the SH73A0 48-bit CMT+ (CMT1) - reg: base address and length of the registers block for the timer module. - interrupts: interrupt-specifier for the timer, one per channel.
@@ -36,7 +60,7 @@ Example: R8A7790 (R-Car H2) CMT0 node them channels 0 and 1 in the documentation. cmt0: timer at ffca0000 {- compatible = "renesas,cmt-48-gen2";+ compatible = "renesas,cmt-48-r8a7790", "renesas,cmt-48-gen2"; reg = <0 0xffca0000 0 0x1004>; interrupts = <0 142 IRQ_TYPE_LEVEL_HIGH>, <0 142 IRQ_TYPE_LEVEL_HIGH>;
--
2.0.1
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo at vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
From: Mark Rutland <mark.rutland@arm.com> Date: 2014-08-27 09:52:40
On Wed, Aug 27, 2014 at 06:28:19AM +0100, Simon Horman wrote:
quoted hunk
In general Renesas hardware is not documented to the extent
where the relationship between IP blocks on different SoCs can be assumed
although they may appear to operate the same way. Furthermore the
documentation typically does not specify a version for individual
IP blocks. For these reasons a convention of using the SoC name in place
of a version and providing SoC-specific compat strings has been adopted.
Although not universally liked this convention is used in the bindings
for the drivers a number of drivers for Renesas hardware. The purpose
of this patch is to update the Renesas R-Car Multi-Function Timer Pulse
Unit 2 (MTU2) driver to follow this convention.
Signed-off-by: Simon Horman <redacted>
---
* I plan to follow up with a patch patch to use the new binding in the
dtsi files for the r7s72100 SoC.
---
Documentation/devicetree/bindings/timer/renesas,mtu2.txt | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
@@ -8,7 +8,9 @@ are independent. The MTU2 hardware supports five channels indexed from 0 to 4. Required Properties:- - compatible: must contain "renesas,mtu2"+ - compatible: must be one of the following.
Surely "one or more", follwing the example?
+ - "renesas,mtu2" for generic MTU2
s/generic/any/ to make it clearer this should be present in all lists
for the moment?
+ - "renesas,mtu2-r7s72100" for R7S72100 MTU2
It might make sense to move this above the "renesas,mtu2" entry to make
the ordering a bit clearer.
Cheers,
Mark.
quoted hunk
- reg: base address and length of the registers block for the timer module.
--
2.0.1
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo at vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
From: Mark Rutland <mark.rutland@arm.com> Date: 2014-08-27 09:53:08
On Wed, Aug 27, 2014 at 06:28:20AM +0100, Simon Horman wrote:
quoted hunk
In general Renesas hardware is not documented to the extent
where the relationship between IP blocks on different SoCs can be assumed
although they may appear to operate the same way. Furthermore the
documentation typically does not specify a version for individual
IP blocks. For these reasons a convention of using the SoC name in place
of a version and providing SoC-specific compat strings has been adopted.
Although not universally liked this convention is used in the bindings
for the drivers a number of drivers for Renesas hardware. The purpose
of this patch is to update the Renesas R-Car Timer Unit (TMU)
driver to follow this convention.
Signed-off-by: Simon Horman <redacted>
---
* I plan to follow up with a patch patch to use the new binding in the
dtsi files for the r8a7779 SoC.
---
Documentation/devicetree/bindings/timer/renesas,tmu.txt | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
@@ -8,7 +8,9 @@ are independent. The TMU hardware supports up to three channels. Required Properties:- - compatible: must contain "renesas,tmu"+ - compatible: must contain one of the following.+ - "renesas,tmu" generic TMU+ - "renesas,tmu-r8a7779" R8A7779 TMU
Similarly to patch 2, "one or more" and swap the order here?
Mark.
quoted hunk
- reg: base address and length of the registers block for the timer module.
--
2.0.1
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo at vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
From: Simon Horman <horms@verge.net.au> Date: 2014-09-03 01:02:01
On Wed, Aug 27, 2014 at 10:52:40AM +0100, Mark Rutland wrote:
On Wed, Aug 27, 2014 at 06:28:19AM +0100, Simon Horman wrote:
quoted
In general Renesas hardware is not documented to the extent
where the relationship between IP blocks on different SoCs can be assumed
although they may appear to operate the same way. Furthermore the
documentation typically does not specify a version for individual
IP blocks. For these reasons a convention of using the SoC name in place
of a version and providing SoC-specific compat strings has been adopted.
Although not universally liked this convention is used in the bindings
for the drivers a number of drivers for Renesas hardware. The purpose
of this patch is to update the Renesas R-Car Multi-Function Timer Pulse
Unit 2 (MTU2) driver to follow this convention.
Signed-off-by: Simon Horman <redacted>
---
* I plan to follow up with a patch patch to use the new binding in the
dtsi files for the r7s72100 SoC.
---
Documentation/devicetree/bindings/timer/renesas,mtu2.txt | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
@@ -8,7 +8,9 @@ are independent. The MTU2 hardware supports five channels indexed from 0 to 4. Required Properties:- - compatible: must contain "renesas,mtu2"+ - compatible: must be one of the following.
Surely "one or more", follwing the example?
Thanks, yes, it should be "one or more".
quoted
+ - "renesas,mtu2" for generic MTU2
s/generic/any/ to make it clearer this should be present in all lists
for the moment?
Sure.
quoted
+ - "renesas,mtu2-r7s72100" for R7S72100 MTU2
It might make sense to move this above the "renesas,mtu2" entry to make
the ordering a bit clearer.
Sure.
Cheers,
Mark.
quoted
- reg: base address and length of the registers block for the timer module.
--
2.0.1
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo at vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe linux-sh" in
the body of a message to majordomo at vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
From: Simon Horman <horms@verge.net.au> Date: 2014-09-03 01:05:49
On Wed, Aug 27, 2014 at 10:53:08AM +0100, Mark Rutland wrote:
On Wed, Aug 27, 2014 at 06:28:20AM +0100, Simon Horman wrote:
quoted
In general Renesas hardware is not documented to the extent
where the relationship between IP blocks on different SoCs can be assumed
although they may appear to operate the same way. Furthermore the
documentation typically does not specify a version for individual
IP blocks. For these reasons a convention of using the SoC name in place
of a version and providing SoC-specific compat strings has been adopted.
Although not universally liked this convention is used in the bindings
for the drivers a number of drivers for Renesas hardware. The purpose
of this patch is to update the Renesas R-Car Timer Unit (TMU)
driver to follow this convention.
Signed-off-by: Simon Horman <redacted>
---
* I plan to follow up with a patch patch to use the new binding in the
dtsi files for the r8a7779 SoC.
---
Documentation/devicetree/bindings/timer/renesas,tmu.txt | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
@@ -8,7 +8,9 @@ are independent. The TMU hardware supports up to three channels. Required Properties:- - compatible: must contain "renesas,tmu"+ - compatible: must contain one of the following.+ - "renesas,tmu" generic TMU+ - "renesas,tmu-r8a7779" R8A7779 TMU
Similarly to patch 2, "one or more" and swap the order here?
From: Simon Horman <horms@verge.net.au> Date: 2014-09-03 01:27:25
Hi Mark,
On Wed, Aug 27, 2014 at 10:51:03AM +0100, Mark Rutland wrote:
Hi Simon,
On Wed, Aug 27, 2014 at 06:28:18AM +0100, Simon Horman wrote:
quoted
In general Renesas hardware is not documented to the extent
where the relationship between IP blocks on different SoCs can be assumed
although they may appear to operate the same way. Furthermore the
documentation typically does not specify a version for individual
IP blocks. For these reasons a convention of using the SoC name in place
of a version and providing SoC-specific compat strings has been adopted.
Although not universally liked this convention is used in the bindings
for the drivers a number of drivers for Renesas hardware. The purpose
of this patch is to update the Renesas R-Car Compare Match Timer (CMT)
driver to follow this convention.
Having really specific strings to give us the flexibility if necessary
makes sense, so I the addition of the strings below is fine.
I see in the example update the existing "renesas,cmt-48-gen2" string
remains. I take it we expect that as a fallback in the compatible list
for all of the new strings, and the driver can jsut match on that for
the moment?
If so, it would be nice to be more explicit as to what we expect as
fallback compatible entries.
Yes, that is the desired behaviour.
Would this address your concerns?
It incorporates some suggestions made by Geert Uytterhoeven
and explicitly talks about fallback entries.
From: Simon Horman <redacted>
[PATCH v1.1] clocksource: sh_cmt: Document SoC specific bindings
In general Renesas hardware is not documented to the extent
where the relationship between IP blocks on different SoCs can be assumed
although they may appear to operate the same way. Furthermore the
documentation typically does not specify a version for individual
IP blocks. For these reasons a convention of using the SoC name in place
of a version and providing SoC-specific compat strings has been adopted.
Although not universally liked this convention is used in the bindings for
a number of drivers for Renesas hardware. The purpose of this patch is to
update the Renesas R-Car Compare Match Timer (CMT) driver to follow this
convention.
Signed-off-by: Simon Horman <redacted>
Acked-by: Geert Uytterhoeven <geert+renesas@glider.be>
---
* I plan to follow up with patches to use these new bindings in the
dtsi files for the affected SoCs.
v2
* Reorder compat entries so more-specific entries and their fallbacks
are grouped with the fallback entry coming last.
* Explicitly document fallback
---
.../devicetree/bindings/timer/renesas,cmt.txt | 44 +++++++++++++++++++---
1 file changed, 38 insertions(+), 6 deletions(-)
@@ -11,15 +11,47 @@ datasheets. Required Properties:- - compatible: must contain one of the following.- - "renesas,cmt-32" for the 32-bit CMT+ - compatible: must contain one or more of the following:+ - "renesas,cmt-32-r8a7740" for the R8a7740 32-bit CMT+ (CMT0)+ - "renesas,cmt-32-sh7372" for the SH7372 32-bit CMT+ (CMT0)+ - "renesas,cmt-32-sh73a0" for the SH73a0 32-bit CMT+ (CMT0)+ - "renesas,cmt-32" for all 32-bit CMT without fast clock support (CMT0 on sh7372, sh73a0 and r8a7740)- - "renesas,cmt-32-fast" for the 32-bit CMT with fast clock support+ This is a fallback for the above renesas,cmt-32-* entries.++ - "renesas,cmt-32-fast-r8a7740" for the R8A7740 32-bit CMT with fast+ clock support (CMT[234])+ - "renesas,cmt-32-fast-sh7372" for the SH7372 32-bit CMT with fast+ clock support (CMT[234])+ - "renesas,cmt-32-fast-sh73a0" for the SH73A0 32-bit CMT with fast+ clock support (CMT[234])+ - "renesas,cmt-32-fast" for all 32-bit CMT with fast clock support (CMT[234] on sh7372, sh73a0 and r8a7740)- - "renesas,cmt-48" for the 48-bit CMT+ This is a fallback for the above renesas,cmt-32-fast-* entries.++ - "renesas,cmt-48-sh7372" for the SH7372 48-bit CMT+ (CMT1)+ - "renesas,cmt-48-sh73a0" for the SH73A0 48-bit CMT+ (CMT1)+ - "renesas,cmt-48-r8a7740" for the R8A7740 48-bit CMT+ (CMT1)+ - "renesas,cmt-48" for all non-second generation 48-bit CMT (CMT1 on sh7372, sh73a0 and r8a7740)- - "renesas,cmt-48-gen2" for the second generation 48-bit CMT+ This is a fallback for the above renesas,cmt-48-* entries.++ - "renesas,cmt-48-r8a73a4" for the R8A73A4 48-bit CMT+ (CMT[01])+ - "renesas,cmt-48-r8a7790" for the R8A7790 48-bit CMT+ (CMT[01])+ - "renesas,cmt-48-r8a7791" for the R8A7791 48-bit CMT+ (CMT[01])+ - "renesas,cmt-48-gen2" for all second generation 48-bit CMT (CMT[01] on r8a73a4, r8a7790 and r8a7791)+ This is a fallback for the renesas,cmt-48-r8a73a4,+ renesas,cmt-48-r8a7790 and renesas,cmt-48-gen2 entries. - reg: base address and length of the registers block for the timer module. - interrupts: interrupt-specifier for the timer, one per channel.
@@ -36,7 +68,7 @@ Example: R8A7790 (R-Car H2) CMT0 node them channels 0 and 1 in the documentation. cmt0: timer at ffca0000 {- compatible = "renesas,cmt-48-gen2";+ compatible = "renesas,cmt-48-r8a7790", "renesas,cmt-48-gen2"; reg = <0 0xffca0000 0 0x1004>; interrupts = <0 142 IRQ_TYPE_LEVEL_HIGH>, <0 142 IRQ_TYPE_LEVEL_HIGH>;
From: Mark Rutland <mark.rutland@arm.com> Date: 2014-09-03 09:17:50
On Wed, Sep 03, 2014 at 02:27:25AM +0100, Simon Horman wrote:
Hi Mark,
On Wed, Aug 27, 2014 at 10:51:03AM +0100, Mark Rutland wrote:
quoted
Hi Simon,
On Wed, Aug 27, 2014 at 06:28:18AM +0100, Simon Horman wrote:
quoted
In general Renesas hardware is not documented to the extent
where the relationship between IP blocks on different SoCs can be assumed
although they may appear to operate the same way. Furthermore the
documentation typically does not specify a version for individual
IP blocks. For these reasons a convention of using the SoC name in place
of a version and providing SoC-specific compat strings has been adopted.
Although not universally liked this convention is used in the bindings
for the drivers a number of drivers for Renesas hardware. The purpose
of this patch is to update the Renesas R-Car Compare Match Timer (CMT)
driver to follow this convention.
Having really specific strings to give us the flexibility if necessary
makes sense, so I the addition of the strings below is fine.
I see in the example update the existing "renesas,cmt-48-gen2" string
remains. I take it we expect that as a fallback in the compatible list
for all of the new strings, and the driver can jsut match on that for
the moment?
If so, it would be nice to be more explicit as to what we expect as
fallback compatible entries.
Yes, that is the desired behaviour.
Would this address your concerns?
It incorporates some suggestions made by Geert Uytterhoeven
and explicitly talks about fallback entries.
From: Simon Horman <redacted>
[PATCH v1.1] clocksource: sh_cmt: Document SoC specific bindings
In general Renesas hardware is not documented to the extent
where the relationship between IP blocks on different SoCs can be assumed
although they may appear to operate the same way. Furthermore the
documentation typically does not specify a version for individual
IP blocks. For these reasons a convention of using the SoC name in place
of a version and providing SoC-specific compat strings has been adopted.
Although not universally liked this convention is used in the bindings for
a number of drivers for Renesas hardware. The purpose of this patch is to
update the Renesas R-Car Compare Match Timer (CMT) driver to follow this
convention.
Signed-off-by: Simon Horman <redacted>
Acked-by: Geert Uytterhoeven <geert+renesas@glider.be>
I'm happy with this.
Acked-by: Mark Rutland <mark.rutland@arm.com>
Mark.
quoted hunk
---
* I plan to follow up with patches to use these new bindings in the
dtsi files for the affected SoCs.
v2
* Reorder compat entries so more-specific entries and their fallbacks
are grouped with the fallback entry coming last.
* Explicitly document fallback
---
.../devicetree/bindings/timer/renesas,cmt.txt | 44 +++++++++++++++++++---
1 file changed, 38 insertions(+), 6 deletions(-)
@@ -11,15 +11,47 @@ datasheets. Required Properties:- - compatible: must contain one of the following.- - "renesas,cmt-32" for the 32-bit CMT+ - compatible: must contain one or more of the following:+ - "renesas,cmt-32-r8a7740" for the R8a7740 32-bit CMT+ (CMT0)+ - "renesas,cmt-32-sh7372" for the SH7372 32-bit CMT+ (CMT0)+ - "renesas,cmt-32-sh73a0" for the SH73a0 32-bit CMT+ (CMT0)+ - "renesas,cmt-32" for all 32-bit CMT without fast clock support (CMT0 on sh7372, sh73a0 and r8a7740)- - "renesas,cmt-32-fast" for the 32-bit CMT with fast clock support+ This is a fallback for the above renesas,cmt-32-* entries.++ - "renesas,cmt-32-fast-r8a7740" for the R8A7740 32-bit CMT with fast+ clock support (CMT[234])+ - "renesas,cmt-32-fast-sh7372" for the SH7372 32-bit CMT with fast+ clock support (CMT[234])+ - "renesas,cmt-32-fast-sh73a0" for the SH73A0 32-bit CMT with fast+ clock support (CMT[234])+ - "renesas,cmt-32-fast" for all 32-bit CMT with fast clock support (CMT[234] on sh7372, sh73a0 and r8a7740)- - "renesas,cmt-48" for the 48-bit CMT+ This is a fallback for the above renesas,cmt-32-fast-* entries.++ - "renesas,cmt-48-sh7372" for the SH7372 48-bit CMT+ (CMT1)+ - "renesas,cmt-48-sh73a0" for the SH73A0 48-bit CMT+ (CMT1)+ - "renesas,cmt-48-r8a7740" for the R8A7740 48-bit CMT+ (CMT1)+ - "renesas,cmt-48" for all non-second generation 48-bit CMT (CMT1 on sh7372, sh73a0 and r8a7740)- - "renesas,cmt-48-gen2" for the second generation 48-bit CMT+ This is a fallback for the above renesas,cmt-48-* entries.++ - "renesas,cmt-48-r8a73a4" for the R8A73A4 48-bit CMT+ (CMT[01])+ - "renesas,cmt-48-r8a7790" for the R8A7790 48-bit CMT+ (CMT[01])+ - "renesas,cmt-48-r8a7791" for the R8A7791 48-bit CMT+ (CMT[01])+ - "renesas,cmt-48-gen2" for all second generation 48-bit CMT (CMT[01] on r8a73a4, r8a7790 and r8a7791)+ This is a fallback for the renesas,cmt-48-r8a73a4,+ renesas,cmt-48-r8a7790 and renesas,cmt-48-gen2 entries. - reg: base address and length of the registers block for the timer module. - interrupts: interrupt-specifier for the timer, one per channel.
@@ -36,7 +68,7 @@ Example: R8A7790 (R-Car H2) CMT0 node them channels 0 and 1 in the documentation. cmt0: timer at ffca0000 {- compatible = "renesas,cmt-48-gen2";+ compatible = "renesas,cmt-48-r8a7790", "renesas,cmt-48-gen2"; reg = <0 0xffca0000 0 0x1004>; interrupts = <0 142 IRQ_TYPE_LEVEL_HIGH>, <0 142 IRQ_TYPE_LEVEL_HIGH>;