[2/2] clocksource: sh_cmt: add R-Car gen3 support
diff mbox series

Message ID dc0446c7-e63b-17f1-45ed-e544b5602b9e@cogentembedded.com
State Superseded
Headers show
Series
  • Add R-Car gen3 SoC support to the CMT driver
Related show

Commit Message

Sergei Shtylyov Sept. 5, 2018, 8:32 p.m. UTC
Add support for the R-Car gen3 CMT0 and CMT1 bindings -- they seem to be
the same CMT0 and CMT1 as in R-Car gen2 SoCs. Also document R8A779{7|8}
bindings as these are the R-Car gen3 SoCs for which the initial support
was done.

Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>

---
 Documentation/devicetree/bindings/timer/renesas,cmt.txt |    7 +++++++
 drivers/clocksource/sh_cmt.c                            |    8 ++++++++
 2 files changed, 15 insertions(+)

Comments

Chris Paterson Sept. 6, 2018, 8:06 a.m. UTC | #1
Hello Sergei,

> From: devicetree-owner@vger.kernel.org <devicetree-
> owner@vger.kernel.org> On Behalf Of Sergei Shtylyov
> Sent: 05 September 2018 21:32
> 
> Add support for the R-Car gen3 CMT0 and CMT1 bindings -- they seem to be
> the same CMT0 and CMT1 as in R-Car gen2 SoCs. Also document R8A779{7|8}
> bindings as these are the R-Car gen3 SoCs for which the initial support was
> done.

Is it allowed to combine the bindings doc update with the driver change? (I usually get a checkpatch warning for this).

It it's not a problem:
Reviewed-by: Chris Paterson <chris.paterson2@renesas.com>

Kind regards, Chris

> 
> Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
> 
> ---
>  Documentation/devicetree/bindings/timer/renesas,cmt.txt |    7 +++++++
>  drivers/clocksource/sh_cmt.c                            |    8 ++++++++
>  2 files changed, 15 insertions(+)
> 
> Index: renesas/Documentation/devicetree/bindings/timer/renesas,cmt.txt
> ==========================================================
> =========
> --- renesas.orig/Documentation/devicetree/bindings/timer/renesas,cmt.txt
> +++ renesas/Documentation/devicetree/bindings/timer/renesas,cmt.txt
> @@ -34,6 +34,10 @@ Required Properties:
>      - "renesas,r8a7793-cmt1" for the 48-bit CMT1 device included in r8a7793.
>      - "renesas,r8a7794-cmt0" for the 32-bit CMT0 device included in r8a7794.
>      - "renesas,r8a7794-cmt1" for the 48-bit CMT1 device included in r8a7794.
> +    - "renesas,r8a77970-cmt0" for the 32-bit CMT0 device included in
> r8a77970.
> +    - "renesas,r8a77970-cmt1" for the 48-bit CMT1 device included in
> r8a77970.
> +    - "renesas,r8a77980-cmt0" for the 32-bit CMT0 device included in
> r8a77980.
> +    - "renesas,r8a77980-cmt1" for the 48-bit CMT1 device included in
> r8a77980.
> 
>      - "renesas,rcar-gen2-cmt0" for 32-bit CMT0 devices included in R-Car Gen2
>  		and RZ/G1.
> @@ -41,6 +45,9 @@ Required Properties:
>  		and RZ/G1.
>  		These are fallbacks for r8a73a4, R-Car Gen2 and RZ/G1
> entries
>  		listed above.
> +    - "renesas,rcar-gen3-cmt0" for 32-bit CMT0 devices included in R-Car
> Gen3.
> +    - "renesas,rcar-gen3-cmt1" for 48-bit CMT1 devices included in R-Car
> Gen3.
> +		These are fallbacks for R-Car Gen3 entries listed above.
> 
>    - reg: base address and length of the registers block for the timer module.
>    - interrupts: interrupt-specifier for the timer, one per channel.
> Index: renesas/drivers/clocksource/sh_cmt.c
> ==========================================================
> =========
> --- renesas.orig/drivers/clocksource/sh_cmt.c
> +++ renesas/drivers/clocksource/sh_cmt.c
> @@ -945,6 +945,14 @@ static const struct of_device_id sh_cmt_
>  		.compatible = "renesas,rcar-gen2-cmt1",
>  		.data = &sh_cmt_info[SH_CMT1_RCAR_GEN2]
>  	},
> +	{
> +		.compatible = "renesas,rcar-gen3-cmt0",
> +		.data = &sh_cmt_info[SH_CMT0_RCAR_GEN2]
> +	},
> +	{
> +		.compatible = "renesas,rcar-gen3-cmt1",
> +		.data = &sh_cmt_info[SH_CMT1_RCAR_GEN2]
> +	},
>  	{ }
>  };
>  MODULE_DEVICE_TABLE(of, sh_cmt_of_table);
Biju Das Sept. 6, 2018, 8:27 a.m. UTC | #2
Hi Sergie,

Thanks for the patch

> -----Original Message-----
> From: devicetree-owner@vger.kernel.org <devicetree-
> owner@vger.kernel.org> On Behalf Of Sergei Shtylyov
> Sent: 05 September 2018 21:32
> To: Daniel Lezcano <daniel.lezcano@linaro.org>; Thomas Gleixner
> <tglx@linutronix.de>; Rob Herring <robh+dt@kernel.org>;
> devicetree@vger.kernel.org
> Cc: linux-renesas-soc@vger.kernel.org; linux-sh@vger.kernel.org
> Subject: [PATCH 2/2] clocksource: sh_cmt: add R-Car gen3 support
>
> Add support for the R-Car gen3 CMT0 and CMT1 bindings -- they seem to be
> the same CMT0 and CMT1 as in R-Car gen2 SoCs. Also document R8A779{7|8}
> bindings as these are the R-Car gen3 SoCs for which the initial support was
> done.
>
> Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
>
> ---
>  Documentation/devicetree/bindings/timer/renesas,cmt.txt |    7 +++++++
>  drivers/clocksource/sh_cmt.c                            |    8 ++++++++
>  2 files changed, 15 insertions(+)
>
> Index: renesas/Documentation/devicetree/bindings/timer/renesas,cmt.txt
> ==========================================================
> =========
> --- renesas.orig/Documentation/devicetree/bindings/timer/renesas,cmt.txt
> +++ renesas/Documentation/devicetree/bindings/timer/renesas,cmt.txt
> @@ -34,6 +34,10 @@ Required Properties:
>      - "renesas,r8a7793-cmt1" for the 48-bit CMT1 device included in r8a7793.
>      - "renesas,r8a7794-cmt0" for the 32-bit CMT0 device included in r8a7794.
>      - "renesas,r8a7794-cmt1" for the 48-bit CMT1 device included in r8a7794.
> +    - "renesas,r8a77970-cmt0" for the 32-bit CMT0 device included in
> r8a77970.
> +    - "renesas,r8a77970-cmt1" for the 48-bit CMT1 device included in
> r8a77970.
> +    - "renesas,r8a77980-cmt0" for the 32-bit CMT0 device included in
> r8a77980.
> +    - "renesas,r8a77980-cmt1" for the 48-bit CMT1 device included in
> r8a77980.
>
>      - "renesas,rcar-gen2-cmt0" for 32-bit CMT0 devices included in R-Car Gen2
>  and RZ/G1.
> @@ -41,6 +45,9 @@ Required Properties:
>  and RZ/G1.
>  These are fallbacks for r8a73a4, R-Car Gen2 and RZ/G1
> entries
>  listed above.
> +    - "renesas,rcar-gen3-cmt0" for 32-bit CMT0 devices included in R-Car
> Gen3.
> +    - "renesas,rcar-gen3-cmt1" for 48-bit CMT1 devices included in R-Car

 Do we need to mention CMT1/2/3 instead of CMT1, since CMT2/3 is similar to CMT1?

> Gen3.
> +These are fallbacks for R-Car Gen3 entries listed above.
>
>    - reg: base address and length of the registers block for the timer module.
>    - interrupts: interrupt-specifier for the timer, one per channel.
> Index: renesas/drivers/clocksource/sh_cmt.c
> ==========================================================
> =========
> --- renesas.orig/drivers/clocksource/sh_cmt.c
> +++ renesas/drivers/clocksource/sh_cmt.c
> @@ -945,6 +945,14 @@ static const struct of_device_id sh_cmt_
>  .compatible = "renesas,rcar-gen2-cmt1",
>  .data = &sh_cmt_info[SH_CMT1_RCAR_GEN2]
>  },
> +{
> +.compatible = "renesas,rcar-gen3-cmt0",
> +.data = &sh_cmt_info[SH_CMT0_RCAR_GEN2]
> +},
> +{
> +.compatible = "renesas,rcar-gen3-cmt1",
> +.data = &sh_cmt_info[SH_CMT1_RCAR_GEN2]
> +},
>  { }
>  };
>  MODULE_DEVICE_TABLE(of, sh_cmt_of_table);

regards,
Biju



Renesas Electronics Europe Ltd, Dukes Meadow, Millboard Road, Bourne End, Buckinghamshire, SL8 5FH, UK. Registered in England & Wales under Registered No. 04586709.
Sergei Shtylyov Sept. 10, 2018, 7:12 p.m. UTC | #3
Hello!

On 09/06/2018 11:27 AM, Biju Das wrote:

>> -----Original Message-----
>> From: devicetree-owner@vger.kernel.org <devicetree-
>> owner@vger.kernel.org> On Behalf Of Sergei Shtylyov
>> Sent: 05 September 2018 21:32
>> To: Daniel Lezcano <daniel.lezcano@linaro.org>; Thomas Gleixner
>> <tglx@linutronix.de>; Rob Herring <robh+dt@kernel.org>;
>> devicetree@vger.kernel.org
>> Cc: linux-renesas-soc@vger.kernel.org; linux-sh@vger.kernel.org
>> Subject: [PATCH 2/2] clocksource: sh_cmt: add R-Car gen3 support
>>
>> Add support for the R-Car gen3 CMT0 and CMT1 bindings -- they seem to be
>> the same CMT0 and CMT1 as in R-Car gen2 SoCs. Also document R8A779{7|8}
>> bindings as these are the R-Car gen3 SoCs for which the initial support was
>> done.
>>
>> Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
>>
>> ---
>>  Documentation/devicetree/bindings/timer/renesas,cmt.txt |    7 +++++++
>>  drivers/clocksource/sh_cmt.c                            |    8 ++++++++
>>  2 files changed, 15 insertions(+)
>>
>> Index: renesas/Documentation/devicetree/bindings/timer/renesas,cmt.txt
>> ==========================================================
>> =========
>> --- renesas.orig/Documentation/devicetree/bindings/timer/renesas,cmt.txt
>> +++ renesas/Documentation/devicetree/bindings/timer/renesas,cmt.txt
>> @@ -34,6 +34,10 @@ Required Properties:
>>      - "renesas,r8a7793-cmt1" for the 48-bit CMT1 device included in r8a7793.
>>      - "renesas,r8a7794-cmt0" for the 32-bit CMT0 device included in r8a7794.
>>      - "renesas,r8a7794-cmt1" for the 48-bit CMT1 device included in r8a7794.
>> +    - "renesas,r8a77970-cmt0" for the 32-bit CMT0 device included in
>> r8a77970.
>> +    - "renesas,r8a77970-cmt1" for the 48-bit CMT1 device included in
>> r8a77970.
>> +    - "renesas,r8a77980-cmt0" for the 32-bit CMT0 device included in
>> r8a77980.
>> +    - "renesas,r8a77980-cmt1" for the 48-bit CMT1 device included in
>> r8a77980.
>>
>>      - "renesas,rcar-gen2-cmt0" for 32-bit CMT0 devices included in R-Car Gen2
>>  and RZ/G1.
>> @@ -41,6 +45,9 @@ Required Properties:
>>  and RZ/G1.
>>  These are fallbacks for r8a73a4, R-Car Gen2 and RZ/G1
>> entries
>>  listed above.
>> +    - "renesas,rcar-gen3-cmt0" for 32-bit CMT0 devices included in R-Car
>> Gen3.
>> +    - "renesas,rcar-gen3-cmt1" for 48-bit CMT1 devices included in R-Car
> 
>  Do we need to mention CMT1/2/3 instead of CMT1, since CMT2/3 is similar to CMT1?

   Well, the manual only describes CMT0 and CMT1 separately. Perhaps it would have been
clearer to call them CMTT0 and CMTT1 as they stand for Compare Match Timer Type 0/1?
Note at this point we already have a history of describing CMT0/1 only in the bindings
as well...

[...]

MBR, Sergei
Sergei Shtylyov Sept. 10, 2018, 7:30 p.m. UTC | #4
Hello!

On 09/06/2018 11:06 AM, Chris Paterson wrote:

>> From: devicetree-owner@vger.kernel.org <devicetree-
>> owner@vger.kernel.org> On Behalf Of Sergei Shtylyov
>> Sent: 05 September 2018 21:32
>>
>> Add support for the R-Car gen3 CMT0 and CMT1 bindings -- they seem to be
>> the same CMT0 and CMT1 as in R-Car gen2 SoCs. Also document R8A779{7|8}
>> bindings as these are the R-Car gen3 SoCs for which the initial support was
>> done.
> 
> Is it allowed to combine the bindings doc update with the driver change? (I usually get a checkpatch warning for this).

   I don't (and have double checked that this patch is checkpatch-clean).

> It it's not a problem:

   Let's hear what Rob says...
   However note that Documentation/devicetree/bindings/timer/ is
listed under the CLOCKSOURCE, CLOCKEVENT DRIVERS entry in MAINTAINERS. 

> Reviewed-by: Chris Paterson <chris.paterson2@renesas.com>

   Thank you!

> Kind regards, Chris

MBR, Sergei
Sergei Shtylyov Sept. 10, 2018, 7:43 p.m. UTC | #5
On 09/10/2018 10:30 PM, Sergei Shtylyov wrote:

>>> From: devicetree-owner@vger.kernel.org <devicetree-
>>> owner@vger.kernel.org> On Behalf Of Sergei Shtylyov
>>> Sent: 05 September 2018 21:32
>>>
>>> Add support for the R-Car gen3 CMT0 and CMT1 bindings -- they seem to be
>>> the same CMT0 and CMT1 as in R-Car gen2 SoCs. Also document R8A779{7|8}
>>> bindings as these are the R-Car gen3 SoCs for which the initial support was
>>> done.
>>
>> Is it allowed to combine the bindings doc update with the driver change? (I usually get a checkpatch warning for this).
> 
>    I don't (and have double checked that this patch is checkpatch-clean).

   Hm... triple checking has revealed something new: the patch is good only in the context
of tip.git, 4.19-rc3 based branch from renesas.git complains about the binding not being
in a separate patch. Well, I have to comply... :-)

[...]

>> Kind regards, Chris

MBR, Sergei

Patch
diff mbox series

Index: renesas/Documentation/devicetree/bindings/timer/renesas,cmt.txt
===================================================================
--- renesas.orig/Documentation/devicetree/bindings/timer/renesas,cmt.txt
+++ renesas/Documentation/devicetree/bindings/timer/renesas,cmt.txt
@@ -34,6 +34,10 @@  Required Properties:
     - "renesas,r8a7793-cmt1" for the 48-bit CMT1 device included in r8a7793.
     - "renesas,r8a7794-cmt0" for the 32-bit CMT0 device included in r8a7794.
     - "renesas,r8a7794-cmt1" for the 48-bit CMT1 device included in r8a7794.
+    - "renesas,r8a77970-cmt0" for the 32-bit CMT0 device included in r8a77970.
+    - "renesas,r8a77970-cmt1" for the 48-bit CMT1 device included in r8a77970.
+    - "renesas,r8a77980-cmt0" for the 32-bit CMT0 device included in r8a77980.
+    - "renesas,r8a77980-cmt1" for the 48-bit CMT1 device included in r8a77980.
 
     - "renesas,rcar-gen2-cmt0" for 32-bit CMT0 devices included in R-Car Gen2
 		and RZ/G1.
@@ -41,6 +45,9 @@  Required Properties:
 		and RZ/G1.
 		These are fallbacks for r8a73a4, R-Car Gen2 and RZ/G1 entries
 		listed above.
+    - "renesas,rcar-gen3-cmt0" for 32-bit CMT0 devices included in R-Car Gen3.
+    - "renesas,rcar-gen3-cmt1" for 48-bit CMT1 devices included in R-Car Gen3.
+		These are fallbacks for R-Car Gen3 entries listed above.
 
   - reg: base address and length of the registers block for the timer module.
   - interrupts: interrupt-specifier for the timer, one per channel.
Index: renesas/drivers/clocksource/sh_cmt.c
===================================================================
--- renesas.orig/drivers/clocksource/sh_cmt.c
+++ renesas/drivers/clocksource/sh_cmt.c
@@ -945,6 +945,14 @@  static const struct of_device_id sh_cmt_
 		.compatible = "renesas,rcar-gen2-cmt1",
 		.data = &sh_cmt_info[SH_CMT1_RCAR_GEN2]
 	},
+	{
+		.compatible = "renesas,rcar-gen3-cmt0",
+		.data = &sh_cmt_info[SH_CMT0_RCAR_GEN2]
+	},
+	{
+		.compatible = "renesas,rcar-gen3-cmt1",
+		.data = &sh_cmt_info[SH_CMT1_RCAR_GEN2]
+	},
 	{ }
 };
 MODULE_DEVICE_TABLE(of, sh_cmt_of_table);