[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20251216021851.654957-1-tian.ge@silergymicro.com>
Date: Tue, 16 Dec 2025 10:18:51 +0800
From: "tian.ge" <tian.ge@...ergymicro.com>
To: sre@...nel.org, robh@...nel.org, krzk+dt@...nel.org, conor+dt@...nel.org
Cc: linux-pm@...r.kernel.org, devicetree@...r.kernel.org,
linux-kernel@...r.kernel.org, lei.zhang@...ergycorp.com,
frank.fan@...ergymicro.com, "tian.ge" <tian.ge@...ergymicro.com>
Subject: [PATCH] dt-bindings: power: supply: Add Silergy SY6974B charger
Add bindings for the Silergy SY6974B I2C controlled charger.
Signed-off-by: tian.ge <tian.ge@...ergymicro.com>
---
.../power/supply/silergy,sy6974b.yaml | 90 +++++++++++++++++++
1 file changed, 90 insertions(+)
create mode 100644 Documentation/devicetree/bindings/power/supply/silergy,sy6974b.yaml
diff --git a/Documentation/devicetree/bindings/power/supply/silergy,sy6974b.yaml b/Documentation/devicetree/bindings/power/supply/silergy,sy6974b.yaml
new file mode 100644
index 000000000000..91ad05939c58
--- /dev/null
+++ b/Documentation/devicetree/bindings/power/supply/silergy,sy6974b.yaml
@@ -0,0 +1,90 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+# Copyright (C) 2025 Silergy Semiconductor Technology Co., Ltd.
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/power/supply/silergy,sy6974b.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Silergy SY6974B 3A Single Cell Switching Battery charger
+
+maintainers:
+ - Tian Ge <tian.ge@...ergymicro.com>
+
+allOf:
+ - $ref: power-supply.yaml#
+
+properties:
+ compatible:
+ const: silergy,sy6974b
+
+ reg:
+ maxItems: 1
+
+ interrupts:
+ maxItems: 1
+
+ sy,charge-current:
+ $ref: /schemas/types.yaml#/definitions/uint32
+ description: |
+ maximum charging current (in mA).
+ Range: 0 ~ 3000 mA, step: 60 mA
+
+ sy,precharge-current:
+ $ref: /schemas/types.yaml#/definitions/uint32
+ description: |
+ maximum charge current during precharge phase (in mA).
+ Range: 60 ~ 780 mA, step: 60 mA
+
+ sy,termination-current:
+ $ref: /schemas/types.yaml#/definitions/uint32
+ description: |
+ charge will be terminated when current in constant-voltage phase
+ drops below this value (in mA).
+ Range: 60 ~ 960 mA, step: 60 mA
+
+ sy,regulation-voltage:
+ $ref: /schemas/types.yaml#/definitions/uint32
+ description: |
+ maximum charging voltage (in mV).
+ Range: 3856 ~ 4624 mV, step: 32 mV
+
+ sy,minimum-sys-voltage:
+ $ref: /schemas/types.yaml#/definitions/uint32
+ description: |
+ when battery is charging and it is below minimum system voltage,
+ the system will be regulated above minimum-sys-voltage setting (in mV).
+ Allowed values: 2600, 2800, 3000, 3200, 3400, 3500, 3600, 3700 mV
+
+required:
+ - compatible
+ - reg
+ - interrupts
+ - sy,charge-current
+ - sy,precharge-current
+ - sy,termination-current
+ - sy,regulation-voltage
+ - sy,minimum-sys-voltage
+
+unevaluatedProperties: false
+
+examples:
+ - |
+ #include <dt-bindings/interrupt-controller/irq.h>
+ i2c {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ charger@6b {
+ compatible = "silergy,sy6974b";
+ reg = <0x6b>;
+
+ interrupt-parent = <&tlmm>;
+ interrupts = <64 IRQ_TYPE_EDGE_FALLING>;
+
+ sy,charge-current = <3000>; /* 3000 mA */
+ sy,precharge-current = <500>; /* 500 mA */
+ sy,termination-current = <300>; /* 300 mA */
+ sy,regulation-voltage = <4480>; /* 4480 mV */
+ sy,minimum-sys-voltage = <3500>; /* 3500 mV */
+ };
+ };
--
2.34.1
Powered by blists - more mailing lists