[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20241118-add_charger_state-v1-2-94997079f35a@chromium.org>
Date: Mon, 18 Nov 2024 17:33:47 +0800
From: "Sung-Chi, Li" <lschyi@...omium.org>
To: Benson Leung <bleung@...omium.org>, Tzung-Bi Shih <tzungbi@...nel.org>,
Guenter Roeck <groeck@...omium.org>, Rob Herring <robh@...nel.org>,
Krzysztof Kozlowski <krzk+dt@...nel.org>,
Conor Dooley <conor+dt@...nel.org>, Lee Jones <lee@...nel.org>
Cc: linux-kernel@...r.kernel.org, chrome-platform@...ts.linux.dev,
devicetree@...r.kernel.org
Subject: [PATCH 2/3] dt-bindings: chrome: add new binding
google,cros-ec-chrage-state
Add new dt bindings for charge chip control. The charge chip control
dt configuration is used by the driver 'cros-ec-charge-state', which is
added in the commit "platform/chrome: cros_ec_charge_state: add new
driver to control charge".
As these charge chip controls are connected under the ChromeOS Embedded
Controller (EC), also add the patternProperties to the
mfd/google,cros-ec bindings.
Signed-off-by: Sung-Chi, Li <lschyi@...omium.org>
---
.../bindings/chrome/google,cros-charge-state.yaml | 62 ++++++++++++++++++++++
.../devicetree/bindings/mfd/google,cros-ec.yaml | 4 ++
2 files changed, 66 insertions(+)
diff --git a/Documentation/devicetree/bindings/chrome/google,cros-charge-state.yaml b/Documentation/devicetree/bindings/chrome/google,cros-charge-state.yaml
new file mode 100644
index 000000000000..40e8f6988769
--- /dev/null
+++ b/Documentation/devicetree/bindings/chrome/google,cros-charge-state.yaml
@@ -0,0 +1,62 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/chrome/google,cros-charge-state.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Google Chrome OS EC(Embedded Controller) charge state driver.
+
+maintainers:
+ - Sung-Chi, Li <lschyi@...omium.org>
+
+description:
+ Chrome OS devices have an Embedded Controller(EC) which has access to
+ battery charger IC. This node is intended to allow the host to read and
+ control the charger current. The node for this device should be under a
+ cros-ec node like google,cros-ec-spi.
+
+properties:
+ compatible:
+ const: google,cros-ec-charge-state
+
+ min-milliamp:
+ description: min current in milliamp.
+ $ref: /schemas/types.yaml#/definitions/uint32
+
+ max-milliamp:
+ description: max current in milliamp.
+ $ref: /schemas/types.yaml#/definitions/uint32
+
+ type:
+ description: current limit type.
+ enum:
+ - charge
+ - input
+
+required:
+ - compatible
+ - min-milliamp
+ - man-milliamp
+ - type
+
+additionalProperties: false
+
+examples:
+ - |+
+ spi {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ cros_ec: ec@0 {
+ compatible = "google,cros-ec-spi";
+ reg = <0>;
+ interrupts = <35 0>;
+
+ charge_chip_battery_current: charge-chip-battery {
+ compatible = "google,cros-ec-charge";
+ type = "charge";
+ min-milliamp = <150>;
+ max-milliamp = <5000>;
+ };
+ };
+ };
diff --git a/Documentation/devicetree/bindings/mfd/google,cros-ec.yaml b/Documentation/devicetree/bindings/mfd/google,cros-ec.yaml
index aac8819bd00b..3db4a48d5176 100644
--- a/Documentation/devicetree/bindings/mfd/google,cros-ec.yaml
+++ b/Documentation/devicetree/bindings/mfd/google,cros-ec.yaml
@@ -166,6 +166,10 @@ patternProperties:
type: object
$ref: /schemas/extcon/extcon-usbc-cros-ec.yaml#
+ "^charge-chip-*":
+ type: object
+ $ref: /schemas/chrome/google,cros-charge-state.yaml#
+
required:
- compatible
--
2.47.0.338.g60cca15819-goog
Powered by blists - more mailing lists