mirror of
https://github.com/torvalds/linux.git
synced 2026-04-18 06:44:00 -04:00
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>
125 lines
3.0 KiB
YAML
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>;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|