From: lee.jones@linaro.org (Lee Jones)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v9 2/5] mfd: AXP20x: Add bindings documentation
Date: Mon, 2 Feb 2015 08:53:51 +0000 [thread overview]
Message-ID: <20150202085351.GB12723@x1> (raw)
In-Reply-To: <CAGb2v67-znKNUVJQPVJqMXhiHEyfkjBGZFPc5hW+w0ODQ+HMmg@mail.gmail.com>
On Sat, 31 Jan 2015, Chen-Yu Tsai wrote:
> Hi Lee,
>
> On Thu, Jan 22, 2015 at 5:02 PM, Lee Jones <lee.jones@linaro.org> wrote:
> > On Thu, 22 Jan 2015, Chen-Yu Tsai wrote:
> >
> >> From: Carlo Caione <carlo@caione.org>
> >>
> >> Bindings documentation for the AXP20x driver. In this file also
> >> sub-nodes are documented.
> >>
> >> Signed-off-by: Carlo Caione <carlo@caione.org>
> >> Acked-by: Maxime Ripard <maxime.ripard@free-electrons.com>
> >> [wens at csie.org: clarify interrupt source for the axp PMIC]
> >> [wens at csie.org: explain dcdc-workmode in detail and trim lines to 80 chars]
> >> [wens at csie.org: make regulator supplies optional if using unregulated input]
> >> [wens at csie.org: use cubieboard2 regulator nodes as example]
> >> [wens at csie.org: change dcdc-workmode to dcdc-workmode-pwm boolean property]
> >> [wens at csie.org: use clock-frequency for dcdc regulator work frequency]
> >> Signed-off-by: Chen-Yu Tsai <wens@csie.org>
> >> ---
> >> Documentation/devicetree/bindings/mfd/axp20x.txt | 102 +++++++++++++++++++++++
> >> 1 file changed, 102 insertions(+)
> >> create mode 100644 Documentation/devicetree/bindings/mfd/axp20x.txt
> >
> > This looks okay to me now.
> >
> > If Mark is happy with the remainder, I'll merge this.
>
> So Mark is not happy with this actually, for a few reasons:
>
> 1. The driver was already merged a couple versions back, and
> we have been using the dcdc-freq binding.
>
> 2. Furthermore, the dcdc-freq binding has nothing to do with
> the common clock framework. Using the clock-frequencies
> binding implies it does.
>
> 3. The change from a integer value to a boolean flag for
> dcdc-mode makes it less capable, i.e. the kernel can't
> just accept the current state of the hardware, which
> should be a valid option for regulators to not screw
> up the system accidentally.
>
> Any chance you could merge the previous version (v8)?
You'll have to re-send it as v10 and obtain Acks in the normal way.
> > For my own reference:
> > Acked-by: Lee Jones <lee.jones@linaro.org>
> >
> >> diff --git a/Documentation/devicetree/bindings/mfd/axp20x.txt b/Documentation/devicetree/bindings/mfd/axp20x.txt
> >> new file mode 100644
> >> index 000000000000..c3c80db242c7
> >> --- /dev/null
> >> +++ b/Documentation/devicetree/bindings/mfd/axp20x.txt
> >> @@ -0,0 +1,102 @@
> >> +AXP202/AXP209 device tree bindings
> >> +
> >> +The axp20x family current members :
> >> +axp202 (X-Powers)
> >> +axp209 (X-Powers)
> >> +
> >> +Required properties:
> >> +- compatible: "x-powers,axp202" or "x-powers,axp209"
> >> +- reg: The I2C slave address for the AXP chip
> >> +- interrupt-parent: The parent interrupt controller
> >> +- interrupts: SoC NMI / GPIO interrupt connected to the PMIC's IRQ pin
> >> +- interrupt-controller: axp20x has its own internal IRQs
> >> +- #interrupt-cells: Should be set to 1
> >> +- regulators: A node that houses a sub-node for each regulator. The regulators
> >> + are bound using their name as listed here: dcdc2, dcdc3, ldo1,
> >> + ldo2, ldo3, ldo4, ldo5. The bindings details of individual
> >> + regulator device can be found in:
> >> + Documentation/devicetree/bindings/regulator/regulator.txt with
> >> + the exception of x-powers,dcdc-freq. Regulators not used should
> >> + still be listed for completeness and that the regulator subsystem
> >> + properly registers them.
> >> +
> >> +Optional properties:
> >> +- regulator supplies - may be omitted if inputs are unregulated, such as using
> >> + the IPSOUT output from the PMIC
> >> + - acin-supply: The input supply for LDO1
> >> + - vin2-supply: The input supply for DCDC2
> >> + - vin3-supply: The input supply for DCDC3
> >> + - ldo24in-supply: The input supply for LDO2, LDO4
> >> + - ldo3in-supply: The input supply for LDO3
> >> + - ldo5in-supply: The input supply for LDO5
> >> +
> >> +Optional properties for regulators node:
> >> +- clock-frequency: defines the work frequency of DC-DC regulators
> >> + (range: 750kHz - 1875kHz). Default: 1.5MHz
> >> +
> >> +Optional properties for DCDC regulators:
> >> +- x-powers,dcdc-workmode-pwm: Force the DCDC regulators to run in PWM mode
> >> + The DCDC regulators rormally work in a mixed
> >> + PWM/PFM mode, using PFM under light loads and
> >> + switching to PWM for heavier loads. Forcing
> >> + PWM mode trades efficiency under light loads
> >> + for lower output noise. This probably makes
> >> + sense for HiFi audio related applications that
> >> + aren't battery constrained.
> >> +
> >> +Example:
> >> +
> >> +axp209: pmic at 34 {
> >> + compatible = "x-powers,axp209";
> >> + reg = <0x34>;
> >> + interrupt-parent = <&nmi_intc>;
> >> + interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
> >> + interrupt-controller;
> >> + #interrupt-cells = <1>;
> >> +
> >> + regulators {
> >> + clock-frequency = <1500000>;
> >> +
> >> + vdd_cpu: dcdc2 {
> >> + regulator-always-on;
> >> + regulator-min-microvolt = <1000000>;
> >> + regulator-max-microvolt = <1450000>;
> >> + regulator-name = "vdd-cpu";
> >> + };
> >> +
> >> + vdd_int_dll: dcdc3 {
> >> + regulator-always-on;
> >> + regulator-min-microvolt = <1000000>;
> >> + regulator-max-microvolt = <1400000>;
> >> + regulator-name = "vdd-int-dll";
> >> + };
> >> +
> >> + vdd_rtc: ldo1 {
> >> + regulator-always-on;
> >> + regulator-min-microvolt = <1200000>;
> >> + regulator-max-microvolt = <1400000>;
> >> + regulator-name = "vdd-rtc";
> >> + };
> >> +
> >> + avcc: ldo2 {
> >> + regulator-always-on;
> >> + regulator-min-microvolt = <2700000>;
> >> + regulator-max-microvolt = <3300000>;
> >> + regulator-name = "avcc";
> >> + };
> >> +
> >> + ldo3 {
> >> + /* unused */
> >> + };
> >> +
> >> + csi1_io_2v8: ldo4 {
> >> + /* output on extension headers */
> >> + regulator-name = "csi1-io-2v8";
> >> + };
> >> +
> >> + ldo5 {
> >> + /* unused */
> >> + };
> >> + };
> >> +};
> >> +
> >
--
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org ? Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog
WARNING: multiple messages have this Message-ID (diff)
From: Lee Jones <lee.jones@linaro.org>
To: Chen-Yu Tsai <wens@csie.org>
Cc: Mark Brown <broonie@kernel.org>, Rob Herring <robh+dt@kernel.org>,
Grant Likely <grant.likely@linaro.org>,
Maxime Ripard <maxime.ripard@free-electrons.com>,
Carlo Caione <carlo@caione.org>,
devicetree <devicetree@vger.kernel.org>,
linux-arm-kernel <linux-arm-kernel@lists.infradead.org>,
linux-kernel <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH v9 2/5] mfd: AXP20x: Add bindings documentation
Date: Mon, 2 Feb 2015 08:53:51 +0000 [thread overview]
Message-ID: <20150202085351.GB12723@x1> (raw)
In-Reply-To: <CAGb2v67-znKNUVJQPVJqMXhiHEyfkjBGZFPc5hW+w0ODQ+HMmg@mail.gmail.com>
On Sat, 31 Jan 2015, Chen-Yu Tsai wrote:
> Hi Lee,
>
> On Thu, Jan 22, 2015 at 5:02 PM, Lee Jones <lee.jones@linaro.org> wrote:
> > On Thu, 22 Jan 2015, Chen-Yu Tsai wrote:
> >
> >> From: Carlo Caione <carlo@caione.org>
> >>
> >> Bindings documentation for the AXP20x driver. In this file also
> >> sub-nodes are documented.
> >>
> >> Signed-off-by: Carlo Caione <carlo@caione.org>
> >> Acked-by: Maxime Ripard <maxime.ripard@free-electrons.com>
> >> [wens@csie.org: clarify interrupt source for the axp PMIC]
> >> [wens@csie.org: explain dcdc-workmode in detail and trim lines to 80 chars]
> >> [wens@csie.org: make regulator supplies optional if using unregulated input]
> >> [wens@csie.org: use cubieboard2 regulator nodes as example]
> >> [wens@csie.org: change dcdc-workmode to dcdc-workmode-pwm boolean property]
> >> [wens@csie.org: use clock-frequency for dcdc regulator work frequency]
> >> Signed-off-by: Chen-Yu Tsai <wens@csie.org>
> >> ---
> >> Documentation/devicetree/bindings/mfd/axp20x.txt | 102 +++++++++++++++++++++++
> >> 1 file changed, 102 insertions(+)
> >> create mode 100644 Documentation/devicetree/bindings/mfd/axp20x.txt
> >
> > This looks okay to me now.
> >
> > If Mark is happy with the remainder, I'll merge this.
>
> So Mark is not happy with this actually, for a few reasons:
>
> 1. The driver was already merged a couple versions back, and
> we have been using the dcdc-freq binding.
>
> 2. Furthermore, the dcdc-freq binding has nothing to do with
> the common clock framework. Using the clock-frequencies
> binding implies it does.
>
> 3. The change from a integer value to a boolean flag for
> dcdc-mode makes it less capable, i.e. the kernel can't
> just accept the current state of the hardware, which
> should be a valid option for regulators to not screw
> up the system accidentally.
>
> Any chance you could merge the previous version (v8)?
You'll have to re-send it as v10 and obtain Acks in the normal way.
> > For my own reference:
> > Acked-by: Lee Jones <lee.jones@linaro.org>
> >
> >> diff --git a/Documentation/devicetree/bindings/mfd/axp20x.txt b/Documentation/devicetree/bindings/mfd/axp20x.txt
> >> new file mode 100644
> >> index 000000000000..c3c80db242c7
> >> --- /dev/null
> >> +++ b/Documentation/devicetree/bindings/mfd/axp20x.txt
> >> @@ -0,0 +1,102 @@
> >> +AXP202/AXP209 device tree bindings
> >> +
> >> +The axp20x family current members :
> >> +axp202 (X-Powers)
> >> +axp209 (X-Powers)
> >> +
> >> +Required properties:
> >> +- compatible: "x-powers,axp202" or "x-powers,axp209"
> >> +- reg: The I2C slave address for the AXP chip
> >> +- interrupt-parent: The parent interrupt controller
> >> +- interrupts: SoC NMI / GPIO interrupt connected to the PMIC's IRQ pin
> >> +- interrupt-controller: axp20x has its own internal IRQs
> >> +- #interrupt-cells: Should be set to 1
> >> +- regulators: A node that houses a sub-node for each regulator. The regulators
> >> + are bound using their name as listed here: dcdc2, dcdc3, ldo1,
> >> + ldo2, ldo3, ldo4, ldo5. The bindings details of individual
> >> + regulator device can be found in:
> >> + Documentation/devicetree/bindings/regulator/regulator.txt with
> >> + the exception of x-powers,dcdc-freq. Regulators not used should
> >> + still be listed for completeness and that the regulator subsystem
> >> + properly registers them.
> >> +
> >> +Optional properties:
> >> +- regulator supplies - may be omitted if inputs are unregulated, such as using
> >> + the IPSOUT output from the PMIC
> >> + - acin-supply: The input supply for LDO1
> >> + - vin2-supply: The input supply for DCDC2
> >> + - vin3-supply: The input supply for DCDC3
> >> + - ldo24in-supply: The input supply for LDO2, LDO4
> >> + - ldo3in-supply: The input supply for LDO3
> >> + - ldo5in-supply: The input supply for LDO5
> >> +
> >> +Optional properties for regulators node:
> >> +- clock-frequency: defines the work frequency of DC-DC regulators
> >> + (range: 750kHz - 1875kHz). Default: 1.5MHz
> >> +
> >> +Optional properties for DCDC regulators:
> >> +- x-powers,dcdc-workmode-pwm: Force the DCDC regulators to run in PWM mode
> >> + The DCDC regulators rormally work in a mixed
> >> + PWM/PFM mode, using PFM under light loads and
> >> + switching to PWM for heavier loads. Forcing
> >> + PWM mode trades efficiency under light loads
> >> + for lower output noise. This probably makes
> >> + sense for HiFi audio related applications that
> >> + aren't battery constrained.
> >> +
> >> +Example:
> >> +
> >> +axp209: pmic@34 {
> >> + compatible = "x-powers,axp209";
> >> + reg = <0x34>;
> >> + interrupt-parent = <&nmi_intc>;
> >> + interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
> >> + interrupt-controller;
> >> + #interrupt-cells = <1>;
> >> +
> >> + regulators {
> >> + clock-frequency = <1500000>;
> >> +
> >> + vdd_cpu: dcdc2 {
> >> + regulator-always-on;
> >> + regulator-min-microvolt = <1000000>;
> >> + regulator-max-microvolt = <1450000>;
> >> + regulator-name = "vdd-cpu";
> >> + };
> >> +
> >> + vdd_int_dll: dcdc3 {
> >> + regulator-always-on;
> >> + regulator-min-microvolt = <1000000>;
> >> + regulator-max-microvolt = <1400000>;
> >> + regulator-name = "vdd-int-dll";
> >> + };
> >> +
> >> + vdd_rtc: ldo1 {
> >> + regulator-always-on;
> >> + regulator-min-microvolt = <1200000>;
> >> + regulator-max-microvolt = <1400000>;
> >> + regulator-name = "vdd-rtc";
> >> + };
> >> +
> >> + avcc: ldo2 {
> >> + regulator-always-on;
> >> + regulator-min-microvolt = <2700000>;
> >> + regulator-max-microvolt = <3300000>;
> >> + regulator-name = "avcc";
> >> + };
> >> +
> >> + ldo3 {
> >> + /* unused */
> >> + };
> >> +
> >> + csi1_io_2v8: ldo4 {
> >> + /* output on extension headers */
> >> + regulator-name = "csi1-io-2v8";
> >> + };
> >> +
> >> + ldo5 {
> >> + /* unused */
> >> + };
> >> + };
> >> +};
> >> +
> >
--
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org │ Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog
next prev parent reply other threads:[~2015-02-02 8:53 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-01-22 15:39 [PATCH v9 0/5] mfd: axp20x: add support for AXP202 and AXP209 Chen-Yu Tsai
2015-01-22 15:39 ` Chen-Yu Tsai
2015-01-22 15:39 ` Chen-Yu Tsai
2015-01-22 15:39 ` [PATCH v9 1/5] dt-bindings: add vendor-prefix for X-Powers Chen-Yu Tsai
2015-01-22 15:39 ` Chen-Yu Tsai
2015-01-22 15:39 ` Chen-Yu Tsai
2015-01-22 15:39 ` [PATCH v9 2/5] mfd: AXP20x: Add bindings documentation Chen-Yu Tsai
2015-01-22 15:39 ` Chen-Yu Tsai
2015-01-22 15:39 ` Chen-Yu Tsai
2015-01-22 16:02 ` Lee Jones
2015-01-22 16:02 ` Lee Jones
2015-01-31 16:49 ` Chen-Yu Tsai
2015-01-31 16:49 ` Chen-Yu Tsai
2015-01-31 16:49 ` Chen-Yu Tsai
2015-02-02 8:53 ` Lee Jones [this message]
2015-02-02 8:53 ` Lee Jones
2015-02-10 7:34 ` Chen-Yu Tsai
2015-02-10 7:34 ` Chen-Yu Tsai
2015-02-10 7:34 ` Chen-Yu Tsai
2015-01-22 15:39 ` [PATCH v9 3/5] regulators: axp20x: Use "clock-frequency" property for dcdc work frequency Chen-Yu Tsai
2015-01-22 15:39 ` Chen-Yu Tsai
2015-01-22 15:39 ` Chen-Yu Tsai
2015-01-27 12:14 ` Mark Brown
2015-01-27 12:14 ` Mark Brown
2015-01-27 12:14 ` Mark Brown
2015-01-22 15:39 ` [PATCH v9 4/5] regulators: axp20x: Change dcdc-workmode DT property to boolean flag Chen-Yu Tsai
2015-01-22 15:39 ` Chen-Yu Tsai
2015-01-22 15:39 ` Chen-Yu Tsai
2015-01-27 12:27 ` Mark Brown
2015-01-27 12:27 ` Mark Brown
2015-01-22 15:39 ` [PATCH v9 5/5] ARM: sunxi: dts: axp209: Use clock-frequency for DC-DC work frequency Chen-Yu Tsai
2015-01-22 15:39 ` Chen-Yu Tsai
2015-01-22 15:39 ` Chen-Yu Tsai
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20150202085351.GB12723@x1 \
--to=lee.jones@linaro.org \
--cc=linux-arm-kernel@lists.infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.