On Wed, Sep 9, 2020 at 10:03 AM Cristian Ciocaltea <cristian.ciocaltea@xxxxxxxxx> wrote: > > Hi Rob, > > Thanks for reviewing! > > On Tue, Sep 08, 2020 at 03:47:24PM -0600, Rob Herring wrote: > > On Sat, Aug 22, 2020 at 01:19:47AM +0300, Cristian Ciocaltea wrote: > > > Add devicetree binding for Actions Semi ATC260x PMICs. > > > > > > Signed-off-by: Cristian Ciocaltea <cristian.ciocaltea@xxxxxxxxx> > > > --- > > > .../bindings/mfd/actions,atc260x.yaml | 221 ++++++++++++++++++ > > > 1 file changed, 221 insertions(+) > > > create mode 100644 Documentation/devicetree/bindings/mfd/actions,atc260x.yaml > > > > > > diff --git a/Documentation/devicetree/bindings/mfd/actions,atc260x.yaml b/Documentation/devicetree/bindings/mfd/actions,atc260x.yaml > > > new file mode 100644 > > > index 000000000000..4a55bbe1306e > > > --- /dev/null > > > +++ b/Documentation/devicetree/bindings/mfd/actions,atc260x.yaml > > > @@ -0,0 +1,221 @@ > > > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > > > +%YAML 1.2 > > > +--- > > > +$id: http://devicetree.org/schemas/mfd/actions,atc260x.yaml# > > > +$schema: http://devicetree.org/meta-schemas/core.yaml# > > > + > > > +title: Actions Semi ATC260x Power Management IC bindings > > > + > > > +maintainers: > > > + - Manivannan Sadhasivam <manivannan.sadhasivam@xxxxxxxxxx> > > > + - Cristian Ciocaltea <cristian.ciocaltea@xxxxxxxxx> > > > + > > > +description: | > > > + ATC260x series PMICs integrates Audio Codec, Power Management, RTC, IR > > > + and GPIO controller blocks. Currently only the PM related functionalities > > > + (i.e. regulators and system power-off/reboot) for the ATC2603C and ATC2609A > > > + chip variants are supported. > > > + ATC2603C includes 3 programmable DC-DC converters and 9 LDO regulators. > > > + ATC2609A includes 5 programmable DC-DC converters and 10 LDO regulators. > > > + > > > +properties: > > > + compatible: > > > + enum: > > > + - actions,atc2603c > > > + - actions,atc2609a > > > + > > > + reg: > > > + maxItems: 1 > > > + > > > + interrupts: > > > + maxItems: 1 > > > + > > > + pwrc: > > > + type: object > > > + description: | > > > + The power controller integrated in ATC260x provides system power-off > > > + and reboot operations. > > > > No need for this node as there are no properties, just instantiate > > what's needed in the MFD driver. > > My intention was to allow the user specify what functionality in the MFD > shall be enabled. For this particular case, if the 'pwrc' node is not > provided, the power-off/reboot functions will be disabled. IIRC, there's a flag property for this already. > > > > + > > > + properties: > > > + compatible: > > > + enum: > > > + - actions,atc2603c-pwrc > > > + - actions,atc2609a-pwrc > > > + > > > + required: > > > + - compatible > > > + > > > + additionalProperties: false > > > + > > > + onkey: > > > + type: object > > > + description: | > > > + Use the ONKEY built into ATC260x PMICs as an input device reporting > > > + power button status. ONKEY can be used to wakeup from low power > > > + modes and force a reset on long press. > > > + > > > + properties: > > > + compatible: > > > + enum: > > > + - actions,atc2603c-onkey > > > + - actions,atc2609a-onkey > > > + > > > + actions,reset-time-sec: > > > + description: | > > > + Duration in seconds which the key should be kept pressed for device > > > + to reset automatically. The hardware default is 8. Use 0 to disable > > > + this functionality. > > > + enum: [0, 6, 8, 10, 12] > > > > We already have 'power-off-time-sec' in input.yaml. How about adding > > 'reset-time-sec' there. > > Thanks for the suggestion, I was actually looking for this before > choosing the custom property and just assumed this was not added for > a particular reason. Probably just because the usual behavior of holding the power button is to power off rather than reset. > So I'm going to handle it. Would you like me to send a separate patch > (not part of this series)? Separate patch yes, but it can be part of the series. > > This could really just be a property in the parent node. > > This is similar with 'pwrc': if 'onkey' node is not present, the ONKEY > functionality will not be enabled. Would you really want/need to support wakeup, but disable long press feature? Seems like a single property would be sufficient. > Is there a better/recommended approach to manage this MFD feature > selection? But we have child nodes for this in other cases, so I guess it is fine. Rob