Hey,
Rob, could you take a look at this please? On v2 while you were away I
was kinda struggling w/ suspend-address & whether it made sense.
The v2 & v1 are here:
https://lore.kernel.org/all/20230522093156.7108-3-zhuyinbo@xxxxxxxxxxx/
https://lore.kernel.org/all/20230517073149.31980-3-zhuyinbo@xxxxxxxxxxx/
On Thu, Jun 15, 2023 at 05:17:56PM +0800, Yinbo Zhu wrote:
Add the Loongson-2 SoC Power Management Controller binding with DT
schema format using json-schema.
Signed-off-by: Yinbo Zhu <zhuyinbo@xxxxxxxxxxx>
---
.../soc/loongson/loongson,ls2k-pmc.yaml | 53 +++++++++++++++++++
MAINTAINERS | 6 +++
2 files changed, 59 insertions(+)
create mode 100644 Documentation/devicetree/bindings/soc/loongson/loongson,ls2k-pmc.yaml
diff --git a/Documentation/devicetree/bindings/soc/loongson/loongson,ls2k-pmc.yaml b/Documentation/devicetree/bindings/soc/loongson/loongson,ls2k-pmc.yaml
new file mode 100644
index 000000000000..32499bd10f8c
--- /dev/null
+++ b/Documentation/devicetree/bindings/soc/loongson/loongson,ls2k-pmc.yaml
The filename should ideally match one of the compatibles.
@@ -0,0 +1,53 @@
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/soc/loongson/loongson,ls2k-pmc.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Loongson-2 Power Manager controller
+
+maintainers:
+ - Yinbo Zhu <zhuyinbo@xxxxxxxxxxx>
+
+properties:
+ compatible:
+ oneOf:
+ - items:
+ - enum:
+ - loongson,ls2k1000-pmc
+ - loongson,ls2k0500-pmc
I notice the driver only supports one of these two. Is there a reason
for that?
+ - const: syscon^^^
+
+ reg:
+ maxItems: 1
+
+ interrupts:
+ maxItems: 1
+
+ suspend-address:
+ $ref: /schemas/types.yaml#/definitions/uint32
+ description:
+ The "suspend-address" is a deep sleep state (Suspend To RAM)
+ firmware entry address which was jumped from kernel and it's
+ value was dependent on specific platform firmware code. In
+ addition, the PM need according to it to indicate that current
+ SoC whether support Suspend To RAM.
+
+required:
+ - compatible
+ - reg
+ - interrupts
+
+additionalProperties: false
+
+examples:
+ - |
+ #include <dt-bindings/interrupt-controller/irq.h>
+
+ pmc: pm@1fe27000 {
nit: this label isn't used, so you can drop it.