dt-bindings: mfd: samsung,s2mps11: Split s2mpg10-pmic into separate file
The samsung,s2mpg10-pmic binding is going to acquire various additional properties. To avoid making the common samsung,s2mps11 binding file too complicated due to additional nesting, split s2mpg10 out into its own file. As a side-effect, the oneOf for the interrupts is not required anymore, as the required: node is at the top-level now. Signed-off-by: André Draszik <andre.draszik@linaro.org> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Link: https://patch.msgid.link/20260122-s2mpg1x-regulators-v7-4-3b1f9831fffd@linaro.org Signed-off-by: Lee Jones <lee@kernel.org>master
parent
b31583a1a9
commit
189ccdc7e8
|
|
@ -0,0 +1,69 @@
|
|||
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/mfd/samsung,s2mpg10-pmic.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Samsung S2MPG10 Power Management IC
|
||||
|
||||
maintainers:
|
||||
- André Draszik <andre.draszik@linaro.org>
|
||||
|
||||
description: |
|
||||
This is part of the device tree bindings for the S2MPG family of Power
|
||||
Management IC (PMIC).
|
||||
|
||||
The Samsung S2MPG10 is a Power Management IC for mobile applications with buck
|
||||
converters, various LDOs, power meters, RTC, clock outputs, and additional
|
||||
GPIO interfaces.
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
const: samsung,s2mpg10-pmic
|
||||
|
||||
clocks:
|
||||
$ref: /schemas/clock/samsung,s2mps11.yaml
|
||||
description:
|
||||
Child node describing clock provider.
|
||||
|
||||
interrupts:
|
||||
maxItems: 1
|
||||
|
||||
regulators:
|
||||
type: object
|
||||
description:
|
||||
List of child nodes that specify the regulators.
|
||||
|
||||
system-power-controller: true
|
||||
|
||||
wakeup-source: true
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- interrupts
|
||||
- regulators
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/interrupt-controller/irq.h>
|
||||
|
||||
pmic {
|
||||
compatible = "samsung,s2mpg10-pmic";
|
||||
interrupts-extended = <&gpa0 6 IRQ_TYPE_LEVEL_LOW>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pmic_int>;
|
||||
system-power-controller;
|
||||
wakeup-source;
|
||||
|
||||
clocks {
|
||||
compatible = "samsung,s2mpg10-clk";
|
||||
#clock-cells = <1>;
|
||||
clock-output-names = "rtc32k_ap", "peri32k1", "peri32k2";
|
||||
};
|
||||
|
||||
regulators {
|
||||
};
|
||||
};
|
||||
|
|
@ -20,7 +20,6 @@ description: |
|
|||
properties:
|
||||
compatible:
|
||||
enum:
|
||||
- samsung,s2mpg10-pmic
|
||||
- samsung,s2mps11-pmic
|
||||
- samsung,s2mps13-pmic
|
||||
- samsung,s2mps14-pmic
|
||||
|
|
@ -59,42 +58,16 @@ properties:
|
|||
reset (setting buck voltages to default values).
|
||||
type: boolean
|
||||
|
||||
system-power-controller: true
|
||||
|
||||
wakeup-source: true
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- regulators
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
allOf:
|
||||
- if:
|
||||
properties:
|
||||
compatible:
|
||||
contains:
|
||||
const: samsung,s2mpg10-pmic
|
||||
then:
|
||||
properties:
|
||||
reg: false
|
||||
samsung,s2mps11-acokb-ground: false
|
||||
samsung,s2mps11-wrstbi-ground: false
|
||||
|
||||
# oneOf is required, because dtschema's fixups.py doesn't handle this
|
||||
# nesting here. Its special treatment to allow either interrupt property
|
||||
# when only one is specified in the binding works at the top level only.
|
||||
oneOf:
|
||||
- required: [interrupts]
|
||||
- required: [interrupts-extended]
|
||||
|
||||
else:
|
||||
properties:
|
||||
system-power-controller: false
|
||||
|
||||
required:
|
||||
- reg
|
||||
|
||||
- if:
|
||||
properties:
|
||||
compatible:
|
||||
|
|
|
|||
Loading…
Reference in New Issue