diff mbox series

[8/9] dt-bindings: Add documentation for Photonicat PMU

Message ID 20240906093630.2428329-9-bigfoot@classfun.cn
State New
Headers show
Series Introduce Photonicat power management MCU driver | expand

Commit Message

Junhao Xie Sept. 6, 2024, 9:36 a.m. UTC
Add device tree binding documentation for Photonicat PMU MFD, LEDs,
hardware monitor, power off, power supply, real-time clock watchdog.

Signed-off-by: Junhao Xie <bigfoot@classfun.cn>
---
 .../hwmon/ariaboard,photonicat-pmu-hwmon.yaml |  40 +++++++
 .../leds/ariaboard,photonicat-pmu-leds.yaml   |  41 +++++++
 .../mfd/ariaboard,photonicat-pmu.yaml         | 107 ++++++++++++++++++
 .../ariaboard,photonicat-pmu-poweroff.yaml    |  34 ++++++
 .../ariaboard,photonicat-pmu-supply.yaml      |  55 +++++++++
 .../rtc/ariaboard,photonicat-pmu-rtc.yaml     |  37 ++++++
 .../ariaboard,photonicat-pmu-watchdog.yaml    |  37 ++++++
 7 files changed, 351 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/hwmon/ariaboard,photonicat-pmu-hwmon.yaml
 create mode 100644 Documentation/devicetree/bindings/leds/ariaboard,photonicat-pmu-leds.yaml
 create mode 100644 Documentation/devicetree/bindings/mfd/ariaboard,photonicat-pmu.yaml
 create mode 100644 Documentation/devicetree/bindings/power/reset/ariaboard,photonicat-pmu-poweroff.yaml
 create mode 100644 Documentation/devicetree/bindings/power/supply/ariaboard,photonicat-pmu-supply.yaml
 create mode 100644 Documentation/devicetree/bindings/rtc/ariaboard,photonicat-pmu-rtc.yaml
 create mode 100644 Documentation/devicetree/bindings/watchdog/ariaboard,photonicat-pmu-watchdog.yaml
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/hwmon/ariaboard,photonicat-pmu-hwmon.yaml b/Documentation/devicetree/bindings/hwmon/ariaboard,photonicat-pmu-hwmon.yaml
new file mode 100644
index 000000000000..c9b1bab20c31
--- /dev/null
+++ b/Documentation/devicetree/bindings/hwmon/ariaboard,photonicat-pmu-hwmon.yaml
@@ -0,0 +1,40 @@ 
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/hwmon/ariaboard,photonicat-pmu-hwmon.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Photonicat PMU Hardware Monitor
+
+maintainers:
+  - Junhao Xie <bigfoot@classfun.cn>
+
+description:
+  Board temperature sensor on the Photonicat PMU MCU
+
+properties:
+  compatible:
+    const: ariaboard,photonicat-pmu-hwmon
+
+  label:
+    $ref: /schemas/types.yaml#/definitions/string
+    description: Label for hwmon device
+
+required:
+  - compatible
+  - label
+
+additionalProperties: false
+
+examples:
+  - |
+      serial {
+          mcu {
+              compatible = "ariaboard,photonicat-pmu";
+
+              hwmon {
+                  compatible = "ariaboard,photonicat-pmu-hwmon";
+                  label = "pcat_board";
+              };
+          };
+      };
diff --git a/Documentation/devicetree/bindings/leds/ariaboard,photonicat-pmu-leds.yaml b/Documentation/devicetree/bindings/leds/ariaboard,photonicat-pmu-leds.yaml
new file mode 100644
index 000000000000..6ccb0e691b09
--- /dev/null
+++ b/Documentation/devicetree/bindings/leds/ariaboard,photonicat-pmu-leds.yaml
@@ -0,0 +1,41 @@ 
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/leds/ariaboard,photonicat-pmu-leds.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Photonicat PMU LEDs
+
+maintainers:
+  - Junhao Xie <bigfoot@classfun.cn>
+
+description:
+  LEDs on the Photonicat PMU MCU
+
+allOf:
+  - $ref: common.yaml#
+
+properties:
+  compatible:
+    const: ariaboard,photonicat-pmu-leds
+
+  label: true
+
+required:
+  - compatible
+  - label
+
+additionalProperties: false
+
+examples:
+  - |
+      serial {
+          mcu {
+              compatible = "ariaboard,photonicat-pmu";
+
+              leds-status {
+                  compatible = "ariaboard,photonicat-pmu-leds";
+                  label = "net-status";
+              };
+          };
+      };
diff --git a/Documentation/devicetree/bindings/mfd/ariaboard,photonicat-pmu.yaml b/Documentation/devicetree/bindings/mfd/ariaboard,photonicat-pmu.yaml
new file mode 100644
index 000000000000..df16d9507821
--- /dev/null
+++ b/Documentation/devicetree/bindings/mfd/ariaboard,photonicat-pmu.yaml
@@ -0,0 +1,107 @@ 
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/mfd/ariaboard,photonicat-pmu.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Ariaboard Photonicat PMU
+
+maintainers:
+  - Junhao Xie <bigfoot@classfun.cn>
+
+description:
+  Driver for the Power Management MCU in the Ariaboard Photonicat,
+  which provides battery and charger power supply, real-time clock,
+  watchdog, hardware shutdown.
+
+properties:
+  compatible:
+    const: ariaboard,photonicat-pmu
+
+  current-speed:
+    $ref: /schemas/types.yaml#/definitions/uint32
+    default: 115200
+    description: PMU Serial baudrate
+
+  local-address:
+    $ref: /schemas/types.yaml#/definitions/uint32
+    minimum: 1
+    maximum: 127
+    default: 1
+    description: CPU board address
+
+  remote-address:
+    $ref: /schemas/types.yaml#/definitions/uint32
+    minimum: 1
+    maximum: 127
+    default: 1
+    description: PMU board address
+
+  hwmon:
+    $ref: /schemas/hwmon/ariaboard,photonicat-pmu-hwmon.yaml
+
+  poweroff:
+    $ref: /schemas/power/reset/ariaboard,photonicat-pmu-poweroff.yaml
+
+  rtc:
+    $ref: /schemas/rtc/ariaboard,photonicat-pmu-rtc.yaml
+
+  watchdog:
+    $ref: /schemas/watchdog/ariaboard,photonicat-pmu-watchdog.yaml
+
+patternProperties:
+  '^leds-(status)':
+    $ref: /schemas/leds/ariaboard,photonicat-pmu-leds.yaml
+
+  '^supply-(battery|charger)$':
+    $ref: /schemas/power/supply/ariaboard,photonicat-pmu-supply.yaml
+
+required:
+  - compatible
+
+additionalProperties: false
+
+examples:
+  - |
+      serial {
+          photonicat-pmu {
+              compatible = "ariaboard,photonicat-pmu";
+              current-speed = <115200>;
+              local-address = <1>;
+              remote-address = <1>;
+
+              supply-battery {
+                  compatible = "ariaboard,photonicat-pmu-supply";
+                  label = "battery";
+                  type = "battery";
+              };
+
+              supply-charger {
+                  compatible = "ariaboard,photonicat-pmu-supply";
+                  label = "charger";
+                  type = "charger";
+              };
+
+              hwmon {
+                  compatible = "ariaboard,photonicat-pmu-hwmon";
+                  label = "pcat_board";
+              };
+
+              leds-status {
+                  compatible = "ariaboard,photonicat-pmu-leds";
+                  label = "net-status";
+              };
+
+              poweroff {
+                  compatible = "ariaboard,photonicat-pmu-poweroff";
+              };
+
+              rtc {
+                  compatible = "ariaboard,photonicat-pmu-rtc";
+              };
+
+              watchdog {
+                  compatible = "ariaboard,photonicat-pmu-watchdog";
+              };
+          };
+      };
diff --git a/Documentation/devicetree/bindings/power/reset/ariaboard,photonicat-pmu-poweroff.yaml b/Documentation/devicetree/bindings/power/reset/ariaboard,photonicat-pmu-poweroff.yaml
new file mode 100644
index 000000000000..cfb6c043aa8d
--- /dev/null
+++ b/Documentation/devicetree/bindings/power/reset/ariaboard,photonicat-pmu-poweroff.yaml
@@ -0,0 +1,34 @@ 
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/power/reset/ariaboard,photonicat-pmu-poweroff.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Photonicat PMU Real-time clock
+
+maintainers:
+  - Junhao Xie <bigfoot@classfun.cn>
+
+description:
+  Poweroff on the Photonicat PMU MCU
+
+properties:
+  compatible:
+    const: ariaboard,photonicat-pmu-poweroff
+
+required:
+  - compatible
+
+additionalProperties: false
+
+examples:
+  - |
+      serial {
+          mcu {
+              compatible = "ariaboard,photonicat-pmu";
+
+              poweroff {
+                  compatible = "ariaboard,photonicat-pmu-poweroff";
+              };
+          };
+      };
diff --git a/Documentation/devicetree/bindings/power/supply/ariaboard,photonicat-pmu-supply.yaml b/Documentation/devicetree/bindings/power/supply/ariaboard,photonicat-pmu-supply.yaml
new file mode 100644
index 000000000000..73b1c3564c58
--- /dev/null
+++ b/Documentation/devicetree/bindings/power/supply/ariaboard,photonicat-pmu-supply.yaml
@@ -0,0 +1,55 @@ 
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/power/supply/ariaboard,photonicat-pmu-supply.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Photonicat PMU Power supply
+
+maintainers:
+  - Junhao Xie <bigfoot@classfun.cn>
+
+description:
+  Power supply on the Photonicat PMU MCU
+
+allOf:
+  - $ref: power-supply.yaml#
+
+properties:
+  compatible:
+    const: ariaboard,photonicat-pmu-supply
+
+  label:
+    $ref: /schemas/types.yaml#/definitions/string
+    description: Label for power supply device
+
+  type:
+    $ref: /schemas/types.yaml#/definitions/string
+    enum:
+      - battery
+      - charger
+    description: Photonicat power supply type
+
+  power-supplies: true
+  monitored-battery: true
+
+required:
+  - compatible
+  - label
+  - type
+
+additionalProperties: false
+
+examples:
+  - |
+      serial {
+          mcu {
+              compatible = "ariaboard,photonicat-pmu";
+
+              supply-charger {
+                  compatible = "ariaboard,photonicat-pmu-supply";
+                  label = "charger";
+                  type = "charger";
+              };
+          };
+      };
diff --git a/Documentation/devicetree/bindings/rtc/ariaboard,photonicat-pmu-rtc.yaml b/Documentation/devicetree/bindings/rtc/ariaboard,photonicat-pmu-rtc.yaml
new file mode 100644
index 000000000000..05f3c3768dbf
--- /dev/null
+++ b/Documentation/devicetree/bindings/rtc/ariaboard,photonicat-pmu-rtc.yaml
@@ -0,0 +1,37 @@ 
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/rtc/ariaboard,photonicat-pmu-rtc.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Photonicat PMU Real-time clock
+
+maintainers:
+  - Junhao Xie <bigfoot@classfun.cn>
+
+description:
+  Real-time clock on the Photonicat PMU MCU
+
+allOf:
+  - $ref: rtc.yaml#
+
+properties:
+  compatible:
+    const: ariaboard,photonicat-pmu-rtc
+
+required:
+  - compatible
+
+additionalProperties: false
+
+examples:
+  - |
+      serial {
+          mcu {
+              compatible = "ariaboard,photonicat-pmu";
+
+              rtc {
+                  compatible = "ariaboard,photonicat-pmu-rtc";
+              };
+          };
+      };
diff --git a/Documentation/devicetree/bindings/watchdog/ariaboard,photonicat-pmu-watchdog.yaml b/Documentation/devicetree/bindings/watchdog/ariaboard,photonicat-pmu-watchdog.yaml
new file mode 100644
index 000000000000..91bc6adea9a7
--- /dev/null
+++ b/Documentation/devicetree/bindings/watchdog/ariaboard,photonicat-pmu-watchdog.yaml
@@ -0,0 +1,37 @@ 
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/watchdog/ariaboard,photonicat-pmu-watchdog.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Photonicat PMU Watchdog
+
+maintainers:
+  - Junhao Xie <bigfoot@classfun.cn>
+
+description:
+  Watchdog on the Photonicat PMU MCU
+
+allOf:
+  - $ref: watchdog.yaml#
+
+properties:
+  compatible:
+    const: ariaboard,photonicat-pmu-watchdog
+
+required:
+  - compatible
+
+additionalProperties: false
+
+examples:
+  - |
+      serial {
+          mcu {
+              compatible = "ariaboard,photonicat-pmu";
+
+              watchdog {
+                  compatible = "ariaboard,photonicat-pmu-watchdog";
+              };
+          };
+      };