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>
This commit is contained in:
Krzysztof Kozlowski
2025-08-25 10:12:02 +02:00
committed by Lee Jones
parent fcbe47a83a
commit 3d6a17fccc
16 changed files with 19 additions and 19 deletions

View File

@@ -0,0 +1,83 @@
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/embedded-controller/lenovo,yoga-c630-ec.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Lenovo Yoga C630 Embedded Controller.
maintainers:
- Bjorn Andersson <andersson@kernel.org>
description:
The Qualcomm Snapdragon-based Lenovo Yoga C630 has an Embedded Controller
(EC) which handles things such as battery and USB Type-C. This binding
describes the interface, on an I2C bus, to this EC.
properties:
compatible:
const: lenovo,yoga-c630-ec
reg:
const: 0x70
'#address-cells':
const: 1
'#size-cells':
const: 0
interrupts:
maxItems: 1
patternProperties:
'^connector@[01]$':
$ref: /schemas/connector/usb-connector.yaml#
properties:
reg:
maxItems: 1
unevaluatedProperties: false
required:
- compatible
- reg
- interrupts
additionalProperties: false
examples:
- |+
#include <dt-bindings/interrupt-controller/irq.h>
i2c1 {
clock-frequency = <400000>;
#address-cells = <1>;
#size-cells = <0>;
embedded-controller@70 {
compatible = "lenovo,yoga-c630-ec";
reg = <0x70>;
interrupts-extended = <&tlmm 20 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
#size-cells = <0>;
connector@0 {
compatible = "usb-c-connector";
reg = <0>;
power-role = "source";
data-role = "host";
};
connector@1 {
compatible = "usb-c-connector";
reg = <1>;
power-role = "source";
data-role = "host";
};
};
};
...