All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/3] dt-bindings/timer: ingenic: Add compatible strings for JZ4760(B)
@ 2021-03-07 17:15 Paul Cercueil
  2021-03-07 17:15 ` [PATCH 2/3] clocksource: ingenic: Add support for the JZ4760 Paul Cercueil
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Paul Cercueil @ 2021-03-07 17:15 UTC (permalink / raw)
  To: Daniel Lezcano, Thomas Gleixner, Rob Herring
  Cc: od, linux-kernel, devicetree, Paul Cercueil

Add compatible strings to support the system timer, clocksource, OST,
watchdog and PWM blocks of the JZ4760 and JZ4760B SoCs.

Newer SoCs which behave like the JZ4760 or JZ4760B now see their
compatible string require a fallback compatible string that corresponds
to one of these two SoCs.

Signed-off-by: Paul Cercueil <paul@crapouillou.net>
---
 .../bindings/timer/ingenic,tcu.yaml           | 28 ++++++++++++++-----
 1 file changed, 21 insertions(+), 7 deletions(-)

diff --git a/Documentation/devicetree/bindings/timer/ingenic,tcu.yaml b/Documentation/devicetree/bindings/timer/ingenic,tcu.yaml
index 024bcad75101..26561fe72076 100644
--- a/Documentation/devicetree/bindings/timer/ingenic,tcu.yaml
+++ b/Documentation/devicetree/bindings/timer/ingenic,tcu.yaml
@@ -20,6 +20,8 @@ select:
         enum:
           - ingenic,jz4740-tcu
           - ingenic,jz4725b-tcu
+          - ingenic,jz4760-tcu
+          - ingenic,jz4760b-tcu
           - ingenic,jz4770-tcu
           - ingenic,jz4780-tcu
           - ingenic,x1000-tcu
@@ -52,12 +54,15 @@ properties:
           - enum:
               - ingenic,jz4740-tcu
               - ingenic,jz4725b-tcu
-              - ingenic,jz4770-tcu
+              - ingenic,jz4760-tcu
               - ingenic,x1000-tcu
           - const: simple-mfd
       - items:
-          - const: ingenic,jz4780-tcu
-          - const: ingenic,jz4770-tcu
+          - enum:
+            - ingenic,jz4780-tcu
+            - ingenic,jz4770-tcu
+            - ingenic,jz4760b-tcu
+          - const: ingenic,jz4760-tcu
           - const: simple-mfd
 
   reg:
@@ -118,6 +123,8 @@ patternProperties:
           - items:
               - enum:
                   - ingenic,jz4770-watchdog
+                  - ingenic,jz4760b-watchdog
+                  - ingenic,jz4760-watchdog
                   - ingenic,jz4725b-watchdog
               - const: ingenic,jz4740-watchdog
 
@@ -147,6 +154,8 @@ patternProperties:
               - ingenic,jz4725b-pwm
           - items:
               - enum:
+                  - ingenic,jz4760-pwm
+                  - ingenic,jz4760b-pwm
                   - ingenic,jz4770-pwm
                   - ingenic,jz4780-pwm
               - const: ingenic,jz4740-pwm
@@ -183,10 +192,15 @@ patternProperties:
         oneOf:
           - enum:
               - ingenic,jz4725b-ost
-              - ingenic,jz4770-ost
+              - ingenic,jz4760b-ost
+          - items:
+              - const: ingenic,jz4760-ost
+              - const: ingenic,jz4725b-ost
           - items:
-              - const: ingenic,jz4780-ost
-              - const: ingenic,jz4770-ost
+              - enum:
+                - ingenic,jz4780-ost
+                - ingenic,jz4770-ost
+              - const: ingenic,jz4760b-ost
 
       reg:
         maxItems: 1
@@ -226,7 +240,7 @@ examples:
     #include <dt-bindings/clock/jz4770-cgu.h>
     #include <dt-bindings/clock/ingenic,tcu.h>
     tcu: timer@10002000 {
-      compatible = "ingenic,jz4770-tcu", "simple-mfd";
+      compatible = "ingenic,jz4770-tcu", "ingenic,jz4760-tcu", "simple-mfd";
       reg = <0x10002000 0x1000>;
       #address-cells = <1>;
       #size-cells = <1>;
-- 
2.30.1


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

* [PATCH 2/3] clocksource: ingenic: Add support for the JZ4760
  2021-03-07 17:15 [PATCH 1/3] dt-bindings/timer: ingenic: Add compatible strings for JZ4760(B) Paul Cercueil
@ 2021-03-07 17:15 ` Paul Cercueil
  2021-03-07 17:15 ` [PATCH 3/3] clocksource: ingenic-ost: Add support for the JZ4760B Paul Cercueil
  2021-03-08 17:39 ` [PATCH 1/3] dt-bindings/timer: ingenic: Add compatible strings for JZ4760(B) Rob Herring
  2 siblings, 0 replies; 5+ messages in thread
From: Paul Cercueil @ 2021-03-07 17:15 UTC (permalink / raw)
  To: Daniel Lezcano, Thomas Gleixner, Rob Herring
  Cc: od, linux-kernel, devicetree, Paul Cercueil

Add support for the TCU (Timer/Counter Unit) of the JZ4760 and JZ4760B
SoCs.

Signed-off-by: Paul Cercueil <paul@crapouillou.net>
---
 drivers/clocksource/ingenic-timer.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/clocksource/ingenic-timer.c b/drivers/clocksource/ingenic-timer.c
index 905fd6b163a8..24ed0f1f089b 100644
--- a/drivers/clocksource/ingenic-timer.c
+++ b/drivers/clocksource/ingenic-timer.c
@@ -264,6 +264,7 @@ static const struct ingenic_soc_info jz4725b_soc_info = {
 static const struct of_device_id ingenic_tcu_of_match[] = {
 	{ .compatible = "ingenic,jz4740-tcu", .data = &jz4740_soc_info, },
 	{ .compatible = "ingenic,jz4725b-tcu", .data = &jz4725b_soc_info, },
+	{ .compatible = "ingenic,jz4760-tcu", .data = &jz4740_soc_info, },
 	{ .compatible = "ingenic,jz4770-tcu", .data = &jz4740_soc_info, },
 	{ .compatible = "ingenic,x1000-tcu", .data = &jz4740_soc_info, },
 	{ /* sentinel */ }
@@ -358,6 +359,7 @@ static int __init ingenic_tcu_init(struct device_node *np)
 
 TIMER_OF_DECLARE(jz4740_tcu_intc,  "ingenic,jz4740-tcu",  ingenic_tcu_init);
 TIMER_OF_DECLARE(jz4725b_tcu_intc, "ingenic,jz4725b-tcu", ingenic_tcu_init);
+TIMER_OF_DECLARE(jz4760_tcu_intc,  "ingenic,jz4760-tcu",  ingenic_tcu_init);
 TIMER_OF_DECLARE(jz4770_tcu_intc,  "ingenic,jz4770-tcu",  ingenic_tcu_init);
 TIMER_OF_DECLARE(x1000_tcu_intc,  "ingenic,x1000-tcu",  ingenic_tcu_init);
 
-- 
2.30.1


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

* [PATCH 3/3] clocksource: ingenic-ost: Add support for the JZ4760B
  2021-03-07 17:15 [PATCH 1/3] dt-bindings/timer: ingenic: Add compatible strings for JZ4760(B) Paul Cercueil
  2021-03-07 17:15 ` [PATCH 2/3] clocksource: ingenic: Add support for the JZ4760 Paul Cercueil
@ 2021-03-07 17:15 ` Paul Cercueil
  2021-03-08 17:39 ` [PATCH 1/3] dt-bindings/timer: ingenic: Add compatible strings for JZ4760(B) Rob Herring
  2 siblings, 0 replies; 5+ messages in thread
From: Paul Cercueil @ 2021-03-07 17:15 UTC (permalink / raw)
  To: Daniel Lezcano, Thomas Gleixner, Rob Herring
  Cc: od, linux-kernel, devicetree, Paul Cercueil

The OST in the JZ4760B SoC works exactly the same as in the JZ4770. But
since the JZ4760B is older, its Device Tree string does not fall back to
the JZ4770 one; so add support for the JZ4760B compatible string here.

Signed-off-by: Paul Cercueil <paul@crapouillou.net>
---
 drivers/clocksource/ingenic-ost.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/drivers/clocksource/ingenic-ost.c b/drivers/clocksource/ingenic-ost.c
index 029efc2731b4..d2d664601441 100644
--- a/drivers/clocksource/ingenic-ost.c
+++ b/drivers/clocksource/ingenic-ost.c
@@ -167,13 +167,14 @@ static const struct ingenic_ost_soc_info jz4725b_ost_soc_info = {
 	.is64bit = false,
 };
 
-static const struct ingenic_ost_soc_info jz4770_ost_soc_info = {
+static const struct ingenic_ost_soc_info jz4760b_ost_soc_info = {
 	.is64bit = true,
 };
 
 static const struct of_device_id ingenic_ost_of_match[] = {
 	{ .compatible = "ingenic,jz4725b-ost", .data = &jz4725b_ost_soc_info, },
-	{ .compatible = "ingenic,jz4770-ost", .data = &jz4770_ost_soc_info, },
+	{ .compatible = "ingenic,jz4760b-ost", .data = &jz4760b_ost_soc_info, },
+	{ .compatible = "ingenic,jz4770-ost", .data = &jz4760b_ost_soc_info, },
 	{ }
 };
 
-- 
2.30.1


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

* Re: [PATCH 1/3] dt-bindings/timer: ingenic: Add compatible strings for JZ4760(B)
  2021-03-07 17:15 [PATCH 1/3] dt-bindings/timer: ingenic: Add compatible strings for JZ4760(B) Paul Cercueil
  2021-03-07 17:15 ` [PATCH 2/3] clocksource: ingenic: Add support for the JZ4760 Paul Cercueil
  2021-03-07 17:15 ` [PATCH 3/3] clocksource: ingenic-ost: Add support for the JZ4760B Paul Cercueil
@ 2021-03-08 17:39 ` Rob Herring
  2021-03-08 21:20   ` Paul Cercueil
  2 siblings, 1 reply; 5+ messages in thread
From: Rob Herring @ 2021-03-08 17:39 UTC (permalink / raw)
  To: Paul Cercueil
  Cc: od, Daniel Lezcano, Thomas Gleixner, Rob Herring, linux-kernel,
	devicetree

On Sun, 07 Mar 2021 17:15:51 +0000, Paul Cercueil wrote:
> Add compatible strings to support the system timer, clocksource, OST,
> watchdog and PWM blocks of the JZ4760 and JZ4760B SoCs.
> 
> Newer SoCs which behave like the JZ4760 or JZ4760B now see their
> compatible string require a fallback compatible string that corresponds
> to one of these two SoCs.
> 
> Signed-off-by: Paul Cercueil <paul@crapouillou.net>
> ---
>  .../bindings/timer/ingenic,tcu.yaml           | 28 ++++++++++++++-----
>  1 file changed, 21 insertions(+), 7 deletions(-)
> 

My bot found errors running 'make dt_binding_check' on your patch:

yamllint warnings/errors:
./Documentation/devicetree/bindings/timer/ingenic,tcu.yaml:62:13: [warning] wrong indentation: expected 14 but found 12 (indentation)
./Documentation/devicetree/bindings/timer/ingenic,tcu.yaml:201:17: [warning] wrong indentation: expected 18 but found 16 (indentation)

dtschema/dtc warnings/errors:
/builds/robherring/linux-dt-review/Documentation/devicetree/bindings/timer/ingenic,tcu.example.dt.yaml: timer@10002000: timer@e0:compatible: 'oneOf' conditional failed, one must be fixed:
	['ingenic,jz4770-ost'] is too short
	'ingenic,jz4770-ost' is not one of ['ingenic,jz4725b-ost', 'ingenic,jz4760b-ost']
	'ingenic,jz4760-ost' was expected
	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/timer/ingenic,tcu.yaml

See https://patchwork.ozlabs.org/patch/1448709

This check can fail if there are any dependencies. The base for a patch
series is generally the most recent rc1.

If you already ran 'make dt_binding_check' and didn't see the above
error(s), then make sure 'yamllint' is installed and dt-schema is up to
date:

pip3 install dtschema --upgrade

Please check and re-submit.

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

* Re: [PATCH 1/3] dt-bindings/timer: ingenic: Add compatible strings for JZ4760(B)
  2021-03-08 17:39 ` [PATCH 1/3] dt-bindings/timer: ingenic: Add compatible strings for JZ4760(B) Rob Herring
@ 2021-03-08 21:20   ` Paul Cercueil
  0 siblings, 0 replies; 5+ messages in thread
From: Paul Cercueil @ 2021-03-08 21:20 UTC (permalink / raw)
  To: Rob Herring
  Cc: od, Daniel Lezcano, Thomas Gleixner, Rob Herring, linux-kernel,
	devicetree



Le lun. 8 mars 2021 à 10:39, Rob Herring <robh@kernel.org> a écrit :
> On Sun, 07 Mar 2021 17:15:51 +0000, Paul Cercueil wrote:
>>  Add compatible strings to support the system timer, clocksource, 
>> OST,
>>  watchdog and PWM blocks of the JZ4760 and JZ4760B SoCs.
>> 
>>  Newer SoCs which behave like the JZ4760 or JZ4760B now see their
>>  compatible string require a fallback compatible string that 
>> corresponds
>>  to one of these two SoCs.
>> 
>>  Signed-off-by: Paul Cercueil <paul@crapouillou.net>
>>  ---
>>   .../bindings/timer/ingenic,tcu.yaml           | 28 
>> ++++++++++++++-----
>>   1 file changed, 21 insertions(+), 7 deletions(-)
>> 
> 
> My bot found errors running 'make dt_binding_check' on your patch:
> 
> yamllint warnings/errors:
> ./Documentation/devicetree/bindings/timer/ingenic,tcu.yaml:62:13: 
> [warning] wrong indentation: expected 14 but found 12 (indentation)
> ./Documentation/devicetree/bindings/timer/ingenic,tcu.yaml:201:17: 
> [warning] wrong indentation: expected 18 but found 16 (indentation)
> 
> dtschema/dtc warnings/errors:
> /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/timer/ingenic,tcu.example.dt.yaml: 
> timer@10002000: timer@e0:compatible: 'oneOf' conditional failed, one 
> must be fixed:
> 	['ingenic,jz4770-ost'] is too short
> 	'ingenic,jz4770-ost' is not one of ['ingenic,jz4725b-ost', 
> 'ingenic,jz4760b-ost']
> 	'ingenic,jz4760-ost' was expected
> 	From schema: 
> /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/timer/ingenic,tcu.yaml

Totally my fault, looks like I didn't check the bindings before sending 
the patchset. I'll V2.

-Paul

> See https://patchwork.ozlabs.org/patch/1448709
> 
> This check can fail if there are any dependencies. The base for a 
> patch
> series is generally the most recent rc1.
> 
> If you already ran 'make dt_binding_check' and didn't see the above
> error(s), then make sure 'yamllint' is installed and dt-schema is up 
> to
> date:
> 
> pip3 install dtschema --upgrade
> 
> Please check and re-submit.



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

end of thread, other threads:[~2021-03-08 21:21 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-03-07 17:15 [PATCH 1/3] dt-bindings/timer: ingenic: Add compatible strings for JZ4760(B) Paul Cercueil
2021-03-07 17:15 ` [PATCH 2/3] clocksource: ingenic: Add support for the JZ4760 Paul Cercueil
2021-03-07 17:15 ` [PATCH 3/3] clocksource: ingenic-ost: Add support for the JZ4760B Paul Cercueil
2021-03-08 17:39 ` [PATCH 1/3] dt-bindings/timer: ingenic: Add compatible strings for JZ4760(B) Rob Herring
2021-03-08 21:20   ` Paul Cercueil

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.