Hi Paul,
在 2020/7/1 上午3:15, Paul Cercueil 写道:
Hi Zhou,
Le mer. 1 juil. 2020 à 1:15, 周琰杰 (Zhou Yanjie)
<zhouyanjie@xxxxxxxxxxxxxx> a écrit :
Add the OST bindings for the X10000 SoC from Ingenic.
Tested-by: 周正 (Zhou Zheng) <sernia.zhou@xxxxxxxxxxx>
Signed-off-by: 周琰杰 (Zhou Yanjie) <zhouyanjie@xxxxxxxxxxxxxx>
---
Notes:
v1->v2:
No change.
v2->v3:
Fix wrong parameters in "clocks".
.../devicetree/bindings/timer/ingenic,ost.yaml | 61
++++++++++++++++++++++
include/dt-bindings/clock/ingenic,ost.h | 12 +++++
Please name them ingenic,sysost.yaml and ingenic,sysost.h, to
differenciate with the OST that is in the JZ SoCs.
Sure.
2 files changed, 73 insertions(+)
create mode 100644
Documentation/devicetree/bindings/timer/ingenic,ost.yaml
create mode 100644 include/dt-bindings/clock/ingenic,ost.h
diff --git a/Documentation/devicetree/bindings/timer/ingenic,ost.yaml
b/Documentation/devicetree/bindings/timer/ingenic,ost.yaml
new file mode 100644
index 000000000000..459dd3d161c2
--- /dev/null
+++ b/Documentation/devicetree/bindings/timer/ingenic,ost.yaml
@@ -0,0 +1,61 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/timer/ingenic,ost.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Bindings for SYSOST in Ingenic XBurst family SoCs
+
+maintainers:
+ - 周琰杰 (Zhou Yanjie) <zhouyanjie@xxxxxxxxxxxxxx>
+
+description:
+ The SYSOST in an Ingenic SoC provides one 64bit timer for clocksource
+ and one or more than one 32bit timers for clockevent.
"and one or more than one" -> "and one or more"
OK, I'll change it in the next version.
+
+properties:
+ compatible:
+ oneOf:
+
+ - description: SYSOST in Ingenic XBurst family SoCs
XBurst is the name of the CPU, not a SoC family, so you would just
write 'Ingenic SoCs'. But just drop the description alltogether, it
does not add anything valuable.
Sure.
+ enum:
+ - ingenic,x1000-ost
+ - ingenic,x2000-ost
You have "ingenic,x2000-ost" as a compatible string, but your driver
(in patch [2/2]) only handles the first compatible string. Either they
are different, in this case the driver should handle both, or they
work the same, and in the case the "ingenic,x2000-ost" string should
use "ingenic,x1000-ost" as a fallback string.
If SMT is not turned on, X2000 can be compatible with X1000, but if SMT
is turned on, some additional processing is required, and now this
compatible string is reserved for this.
Thanks and best regards!
Cheers,
-Paul
+
+ reg:
+ maxItems: 1
+
+ clocks:
+ maxItems: 1
+
+ clock-names:
+ const: ost
+
+ interrupts:
+ maxItems: 1
+
+required:
+ - "#clock-cells"
+ - compatible
+ - reg
+ - clocks
+ - clock-names
+ - interrupts
+
+examples:
+ - |
+ #include <dt-bindings/clock/x1000-cgu.h>
+
+ ost: timer@12000000 {
+ compatible = "ingenic,x1000-ost";
+ reg = <0x12000000 0x3c>;
+
+ #clock-cells = <1>;
+
+ clocks = <&cgu X1000_CLK_OST>;
+ clock-names = "ost";
+
+ interrupt-parent = <&cpuintc>;
+ interrupts = <3>;
+ };
+...
diff --git a/include/dt-bindings/clock/ingenic,ost.h
b/include/dt-bindings/clock/ingenic,ost.h
new file mode 100644
index 000000000000..9ac88e90babf
--- /dev/null
+++ b/include/dt-bindings/clock/ingenic,ost.h
@@ -0,0 +1,12 @@
+/* SPDX-License-Identifier: GPL-2.0 */
+/*
+ * This header provides clock numbers for the ingenic,tcu DT binding.
+ */
+
+#ifndef __DT_BINDINGS_CLOCK_INGENIC_OST_H__
+#define __DT_BINDINGS_CLOCK_INGENIC_OST_H__
+
+#define OST_CLK_PERCPU_TIMER 0
+#define OST_CLK_GLOBAL_TIMER 1
+
+#endif /* __DT_BINDINGS_CLOCK_INGENIC_OST_H__ */
--
2.11.0