Files
linux/Documentation/devicetree/bindings/regulator/google,cros-ec-regulator.yaml
Stephen Boyd 7a2f36828c dt-bindings: cros-ec: Reorganize and enforce property availability
Various properties in the cros-ec binding only apply to different
compatible strings. For example, the interrupts and reg property are
required for all cros-ec devices except for the rpmsg version. Add some
conditions to update the availability of properties so that they can't
be used with compatibles that don't support them.

This reveals that many of the examples in bindings that use cros-ec were
missing the interrupts property. Add the property to make those bindings
whole again.

Reviewed-by: Rob Herring <robh@kernel.org>
Cc: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>
Cc: <devicetree@vger.kernel.org>
Cc: <chrome-platform@lists.linux.dev>
Cc: Guenter Roeck <groeck@chromium.org>
Reviewed-by: Douglas Anderson <dianders@chromium.org>
Cc: Craig Hesling <hesling@chromium.org>
Cc: Tom Hughes <tomhughes@chromium.org>
Cc: Alexandru M Stan <amstan@chromium.org>
Cc: Tzung-Bi Shih <tzungbi@kernel.org>
Cc: Matthias Kaehlcke <mka@chromium.org>
Cc: Benson Leung <bleung@chromium.org>
Cc: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Stephen Boyd <swboyd@chromium.org>
Signed-off-by: Tzung-Bi Shih <tzungbi@kernel.org>
Link: https://lore.kernel.org/r/20221026003641.2688765-2-swboyd@chromium.org
2022-10-31 12:02:56 +08:00

55 lines
1.2 KiB
YAML

# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/regulator/google,cros-ec-regulator.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: ChromeOS EC controlled voltage regulators
maintainers:
- Pi-Hsun Shih <pihsun@chromium.org>
description:
Any property defined as part of the core regulator binding, defined in
regulator.yaml, can also be used.
allOf:
- $ref: "regulator.yaml#"
properties:
compatible:
const: google,cros-ec-regulator
reg:
maxItems: 1
description: Identifier for the voltage regulator to ChromeOS EC.
required:
- compatible
- reg
unevaluatedProperties: false
examples:
- |
spi0 {
#address-cells = <1>;
#size-cells = <0>;
cros_ec: ec@0 {
compatible = "google,cros-ec-spi";
reg = <0>;
#address-cells = <1>;
#size-cells = <0>;
interrupts = <99 0>;
regulator@0 {
compatible = "google,cros-ec-regulator";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <3300000>;
reg = <0>;
};
};
};
...