Files
linux/Documentation/devicetree/bindings/embedded-controller/huawei,gaokun3-ec.yaml
Krzysztof Kozlowski 3d6a17fccc dt-bindings: mfd: Move embedded controllers to own directory
Move several embedded controller bindings (like ChromeOS EC, Gateworks
System Controller and Kontron sl28cpld Board Management) to new
subdirectory "embedded-controller" matching their purpose.

An embedded controller (EC) is a discrete component that contains a
microcontroller (i.e. a small CPU running a small firmware without
operating system) mounted into a larger computer system running
a fully fledged operating system that needs to utilize the embedded
controller as part of its operation.

So far the EC bindings were split between "mfd" and "platform"
directory.  MFD name comes from Linux, not hardware, and "platform" is a
bit too generic.

Rename Gateworks GSC and Huawei Gaokun filenames to match compatible, as
preferred for bindings.

Acked-by: Michael Walle <mwalle@kernel.org> # for sl28cpld
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Acked-by: Mark Brown <broonie@kernel.org>
Reviewed-by: "Rob Herring (Arm)" <robh@kernel.org>
Link: https://lore.kernel.org/r/20250825081201.9775-2-krzysztof.kozlowski@linaro.org
Signed-off-by: Lee Jones <lee@kernel.org>
2025-10-01 10:28:27 +01:00

125 lines
3.0 KiB
YAML

# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/embedded-controller/huawei,gaokun3-ec.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Huawei Matebook E Go Embedded Controller
maintainers:
- Pengyu Luo <mitltlatltl@gmail.com>
description:
Different from other Qualcomm Snapdragon sc8180x and sc8280xp-based
machines, the Huawei Matebook E Go tablets use embedded controllers
while others use a system called PMIC GLink which handles battery,
UCSI, USB Type-C DP Alt Mode. In addition, Huawei's implementation
also handles additional features, such as charging thresholds, FN
lock, smart charging, tablet lid status, thermal sensors, and more.
properties:
compatible:
enum:
- huawei,gaokun3-ec
reg:
const: 0x38
'#address-cells':
const: 1
'#size-cells':
const: 0
interrupts:
maxItems: 1
patternProperties:
'^connector@[01]$':
$ref: /schemas/connector/usb-connector.yaml#
properties:
reg:
maxItems: 1
required:
- compatible
- reg
- interrupts
additionalProperties: false
examples:
- |
#include <dt-bindings/interrupt-controller/irq.h>
i2c {
#address-cells = <1>;
#size-cells = <0>;
embedded-controller@38 {
compatible = "huawei,gaokun3-ec";
reg = <0x38>;
interrupts-extended = <&tlmm 107 IRQ_TYPE_LEVEL_LOW>;
#address-cells = <1>;
#size-cells = <0>;
connector@0 {
compatible = "usb-c-connector";
reg = <0>;
power-role = "dual";
data-role = "dual";
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
ucsi0_ss_in: endpoint {
remote-endpoint = <&usb_0_qmpphy_out>;
};
};
port@1 {
reg = <1>;
ucsi0_sbu: endpoint {
remote-endpoint = <&usb0_sbu_mux>;
};
};
};
};
connector@1 {
compatible = "usb-c-connector";
reg = <1>;
power-role = "dual";
data-role = "dual";
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
ucsi1_ss_in: endpoint {
remote-endpoint = <&usb_1_qmpphy_out>;
};
};
port@1 {
reg = <1>;
ucsi1_sbu: endpoint {
remote-endpoint = <&usb1_sbu_mux>;
};
};
};
};
};
};