Message ID | 1389206270-3728-8-git-send-email-sboyd@codeaurora.org |
---|---|
State | Superseded, archived |
Headers | show |
> PM8921 and PM8058 are PMICs found paired with MSM8960 and MSM8660 > devices respectively. They contain subdevices such as keypads, > RTCs, regulators, clocks, etc. > > Cc: <devicetree@vger.kernel.org> > Signed-off-by: Stephen Boyd <sboyd@codeaurora.org> > --- > .../devicetree/bindings/mfd/qcom,pm8xxx.txt | 63 ++++++++++++++++++++++ > 1 file changed, 63 insertions(+) > create mode 100644 Documentation/devicetree/bindings/mfd/qcom,pm8xxx.txt Just waiting on the Ack for this one now.
> PM8921 and PM8058 are PMICs found paired with MSM8960 and MSM8660 > devices respectively. They contain subdevices such as keypads, > RTCs, regulators, clocks, etc. > > Cc: <devicetree@vger.kernel.org> > Signed-off-by: Stephen Boyd <sboyd@codeaurora.org> > --- > .../devicetree/bindings/mfd/qcom,pm8xxx.txt | 63 ++++++++++++++++++++++ > 1 file changed, 63 insertions(+) > create mode 100644 Documentation/devicetree/bindings/mfd/qcom,pm8xxx.txt > > diff --git a/Documentation/devicetree/bindings/mfd/qcom,pm8xxx.txt b/Documentation/devicetree/bindings/mfd/qcom,pm8xxx.txt > new file mode 100644 > index 000000000000..e3fe625ffd58 > --- /dev/null > +++ b/Documentation/devicetree/bindings/mfd/qcom,pm8xxx.txt > @@ -0,0 +1,63 @@ <snip> > +- interrupts: > + Usage: required > + Value type: <prop-encoded-array> Either provide an example or a comment to see the description of #interrupt-cells > + 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 : <u32> > + 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 Actually I'd prefer if you used the definitions in: dt-bindings/interrupt-controller/irq.h > +- interrupt-controller: > + Usage: required > + Value type: <empty> > + Definition: identifies this node as an interrupt controller > + > +EXAMPLE > + > + pmicintc: pmic@0 { > + compatible = "qcom,pm8921"; > + interrupts = <104 8>; As above. > + #interrupt-cells = <2>; > + interrupt-controller; > + #address-cells = <1>; > + #size-cells = <0>; > + > + pwrkey { > + compatible = "qcom,pm8921-pwrkey"; > + interrupt-parent = <&pmicintc>; > + interrupts = <50 1>, <51 1>; As above. > + }; > + }; > -- > The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum, > hosted by The Linux Foundation
On 02/11, Lee Jones wrote: > > > +- interrupts: > > + Usage: required > > + Value type: <prop-encoded-array> > > Either provide an example or a comment to see the description of > #interrupt-cells It is part of the example. We also state that the format is defined by the interrupt parent binding. > > > + 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 : <u32> > > + 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 > > Actually I'd prefer if you used the definitions in: > dt-bindings/interrupt-controller/irq.h These match the #defines in that file. I'd like to be explicit about the numbers to prevent people from thinking they have to use #defines and to match what other irq controllers have done (gic, atmel-aic, etc.)
> > > +- interrupts: > > > + Usage: required > > > + Value type: <prop-encoded-array> > > > > Either provide an example or a comment to see the description of > > #interrupt-cells > > It is part of the example. We also state that the format is > defined by the interrupt parent binding. Okay, fair enough. > > > + 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 : <u32> > > > + 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 > > > > Actually I'd prefer if you used the definitions in: > > dt-bindings/interrupt-controller/irq.h > > These match the #defines in that file. I'd like to be explicit > about the numbers to prevent people from thinking they have to > use #defines and to match what other irq controllers have done > (gic, atmel-aic, etc.) I believe people _do_ have to use the #defines? Is there a good reason for you not wanting to use them?
On 02/13/14 03:06, Lee Jones wrote: >> These match the #defines in that file. I'd like to be explicit >> about the numbers to prevent people from thinking they have to >> use #defines and to match what other irq controllers have done >> (gic, atmel-aic, etc.) > I believe people _do_ have to use the #defines? Is there a good reason > for you not wanting to use them? > No, there isn't any requirement to use #defines in DT.
diff --git a/Documentation/devicetree/bindings/mfd/qcom,pm8xxx.txt b/Documentation/devicetree/bindings/mfd/qcom,pm8xxx.txt new file mode 100644 index 000000000000..e3fe625ffd58 --- /dev/null +++ b/Documentation/devicetree/bindings/mfd/qcom,pm8xxx.txt @@ -0,0 +1,63 @@ +Qualcomm PM8xxx PMIC multi-function devices + +PROPERTIES + +- compatible: + Usage: required + Value type: <string> + Definition: must be one of: + "qcom,pm8058" + "qcom,pm8921" + +- #address-cells: + Usage: required + Value type: <u32> + Definition: must be 1 + +- #size-cells: + Usage: required + Value type: <u32> + Definition: must be 0 + +- interrupts: + Usage: required + Value type: <prop-encoded-array> + 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 : <u32> + 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: <empty> + Definition: identifies this node as an interrupt controller + +EXAMPLE + + pmicintc: pmic@0 { + compatible = "qcom,pm8921"; + interrupts = <104 8>; + #interrupt-cells = <2>; + interrupt-controller; + #address-cells = <1>; + #size-cells = <0>; + + pwrkey { + compatible = "qcom,pm8921-pwrkey"; + interrupt-parent = <&pmicintc>; + interrupts = <50 1>, <51 1>; + }; + };
PM8921 and PM8058 are PMICs found paired with MSM8960 and MSM8660 devices respectively. They contain subdevices such as keypads, RTCs, regulators, clocks, etc. Cc: <devicetree@vger.kernel.org> Signed-off-by: Stephen Boyd <sboyd@codeaurora.org> --- .../devicetree/bindings/mfd/qcom,pm8xxx.txt | 63 ++++++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100644 Documentation/devicetree/bindings/mfd/qcom,pm8xxx.txt