Re: [PATCH 2/3] dt-bindings: mfd: Convert pm8xxx bindings to yaml
On Wed, Apr 7, 2021 at 9:37 PM Bjorn Andersson wrote: > > On Wed 07 Apr 10:37 CDT 2021, ska...@codeaurora.org wrote: > > > Hi Bjorn, > > > > On 2021-03-11 22:33, Bjorn Andersson wrote: > > > On Thu 11 Mar 01:29 CST 2021, satya priya wrote: > [..] > > > > +patternProperties: > > > > + "rtc@[0-9a-f]+$": > > > > > > Can we somehow link this to individual binding docs instead of listing > > > all the possible functions here? > > > > > > > you mean we should split this into two: > > qcom-pm8xxx.yaml and qcom-pm8xxx-rtc.yaml > > Please correct me if wrong. > > > > Right, I'm worried that it will be quite hard to maintain this document > once we start adding all the various pmic blocks to it. So if we somehow > can maintain a series of qcom-pm8xxx-.yaml and just ref them into > the main PMIC definition. > > @Rob, can you give us some guidance on how to structure this binding, > with the various PMICs described will have some defined subset of a > larger set of hardware blocks that's often shared between versions? How you suggest is good. The only other thing is just 1 complete example rather than a bunch of fragments. Rob
Re: [PATCH 2/3] dt-bindings: mfd: Convert pm8xxx bindings to yaml
On Wed 07 Apr 10:37 CDT 2021, ska...@codeaurora.org wrote: > Hi Bjorn, > > On 2021-03-11 22:33, Bjorn Andersson wrote: > > On Thu 11 Mar 01:29 CST 2021, satya priya wrote: [..] > > > +patternProperties: > > > + "rtc@[0-9a-f]+$": > > > > Can we somehow link this to individual binding docs instead of listing > > all the possible functions here? > > > > you mean we should split this into two: > qcom-pm8xxx.yaml and qcom-pm8xxx-rtc.yaml > Please correct me if wrong. > Right, I'm worried that it will be quite hard to maintain this document once we start adding all the various pmic blocks to it. So if we somehow can maintain a series of qcom-pm8xxx-.yaml and just ref them into the main PMIC definition. @Rob, can you give us some guidance on how to structure this binding, with the various PMICs described will have some defined subset of a larger set of hardware blocks that's often shared between versions? Regards, Bjorn
Re: [PATCH 2/3] dt-bindings: mfd: Convert pm8xxx bindings to yaml
Hi Bjorn, On 2021-03-11 22:33, Bjorn Andersson wrote: On Thu 11 Mar 01:29 CST 2021, satya priya wrote: Convert pm8xxx rtc bindings from .txt to .yaml format. Wonderful initiative, thank you! Signed-off-by: satya priya --- .../devicetree/bindings/mfd/qcom-pm8xxx.txt| 99 --- .../devicetree/bindings/mfd/qcom-pm8xxx.yaml | 108 + 2 files changed, 108 insertions(+), 99 deletions(-) delete mode 100644 Documentation/devicetree/bindings/mfd/qcom-pm8xxx.txt create mode 100644 Documentation/devicetree/bindings/mfd/qcom-pm8xxx.yaml diff --git a/Documentation/devicetree/bindings/mfd/qcom-pm8xxx.txt b/Documentation/devicetree/bindings/mfd/qcom-pm8xxx.txt deleted file mode 100644 index 9e5eba4..000 --- a/Documentation/devicetree/bindings/mfd/qcom-pm8xxx.txt +++ /dev/null @@ -1,99 +0,0 @@ -Qualcomm PM8xxx PMIC multi-function devices - -The PM8xxx family of Power Management ICs are used to provide regulated -voltages and other various functionality to Qualcomm SoCs. - -= PROPERTIES - -- compatible: - Usage: required - Value type: - Definition: must be one of: - "qcom,pm8058" - "qcom,pm8821" - "qcom,pm8921" - -- #address-cells: - Usage: required - Value type: - Definition: must be 1 - -- #size-cells: - Usage: required - Value type: - Definition: must be 0 - -- interrupts: - Usage: required - Value type: - Definition: specifies the interrupt that indicates a subdevice - has generated an interrupt (summary interrupt). The - format of the specifier is defined by the binding document - describing the node's interrupt parent. - -- #interrupt-cells: - Usage: required - Value type : - Definition: must be 2. Specifies the number of cells needed to encode - an interrupt source. The 1st cell contains the interrupt - number. The 2nd cell is the trigger type and level flags - encoded as follows: - - 1 = low-to-high edge triggered - 2 = high-to-low edge triggered - 4 = active high level-sensitive - 8 = active low level-sensitive - -- interrupt-controller: - Usage: required - Value type: - Definition: identifies this node as an interrupt controller - -= SUBCOMPONENTS - -The PMIC contains multiple independent functions, each described in a subnode. -The below bindings specify the set of valid subnodes. - -== Real-Time Clock - -- compatible: - Usage: required - Value type: - Definition: must be one of: - "qcom,pm8058-rtc" - "qcom,pm8921-rtc" - "qcom,pm8941-rtc" - "qcom,pm8018-rtc" - -- reg: - Usage: required - Value type: - Definition: single entry specifying the base address of the RTC registers - -- interrupts: - Usage: required - Value type: - Definition: single entry specifying the RTC's alarm interrupt - -- allow-set-time: - Usage: optional - Value type: - Definition: indicates that the setting of RTC time is allowed by - the host CPU - -= EXAMPLE - - pmicintc: pmic@0 { - compatible = "qcom,pm8921"; - interrupts = <104 8>; - #interrupt-cells = <2>; - interrupt-controller; - #address-cells = <1>; - #size-cells = <0>; - - rtc@11d { - compatible = "qcom,pm8921-rtc"; - reg = <0x11d>; - interrupts = <0x27 0>; - }; - }; diff --git a/Documentation/devicetree/bindings/mfd/qcom-pm8xxx.yaml b/Documentation/devicetree/bindings/mfd/qcom-pm8xxx.yaml new file mode 100644 index 000..b4892f1 --- /dev/null +++ b/Documentation/devicetree/bindings/mfd/qcom-pm8xxx.yaml @@ -0,0 +1,108 @@ +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/mfd/qcom-pm8xxx.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Qualcomm PM8xxx PMIC multi-function devices + +maintainers: + - Lee Jones While Lee is maintainer of the mfd core, it would be better if this was someone looking out for the Qualcomm PMIC binding specifically. + +description: | + The PM8xxx family of Power Management ICs are used to provide regulated + voltages and other various functionality to Qualcomm SoCs. + +properties: + compatible: +enum: + - qcom,pm8058 + - qcom,pm8821 + - qcom,pm8921 + + reg: +maxItems: 1 + + '#address-cells': + const: 1 + + '#size-cells': + const: 0 + + interrupts: +description: | + Specifies the interrupt that indicates a subdevice has generated an +
Re: [PATCH 2/3] dt-bindings: mfd: Convert pm8xxx bindings to yaml
On Thu 11 Mar 01:29 CST 2021, satya priya wrote: > Convert pm8xxx rtc bindings from .txt to .yaml format. > Wonderful initiative, thank you! > Signed-off-by: satya priya > --- > .../devicetree/bindings/mfd/qcom-pm8xxx.txt| 99 --- > .../devicetree/bindings/mfd/qcom-pm8xxx.yaml | 108 > + > 2 files changed, 108 insertions(+), 99 deletions(-) > delete mode 100644 Documentation/devicetree/bindings/mfd/qcom-pm8xxx.txt > create mode 100644 Documentation/devicetree/bindings/mfd/qcom-pm8xxx.yaml > > diff --git a/Documentation/devicetree/bindings/mfd/qcom-pm8xxx.txt > b/Documentation/devicetree/bindings/mfd/qcom-pm8xxx.txt > deleted file mode 100644 > index 9e5eba4..000 > --- a/Documentation/devicetree/bindings/mfd/qcom-pm8xxx.txt > +++ /dev/null > @@ -1,99 +0,0 @@ > -Qualcomm PM8xxx PMIC multi-function devices > - > -The PM8xxx family of Power Management ICs are used to provide regulated > -voltages and other various functionality to Qualcomm SoCs. > - > -= PROPERTIES > - > -- compatible: > - Usage: required > - Value type: > - Definition: must be one of: > - "qcom,pm8058" > - "qcom,pm8821" > - "qcom,pm8921" > - > -- #address-cells: > - Usage: required > - Value type: > - Definition: must be 1 > - > -- #size-cells: > - Usage: required > - Value type: > - Definition: must be 0 > - > -- interrupts: > - Usage: required > - Value type: > - Definition: specifies the interrupt that indicates a subdevice > - has generated an interrupt (summary interrupt). The > - format of the specifier is defined by the binding document > - describing the node's interrupt parent. > - > -- #interrupt-cells: > - Usage: required > - Value type : > - Definition: must be 2. Specifies the number of cells needed to encode > - an interrupt source. The 1st cell contains the interrupt > - number. The 2nd cell is the trigger type and level flags > - encoded as follows: > - > - 1 = low-to-high edge triggered > - 2 = high-to-low edge triggered > - 4 = active high level-sensitive > - 8 = active low level-sensitive > - > -- interrupt-controller: > - Usage: required > - Value type: > - Definition: identifies this node as an interrupt controller > - > -= SUBCOMPONENTS > - > -The PMIC contains multiple independent functions, each described in a > subnode. > -The below bindings specify the set of valid subnodes. > - > -== Real-Time Clock > - > -- compatible: > - Usage: required > - Value type: > - Definition: must be one of: > - "qcom,pm8058-rtc" > - "qcom,pm8921-rtc" > - "qcom,pm8941-rtc" > - "qcom,pm8018-rtc" > - > -- reg: > - Usage: required > - Value type: > - Definition: single entry specifying the base address of the RTC > registers > - > -- interrupts: > - Usage: required > - Value type: > - Definition: single entry specifying the RTC's alarm interrupt > - > -- allow-set-time: > - Usage: optional > - Value type: > - Definition: indicates that the setting of RTC time is allowed by > - the host CPU > - > -= EXAMPLE > - > - pmicintc: pmic@0 { > - compatible = "qcom,pm8921"; > - interrupts = <104 8>; > - #interrupt-cells = <2>; > - interrupt-controller; > - #address-cells = <1>; > - #size-cells = <0>; > - > - rtc@11d { > - compatible = "qcom,pm8921-rtc"; > - reg = <0x11d>; > - interrupts = <0x27 0>; > - }; > - }; > diff --git a/Documentation/devicetree/bindings/mfd/qcom-pm8xxx.yaml > b/Documentation/devicetree/bindings/mfd/qcom-pm8xxx.yaml > new file mode 100644 > index 000..b4892f1 > --- /dev/null > +++ b/Documentation/devicetree/bindings/mfd/qcom-pm8xxx.yaml > @@ -0,0 +1,108 @@ > +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/mfd/qcom-pm8xxx.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Qualcomm PM8xxx PMIC multi-function devices > + > +maintainers: > + - Lee Jones While Lee is maintainer of the mfd core, it would be better if this was someone looking out for the Qualcomm PMIC binding specifically. > + > +description: | > + The PM8xxx family of Power Management ICs are used to provide regulated > + voltages and other various functionality to Qualcomm SoCs. > + > +properties: > + compatible: > +enum: > + - qcom,pm8058 > + - qcom,pm8821 > + - qcom,pm8921 > + > + reg: > +maxItems: 1 > + > + '#address-cells': > + const: 1 > + > + '#size-cells': > + const: 0 >
Re: [PATCH 2/3] dt-bindings: mfd: Convert pm8xxx bindings to yaml
On Thu, 11 Mar 2021 12:59:57 +0530, satya priya wrote: > Convert pm8xxx rtc bindings from .txt to .yaml format. > > Signed-off-by: satya priya > --- > .../devicetree/bindings/mfd/qcom-pm8xxx.txt| 99 --- > .../devicetree/bindings/mfd/qcom-pm8xxx.yaml | 108 > + > 2 files changed, 108 insertions(+), 99 deletions(-) > delete mode 100644 Documentation/devicetree/bindings/mfd/qcom-pm8xxx.txt > create mode 100644 Documentation/devicetree/bindings/mfd/qcom-pm8xxx.yaml > My bot found errors running 'make dt_binding_check' on your patch: yamllint warnings/errors: ./Documentation/devicetree/bindings/mfd/qcom-pm8xxx.yaml:27:6: [warning] wrong indentation: expected 4 but found 5 (indentation) ./Documentation/devicetree/bindings/mfd/qcom-pm8xxx.yaml:30:6: [warning] wrong indentation: expected 4 but found 5 (indentation) dtschema/dtc warnings/errors: See https://patchwork.ozlabs.org/patch/1450975 This check can fail if there are any dependencies. The base for a patch series is generally the most recent rc1. If you already ran 'make dt_binding_check' and didn't see the above error(s), then make sure 'yamllint' is installed and dt-schema is up to date: pip3 install dtschema --upgrade Please check and re-submit.
[PATCH 2/3] dt-bindings: mfd: Convert pm8xxx bindings to yaml
Convert pm8xxx rtc bindings from .txt to .yaml format. Signed-off-by: satya priya --- .../devicetree/bindings/mfd/qcom-pm8xxx.txt| 99 --- .../devicetree/bindings/mfd/qcom-pm8xxx.yaml | 108 + 2 files changed, 108 insertions(+), 99 deletions(-) delete mode 100644 Documentation/devicetree/bindings/mfd/qcom-pm8xxx.txt create mode 100644 Documentation/devicetree/bindings/mfd/qcom-pm8xxx.yaml diff --git a/Documentation/devicetree/bindings/mfd/qcom-pm8xxx.txt b/Documentation/devicetree/bindings/mfd/qcom-pm8xxx.txt deleted file mode 100644 index 9e5eba4..000 --- a/Documentation/devicetree/bindings/mfd/qcom-pm8xxx.txt +++ /dev/null @@ -1,99 +0,0 @@ -Qualcomm PM8xxx PMIC multi-function devices - -The PM8xxx family of Power Management ICs are used to provide regulated -voltages and other various functionality to Qualcomm SoCs. - -= PROPERTIES - -- compatible: - Usage: required - Value type: - Definition: must be one of: - "qcom,pm8058" - "qcom,pm8821" - "qcom,pm8921" - -- #address-cells: - Usage: required - Value type: - Definition: must be 1 - -- #size-cells: - Usage: required - Value type: - Definition: must be 0 - -- interrupts: - Usage: required - Value type: - Definition: specifies the interrupt that indicates a subdevice - has generated an interrupt (summary interrupt). The - format of the specifier is defined by the binding document - describing the node's interrupt parent. - -- #interrupt-cells: - Usage: required - Value type : - Definition: must be 2. Specifies the number of cells needed to encode - an interrupt source. The 1st cell contains the interrupt - number. The 2nd cell is the trigger type and level flags - encoded as follows: - - 1 = low-to-high edge triggered - 2 = high-to-low edge triggered - 4 = active high level-sensitive - 8 = active low level-sensitive - -- interrupt-controller: - Usage: required - Value type: - Definition: identifies this node as an interrupt controller - -= SUBCOMPONENTS - -The PMIC contains multiple independent functions, each described in a subnode. -The below bindings specify the set of valid subnodes. - -== Real-Time Clock - -- compatible: - Usage: required - Value type: - Definition: must be one of: - "qcom,pm8058-rtc" - "qcom,pm8921-rtc" - "qcom,pm8941-rtc" - "qcom,pm8018-rtc" - -- reg: - Usage: required - Value type: - Definition: single entry specifying the base address of the RTC registers - -- interrupts: - Usage: required - Value type: - Definition: single entry specifying the RTC's alarm interrupt - -- allow-set-time: - Usage: optional - Value type: - Definition: indicates that the setting of RTC time is allowed by - the host CPU - -= EXAMPLE - - pmicintc: pmic@0 { - compatible = "qcom,pm8921"; - interrupts = <104 8>; - #interrupt-cells = <2>; - interrupt-controller; - #address-cells = <1>; - #size-cells = <0>; - - rtc@11d { - compatible = "qcom,pm8921-rtc"; - reg = <0x11d>; - interrupts = <0x27 0>; - }; - }; diff --git a/Documentation/devicetree/bindings/mfd/qcom-pm8xxx.yaml b/Documentation/devicetree/bindings/mfd/qcom-pm8xxx.yaml new file mode 100644 index 000..b4892f1 --- /dev/null +++ b/Documentation/devicetree/bindings/mfd/qcom-pm8xxx.yaml @@ -0,0 +1,108 @@ +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/mfd/qcom-pm8xxx.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Qualcomm PM8xxx PMIC multi-function devices + +maintainers: + - Lee Jones + +description: | + The PM8xxx family of Power Management ICs are used to provide regulated + voltages and other various functionality to Qualcomm SoCs. + +properties: + compatible: +enum: + - qcom,pm8058 + - qcom,pm8821 + - qcom,pm8921 + + reg: +maxItems: 1 + + '#address-cells': + const: 1 + + '#size-cells': + const: 0 + + interrupts: +description: | + Specifies the interrupt that indicates a subdevice has generated an + interrupt (summary interrupt). + + '#interrupt-cells': +description: | + Specifies the number of cells needed to encode an interrupt source. + The 1st cell contains the interrupt number. The 2nd cell is the + trigger type. +const: 2 + + interrupt-controller: true +