Message ID | 20210625224744.1020108-2-kernel@esmil.dk |
---|---|
State | Superseded |
Headers | show |
Series | BeagleV Starlight reset support | expand |
On Sat, Jun 26, 2021 at 12:47:42AM +0200, Emil Renner Berthing wrote: > This converts the tps65086.txt binding description to YAML schema so > dts files can be verified automatically. > > Signed-off-by: Emil Renner Berthing <kernel@esmil.dk> > --- > @Andrew: The dt-bindings meta schema requires a maintainer entry. I hope > it's ok that I've added you, otherwise I don't know who should be > listed. Anyone that knows the h/w and/or cares if the binding is changed or deleted. If you can't find anyone, then good, one less binding. :) > > .../devicetree/bindings/mfd/ti,tps65086.yaml | 127 ++++++++++++++++++ > .../devicetree/bindings/mfd/tps65086.txt | 54 -------- > 2 files changed, 127 insertions(+), 54 deletions(-) > create mode 100644 Documentation/devicetree/bindings/mfd/ti,tps65086.yaml > delete mode 100644 Documentation/devicetree/bindings/mfd/tps65086.txt > > diff --git a/Documentation/devicetree/bindings/mfd/ti,tps65086.yaml b/Documentation/devicetree/bindings/mfd/ti,tps65086.yaml > new file mode 100644 > index 000000000000..ba638bd10a58 > --- /dev/null > +++ b/Documentation/devicetree/bindings/mfd/ti,tps65086.yaml > @@ -0,0 +1,127 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/mfd/ti,tps65086.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: TPS65086 Power Management Integrated Circuit (PMIC) > + > +maintainers: > + - Andrew F. Davis <afd@ti.com> Not a valid email any more. > + > +properties: > + compatible: > + const: ti,tps65086 > + > + reg: > + const: 0x5e > + description: I2C slave address > + > + interrupts: > + maxItems: 1 > + > + interrupt-controller: true > + > + '#interrupt-cells': > + const: 2 > + description: | > + The first cell is the IRQ number. The second cell is the flags, > + encoded as trigger masks from ../interrupt-controller/interrupts.txt. > + > + gpio-controller: true > + > + '#gpio-cells': > + const: 2 > + description: | > + The first cell is the pin number and the second cell is used to specify > + flags. See ../gpio/gpio.txt for more information. > + > + regulators: > + type: object > + description: | > + List of child nodes that specify the regulator initialization data. > + Child nodes must be named after their hardware counterparts: > + buck[1-6], ldoa[1-3], swa1, swb[1-2], and vtt. > + Each child node is defined using the standard binding for regulators and > + the optional regulator properties defined below. > + > + patternProperties: > + "^buck[1-6]$": > + type: object > + $ref: ../regulator/regulator.yaml > + > + properties: > + regulator-name: true > + regulator-boot-on: true > + regulator-always-on: true > + regulator-min-microvolt: true > + regulator-max-microvolt: true > + ti,regulator-step-size-25mv: > + type: boolean > + description: | > + Set this if the regulator is factory set with a 25mv step voltage > + mapping. > + ti,regulator-decay: > + type: boolean > + description: | > + Set this if the output needs to decay, default is for the output > + to slew down. > + > + additionalProperties: false > + > + "^(ldoa[1-3]|swa1|swb[1-2]|vtt)$": > + type: object > + $ref: ../regulator/regulator.yaml > + > + properties: > + regulator-name: true > + regulator-boot-on: true > + regulator-always-on: true > + regulator-min-microvolt: true > + regulator-max-microvolt: true > + > + additionalProperties: false > + > +additionalProperties: false > + > +required: > + - compatible > + - reg > + - interrupts > + - interrupt-controller > + - '#interrupt-cells' > + - gpio-controller > + - '#gpio-cells' > + - regulators > + > +examples: > + - | > + #include <dt-bindings/interrupt-controller/irq.h> > + i2c0 { > + #address-cells = <1>; > + #size-cells = <0>; > + > + pmic: tps65086@5e { pmic@5e > + compatible = "ti,tps65086"; > + reg = <0x5e>; > + interrupt-parent = <&gpio1>; > + interrupts = <28 IRQ_TYPE_LEVEL_LOW>; > + interrupt-controller; > + #interrupt-cells = <2>; > + gpio-controller; > + #gpio-cells = <2>; > + > + regulators { > + buck1 { > + regulator-name = "vcc1"; > + regulator-min-microvolt = <1600000>; > + regulator-max-microvolt = <1600000>; > + regulator-boot-on; > + ti,regulator-decay; > + ti,regulator-step-size-25mv; > + }; > + }; > + }; > + }; > + > +... > diff --git a/Documentation/devicetree/bindings/mfd/tps65086.txt b/Documentation/devicetree/bindings/mfd/tps65086.txt > deleted file mode 100644 > index 67eac0ed32df..000000000000 > --- a/Documentation/devicetree/bindings/mfd/tps65086.txt > +++ /dev/null > @@ -1,54 +0,0 @@ > -* TPS65086 Power Management Integrated Circuit (PMIC) bindings > - > -Required properties: > - - compatible : Should be "ti,tps65086". > - - reg : I2C slave address. > - - interrupts : The interrupt line the device is connected to. > - - interrupt-controller : Marks the device node as an interrupt controller. > - - #interrupt-cells : The number of cells to describe an IRQ, should be 2. > - The first cell is the IRQ number. > - The second cell is the flags, encoded as trigger > - masks from ../interrupt-controller/interrupts.txt. > - - gpio-controller : Marks the device node as a GPIO Controller. > - - #gpio-cells : Should be two. The first cell is the pin number and > - the second cell is used to specify flags. > - See ../gpio/gpio.txt for more information. > - - regulators: : List of child nodes that specify the regulator > - initialization data. Child nodes must be named > - after their hardware counterparts: buck[1-6], > - ldoa[1-3], swa1, swb[1-2], and vtt. Each child > - node is defined using the standard binding for > - regulators and the optional regulator properties > - defined below. > - > -Optional regulator properties: > - - ti,regulator-step-size-25mv : This is applicable for buck[1-6], set this > - if the regulator is factory set with a 25mv > - step voltage mapping. > - - ti,regulator-decay : This is applicable for buck[1-6], set this if > - the output needs to decay, default is for > - the output to slew down. > - > -Example: > - > - pmic: tps65086@5e { > - compatible = "ti,tps65086"; > - reg = <0x5e>; > - interrupt-parent = <&gpio1>; > - interrupts = <28 IRQ_TYPE_LEVEL_LOW>; > - interrupt-controller; > - #interrupt-cells = <2>; > - gpio-controller; > - #gpio-cells = <2>; > - > - regulators { > - buck1 { > - regulator-name = "vcc1"; > - regulator-min-microvolt = <1600000>; > - regulator-max-microvolt = <1600000>; > - regulator-boot-on; > - ti,regulator-decay; > - ti,regulator-step-size-25mv; > - }; > - }; > - }; > -- > 2.32.0 > >
On Wed, 14 Jul 2021 at 22:44, Rob Herring <robh@kernel.org> wrote: > On Sat, Jun 26, 2021 at 12:47:42AM +0200, Emil Renner Berthing wrote: > > This converts the tps65086.txt binding description to YAML schema so > > dts files can be verified automatically. > > > > Signed-off-by: Emil Renner Berthing <kernel@esmil.dk> > > --- > > @Andrew: The dt-bindings meta schema requires a maintainer entry. I hope > > it's ok that I've added you, otherwise I don't know who should be > > listed. > > Anyone that knows the h/w and/or cares if the binding is changed or > deleted. If you can't find anyone, then good, one less binding. :) Hmm.. unless someone else responds I guess I'll just put myself then since I at least care that it isn't deleted. > > > > .../devicetree/bindings/mfd/ti,tps65086.yaml | 127 ++++++++++++++++++ > > .../devicetree/bindings/mfd/tps65086.txt | 54 -------- > > 2 files changed, 127 insertions(+), 54 deletions(-) > > create mode 100644 Documentation/devicetree/bindings/mfd/ti,tps65086.yaml > > delete mode 100644 Documentation/devicetree/bindings/mfd/tps65086.txt > > > > diff --git a/Documentation/devicetree/bindings/mfd/ti,tps65086.yaml b/Documentation/devicetree/bindings/mfd/ti,tps65086.yaml > > new file mode 100644 > > index 000000000000..ba638bd10a58 > > --- /dev/null > > +++ b/Documentation/devicetree/bindings/mfd/ti,tps65086.yaml > > @@ -0,0 +1,127 @@ > > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > > +%YAML 1.2 > > +--- > > +$id: http://devicetree.org/schemas/mfd/ti,tps65086.yaml# > > +$schema: http://devicetree.org/meta-schemas/core.yaml# > > + > > +title: TPS65086 Power Management Integrated Circuit (PMIC) > > + > > +maintainers: > > + - Andrew F. Davis <afd@ti.com> > > Not a valid email any more. > > > + > > +properties: > > + compatible: > > + const: ti,tps65086 > > + > > + reg: > > + const: 0x5e > > + description: I2C slave address > > + > > + interrupts: > > + maxItems: 1 > > + > > + interrupt-controller: true > > + > > + '#interrupt-cells': > > + const: 2 > > + description: | > > + The first cell is the IRQ number. The second cell is the flags, > > + encoded as trigger masks from ../interrupt-controller/interrupts.txt. > > + > > + gpio-controller: true > > + > > + '#gpio-cells': > > + const: 2 > > + description: | > > + The first cell is the pin number and the second cell is used to specify > > + flags. See ../gpio/gpio.txt for more information. > > + > > + regulators: > > + type: object > > + description: | > > + List of child nodes that specify the regulator initialization data. > > + Child nodes must be named after their hardware counterparts: > > + buck[1-6], ldoa[1-3], swa1, swb[1-2], and vtt. > > + Each child node is defined using the standard binding for regulators and > > + the optional regulator properties defined below. > > + > > + patternProperties: > > + "^buck[1-6]$": > > + type: object > > + $ref: ../regulator/regulator.yaml > > + > > + properties: > > + regulator-name: true > > + regulator-boot-on: true > > + regulator-always-on: true > > + regulator-min-microvolt: true > > + regulator-max-microvolt: true > > + ti,regulator-step-size-25mv: > > + type: boolean > > + description: | > > + Set this if the regulator is factory set with a 25mv step voltage > > + mapping. > > + ti,regulator-decay: > > + type: boolean > > + description: | > > + Set this if the output needs to decay, default is for the output > > + to slew down. > > + > > + additionalProperties: false > > + > > + "^(ldoa[1-3]|swa1|swb[1-2]|vtt)$": > > + type: object > > + $ref: ../regulator/regulator.yaml > > + > > + properties: > > + regulator-name: true > > + regulator-boot-on: true > > + regulator-always-on: true > > + regulator-min-microvolt: true > > + regulator-max-microvolt: true > > + > > + additionalProperties: false > > + > > +additionalProperties: false > > + > > +required: > > + - compatible > > + - reg > > + - interrupts > > + - interrupt-controller > > + - '#interrupt-cells' > > + - gpio-controller > > + - '#gpio-cells' > > + - regulators > > + > > +examples: > > + - | > > + #include <dt-bindings/interrupt-controller/irq.h> > > + i2c0 { > > + #address-cells = <1>; > > + #size-cells = <0>; > > + > > + pmic: tps65086@5e { > > pmic@5e Will fix, thanks! > > + compatible = "ti,tps65086"; > > + reg = <0x5e>; > > + interrupt-parent = <&gpio1>; > > + interrupts = <28 IRQ_TYPE_LEVEL_LOW>; > > + interrupt-controller; > > + #interrupt-cells = <2>; > > + gpio-controller; > > + #gpio-cells = <2>; > > + > > + regulators { > > + buck1 { > > + regulator-name = "vcc1"; > > + regulator-min-microvolt = <1600000>; > > + regulator-max-microvolt = <1600000>; > > + regulator-boot-on; > > + ti,regulator-decay; > > + ti,regulator-step-size-25mv; > > + }; > > + }; > > + }; > > + }; > > + > > +... > > diff --git a/Documentation/devicetree/bindings/mfd/tps65086.txt b/Documentation/devicetree/bindings/mfd/tps65086.txt > > deleted file mode 100644 > > index 67eac0ed32df..000000000000 > > --- a/Documentation/devicetree/bindings/mfd/tps65086.txt > > +++ /dev/null > > @@ -1,54 +0,0 @@ > > -* TPS65086 Power Management Integrated Circuit (PMIC) bindings > > - > > -Required properties: > > - - compatible : Should be "ti,tps65086". > > - - reg : I2C slave address. > > - - interrupts : The interrupt line the device is connected to. > > - - interrupt-controller : Marks the device node as an interrupt controller. > > - - #interrupt-cells : The number of cells to describe an IRQ, should be 2. > > - The first cell is the IRQ number. > > - The second cell is the flags, encoded as trigger > > - masks from ../interrupt-controller/interrupts.txt. > > - - gpio-controller : Marks the device node as a GPIO Controller. > > - - #gpio-cells : Should be two. The first cell is the pin number and > > - the second cell is used to specify flags. > > - See ../gpio/gpio.txt for more information. > > - - regulators: : List of child nodes that specify the regulator > > - initialization data. Child nodes must be named > > - after their hardware counterparts: buck[1-6], > > - ldoa[1-3], swa1, swb[1-2], and vtt. Each child > > - node is defined using the standard binding for > > - regulators and the optional regulator properties > > - defined below. > > - > > -Optional regulator properties: > > - - ti,regulator-step-size-25mv : This is applicable for buck[1-6], set this > > - if the regulator is factory set with a 25mv > > - step voltage mapping. > > - - ti,regulator-decay : This is applicable for buck[1-6], set this if > > - the output needs to decay, default is for > > - the output to slew down. > > - > > -Example: > > - > > - pmic: tps65086@5e { > > - compatible = "ti,tps65086"; > > - reg = <0x5e>; > > - interrupt-parent = <&gpio1>; > > - interrupts = <28 IRQ_TYPE_LEVEL_LOW>; > > - interrupt-controller; > > - #interrupt-cells = <2>; > > - gpio-controller; > > - #gpio-cells = <2>; > > - > > - regulators { > > - buck1 { > > - regulator-name = "vcc1"; > > - regulator-min-microvolt = <1600000>; > > - regulator-max-microvolt = <1600000>; > > - regulator-boot-on; > > - ti,regulator-decay; > > - ti,regulator-step-size-25mv; > > - }; > > - }; > > - }; > > -- > > 2.32.0 > > > >
diff --git a/Documentation/devicetree/bindings/mfd/ti,tps65086.yaml b/Documentation/devicetree/bindings/mfd/ti,tps65086.yaml new file mode 100644 index 000000000000..ba638bd10a58 --- /dev/null +++ b/Documentation/devicetree/bindings/mfd/ti,tps65086.yaml @@ -0,0 +1,127 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/mfd/ti,tps65086.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: TPS65086 Power Management Integrated Circuit (PMIC) + +maintainers: + - Andrew F. Davis <afd@ti.com> + +properties: + compatible: + const: ti,tps65086 + + reg: + const: 0x5e + description: I2C slave address + + interrupts: + maxItems: 1 + + interrupt-controller: true + + '#interrupt-cells': + const: 2 + description: | + The first cell is the IRQ number. The second cell is the flags, + encoded as trigger masks from ../interrupt-controller/interrupts.txt. + + gpio-controller: true + + '#gpio-cells': + const: 2 + description: | + The first cell is the pin number and the second cell is used to specify + flags. See ../gpio/gpio.txt for more information. + + regulators: + type: object + description: | + List of child nodes that specify the regulator initialization data. + Child nodes must be named after their hardware counterparts: + buck[1-6], ldoa[1-3], swa1, swb[1-2], and vtt. + Each child node is defined using the standard binding for regulators and + the optional regulator properties defined below. + + patternProperties: + "^buck[1-6]$": + type: object + $ref: ../regulator/regulator.yaml + + properties: + regulator-name: true + regulator-boot-on: true + regulator-always-on: true + regulator-min-microvolt: true + regulator-max-microvolt: true + ti,regulator-step-size-25mv: + type: boolean + description: | + Set this if the regulator is factory set with a 25mv step voltage + mapping. + ti,regulator-decay: + type: boolean + description: | + Set this if the output needs to decay, default is for the output + to slew down. + + additionalProperties: false + + "^(ldoa[1-3]|swa1|swb[1-2]|vtt)$": + type: object + $ref: ../regulator/regulator.yaml + + properties: + regulator-name: true + regulator-boot-on: true + regulator-always-on: true + regulator-min-microvolt: true + regulator-max-microvolt: true + + additionalProperties: false + +additionalProperties: false + +required: + - compatible + - reg + - interrupts + - interrupt-controller + - '#interrupt-cells' + - gpio-controller + - '#gpio-cells' + - regulators + +examples: + - | + #include <dt-bindings/interrupt-controller/irq.h> + i2c0 { + #address-cells = <1>; + #size-cells = <0>; + + pmic: tps65086@5e { + compatible = "ti,tps65086"; + reg = <0x5e>; + interrupt-parent = <&gpio1>; + interrupts = <28 IRQ_TYPE_LEVEL_LOW>; + interrupt-controller; + #interrupt-cells = <2>; + gpio-controller; + #gpio-cells = <2>; + + regulators { + buck1 { + regulator-name = "vcc1"; + regulator-min-microvolt = <1600000>; + regulator-max-microvolt = <1600000>; + regulator-boot-on; + ti,regulator-decay; + ti,regulator-step-size-25mv; + }; + }; + }; + }; + +... diff --git a/Documentation/devicetree/bindings/mfd/tps65086.txt b/Documentation/devicetree/bindings/mfd/tps65086.txt deleted file mode 100644 index 67eac0ed32df..000000000000 --- a/Documentation/devicetree/bindings/mfd/tps65086.txt +++ /dev/null @@ -1,54 +0,0 @@ -* TPS65086 Power Management Integrated Circuit (PMIC) bindings - -Required properties: - - compatible : Should be "ti,tps65086". - - reg : I2C slave address. - - interrupts : The interrupt line the device is connected to. - - interrupt-controller : Marks the device node as an interrupt controller. - - #interrupt-cells : The number of cells to describe an IRQ, should be 2. - The first cell is the IRQ number. - The second cell is the flags, encoded as trigger - masks from ../interrupt-controller/interrupts.txt. - - gpio-controller : Marks the device node as a GPIO Controller. - - #gpio-cells : Should be two. The first cell is the pin number and - the second cell is used to specify flags. - See ../gpio/gpio.txt for more information. - - regulators: : List of child nodes that specify the regulator - initialization data. Child nodes must be named - after their hardware counterparts: buck[1-6], - ldoa[1-3], swa1, swb[1-2], and vtt. Each child - node is defined using the standard binding for - regulators and the optional regulator properties - defined below. - -Optional regulator properties: - - ti,regulator-step-size-25mv : This is applicable for buck[1-6], set this - if the regulator is factory set with a 25mv - step voltage mapping. - - ti,regulator-decay : This is applicable for buck[1-6], set this if - the output needs to decay, default is for - the output to slew down. - -Example: - - pmic: tps65086@5e { - compatible = "ti,tps65086"; - reg = <0x5e>; - interrupt-parent = <&gpio1>; - interrupts = <28 IRQ_TYPE_LEVEL_LOW>; - interrupt-controller; - #interrupt-cells = <2>; - gpio-controller; - #gpio-cells = <2>; - - regulators { - buck1 { - regulator-name = "vcc1"; - regulator-min-microvolt = <1600000>; - regulator-max-microvolt = <1600000>; - regulator-boot-on; - ti,regulator-decay; - ti,regulator-step-size-25mv; - }; - }; - };
This converts the tps65086.txt binding description to YAML schema so dts files can be verified automatically. Signed-off-by: Emil Renner Berthing <kernel@esmil.dk> --- @Andrew: The dt-bindings meta schema requires a maintainer entry. I hope it's ok that I've added you, otherwise I don't know who should be listed. .../devicetree/bindings/mfd/ti,tps65086.yaml | 127 ++++++++++++++++++ .../devicetree/bindings/mfd/tps65086.txt | 54 -------- 2 files changed, 127 insertions(+), 54 deletions(-) create mode 100644 Documentation/devicetree/bindings/mfd/ti,tps65086.yaml delete mode 100644 Documentation/devicetree/bindings/mfd/tps65086.txt