dt-bindings: mfd: brcm,bcm59056: Convert to YAML

Convert devicetree bindings for the Broadcom BCM59056 PMU MFD from
TXT to YAML format. This patch does not change any functionality;
the bindings remain the same.

The bindings have been split into two parts: the MFD binding and
a separate binding for the regulator node, to simplify the addition
of other models later (which have different regulators).

Signed-off-by: Artur Weber <aweber.kernel@gmail.com>
Reviewed-by: "Rob Herring (Arm)" <robh@kernel.org>
Reviewed-by: Stanislav Jakubek <stano.jakubek@gmail.com>
Link: https://lore.kernel.org/r/20250515-bcm59054-v9-1-14ba0ea2ea5b@gmail.com
Signed-off-by: Lee Jones <lee@kernel.org>
This commit is contained in:
Artur Weber 2025-05-15 16:16:28 +02:00 committed by Lee Jones
parent 0af2f6be1b
commit 9d56594f3e
3 changed files with 105 additions and 39 deletions

View File

@ -1,39 +0,0 @@
-------------------------------
BCM590xx Power Management Units
-------------------------------
Required properties:
- compatible: "brcm,bcm59056"
- reg: I2C slave address
- interrupts: interrupt for the PMU. Generic interrupt client node bindings
are described in interrupt-controller/interrupts.txt
------------------
Voltage Regulators
------------------
Optional child nodes:
- regulators: container node for regulators following the generic
regulator binding in regulator/regulator.txt
The valid regulator node names for BCM59056 are:
rfldo, camldo1, camldo2, simldo1, simldo2, sdldo, sdxldo,
mmcldo1, mmcldo2, audldo, micldo, usbldo, vibldo,
csr, iosr1, iosr2, msr, sdsr1, sdsr2, vsr,
gpldo1, gpldo2, gpldo3, gpldo4, gpldo5, gpldo6,
vbus
Example:
pmu: bcm59056@8 {
compatible = "brcm,bcm59056";
reg = <0x08>;
interrupts = <GIC_SPI 215 IRQ_TYPE_LEVEL_HIGH>;
regulators {
rfldo_reg: rfldo {
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <3300000>;
};
...
};
};

View File

@ -0,0 +1,54 @@
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/mfd/brcm,bcm59056.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Broadcom BCM590xx Power Management Units
maintainers:
- Artur Weber <aweber.kernel@gmail.com>
properties:
compatible:
const: brcm,bcm59056
reg:
maxItems: 1
interrupts:
maxItems: 1
regulators:
type: object
$ref: /schemas/regulator/brcm,bcm59056.yaml#
required:
- compatible
- reg
- interrupts
additionalProperties: false
examples:
- |
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/interrupt-controller/irq.h>
i2c {
#address-cells = <1>;
#size-cells = <0>;
pmic@8 {
compatible = "brcm,bcm59056";
reg = <0x08>;
interrupts = <GIC_SPI 215 IRQ_TYPE_LEVEL_HIGH>;
regulators {
rfldo {
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <3300000>;
};
};
};
};

View File

@ -0,0 +1,51 @@
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/regulator/brcm,bcm59056.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Broadcom BCM59056 Power Management Unit regulators
description: |
This is a part of device tree bindings for the BCM59056 power
management unit.
See Documentation/devicetree/bindings/mfd/brcm,bcm59056.yaml for
additional information and example.
maintainers:
- Artur Weber <aweber.kernel@gmail.com>
patternProperties:
"^(cam|sim|mmc)ldo[1-2]$":
type: object
$ref: /schemas/regulator/regulator.yaml#
unevaluatedProperties: false
"^(rf|sd|sdx|aud|mic|usb|vib)ldo$":
type: object
$ref: /schemas/regulator/regulator.yaml#
unevaluatedProperties: false
"^(c|m|v)sr$":
type: object
$ref: /schemas/regulator/regulator.yaml#
unevaluatedProperties: false
"^(io|sd)sr[1-2]$":
type: object
$ref: /schemas/regulator/regulator.yaml#
unevaluatedProperties: false
"^gpldo[1-6]$":
type: object
$ref: /schemas/regulator/regulator.yaml#
unevaluatedProperties: false
properties:
vbus:
type: object
$ref: /schemas/regulator/regulator.yaml#
unevaluatedProperties: false
additionalProperties: false