2013-06-07 11:42:38

by Keerthy

[permalink] [raw]
Subject: [PATCH] ARM: dts: add dtsi for palmas

Adds palmas mfd and palmas regulator nodes. This is
based on the patch series:

http://www.mail-archive.com/[email protected]/msg89957.html

The device tree nodes are based on:
https://lkml.org/lkml/2013/6/6/25

Signed-off-by: J Keerthy <[email protected]>
Signed-off-by: Graeme Gregory <[email protected]>
---
arch/arm/boot/dts/palmas.dtsi | 171 +++++++++++++++++++++++++++++++++++++++++
1 files changed, 171 insertions(+), 0 deletions(-)
create mode 100644 arch/arm/boot/dts/palmas.dtsi

diff --git a/arch/arm/boot/dts/palmas.dtsi b/arch/arm/boot/dts/palmas.dtsi
new file mode 100644
index 0000000..be631b5
--- /dev/null
+++ b/arch/arm/boot/dts/palmas.dtsi
@@ -0,0 +1,171 @@
+/*
+ * Copyright (C) 2013 Texas Instruments Incorporated - http://www.ti.com/
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ */
+
+#include <dt-bindings/interrupt-controller/irq.h>
+
+&palmas {
+ compatible = "ti,palmas";
+ interrupt-controller;
+ #interrupt-cells = <2>;
+
+ palmas_pmic {
+ compatible = "ti,palmas-pmic";
+ interrupt-parent = <&palmas>;
+ interrupts = <14 IRQ_TYPE_NONE>;
+ interrupt-name = "short-irq";
+
+ ti,ldo6-vibrator;
+
+ regulators {
+ smps123_reg: smps123 {
+ regulator-name = "smps123";
+ regulator-min-microvolt = < 600000>;
+ regulator-max-microvolt = <1500000>;
+ regulator-always-on;
+ regulator-boot-on;
+ };
+
+ smps45_reg: smps45 {
+ regulator-name = "smps45";
+ regulator-min-microvolt = < 600000>;
+ regulator-max-microvolt = <1310000>;
+ regulator-always-on;
+ regulator-boot-on;
+ };
+
+ smps6_reg: smps6 {
+ regulator-name = "smps6";
+ regulator-min-microvolt = <1200000>;
+ regulator-max-microvolt = <1200000>;
+ regulator-always-on;
+ regulator-boot-on;
+ };
+
+ smps7_reg: smps7 {
+ regulator-name = "smps7";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ regulator-always-on;
+ regulator-boot-on;
+ };
+
+ smps8_reg: smps8 {
+ regulator-name = "smps8";
+ regulator-min-microvolt = < 600000>;
+ regulator-max-microvolt = <1310000>;
+ regulator-always-on;
+ regulator-boot-on;
+ };
+
+ smps9_reg: smps9 {
+ regulator-name = "smps9";
+ regulator-min-microvolt = <2100000>;
+ regulator-max-microvolt = <2100000>;
+ regulator-always-on;
+ regulator-boot-on;
+ ti,smps-range = <0x80>;
+ };
+
+ smps10_reg: smps10 {
+ regulator-name = "smps10";
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+ regulator-always-on;
+ regulator-boot-on;
+ };
+
+ ldo1_reg: ldo1 {
+ regulator-name = "ldo1";
+ regulator-min-microvolt = <2800000>;
+ regulator-max-microvolt = <2800000>;
+ regulator-always-on;
+ regulator-boot-on;
+ };
+
+ ldo2_reg: ldo2 {
+ regulator-name = "ldo2";
+ regulator-min-microvolt = <2900000>;
+ regulator-max-microvolt = <2900000>;
+ regulator-always-on;
+ regulator-boot-on;
+ };
+
+ ldo3_reg: ldo3 {
+ regulator-name = "ldo3";
+ regulator-min-microvolt = <3000000>;
+ regulator-max-microvolt = <3000000>;
+ regulator-always-on;
+ regulator-boot-on;
+ };
+
+ ldo4_reg: ldo4 {
+ regulator-name = "ldo4";
+ regulator-min-microvolt = <2200000>;
+ regulator-max-microvolt = <2200000>;
+ regulator-always-on;
+ regulator-boot-on;
+ };
+
+ ldo5_reg: ldo5 {
+ regulator-name = "ldo5";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ regulator-always-on;
+ regulator-boot-on;
+ };
+
+ ldo6_reg: ldo6 {
+ regulator-name = "ldo6";
+ regulator-min-microvolt = <1500000>;
+ regulator-max-microvolt = <1500000>;
+ regulator-always-on;
+ regulator-boot-on;
+ };
+
+ ldo7_reg: ldo7 {
+ regulator-name = "ldo7";
+ regulator-min-microvolt = <1500000>;
+ regulator-max-microvolt = <1500000>;
+ regulator-always-on;
+ regulator-boot-on;
+ };
+
+ ldo8_reg: ldo8 {
+ regulator-name = "ldo8";
+ regulator-min-microvolt = <1500000>;
+ regulator-max-microvolt = <1500000>;
+ regulator-always-on;
+ regulator-boot-on;
+ };
+
+ ldo9_reg: ldo9 {
+ regulator-name = "ldo9";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <3300000>;
+ regulator-always-on;
+ regulator-boot-on;
+ };
+
+ ldoln_reg: ldoln {
+ regulator-name = "ldoln";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ regulator-always-on;
+ regulator-boot-on;
+ };
+
+ ldousb_reg: ldousb {
+ regulator-name = "ldousb";
+ regulator-min-microvolt = <3250000>;
+ regulator-max-microvolt = <3250000>;
+ regulator-always-on;
+ regulator-boot-on;
+ };
+ };
+ };
+};
--
1.7.5.4


2013-06-07 12:27:47

by Benoit Cousson

[permalink] [raw]
Subject: Re: [PATCH] ARM: dts: add dtsi for palmas

Hi Keerthy,

On 06/07/2013 01:28 PM, J Keerthy wrote:
> Adds palmas mfd and palmas regulator nodes. This is
> based on the patch series:
>
> http://www.mail-archive.com/[email protected]/msg89957.html
>
> The device tree nodes are based on:
> https://lkml.org/lkml/2013/6/6/25

It looks like the board node to use palmas is missing? I cannot find it
in the previous series as well?

>
> Signed-off-by: J Keerthy <[email protected]>
> Signed-off-by: Graeme Gregory <[email protected]>
> ---
> arch/arm/boot/dts/palmas.dtsi | 171 +++++++++++++++++++++++++++++++++++++++++
> 1 files changed, 171 insertions(+), 0 deletions(-)
> create mode 100644 arch/arm/boot/dts/palmas.dtsi
>
> diff --git a/arch/arm/boot/dts/palmas.dtsi b/arch/arm/boot/dts/palmas.dtsi
> new file mode 100644
> index 0000000..be631b5
> --- /dev/null
> +++ b/arch/arm/boot/dts/palmas.dtsi
> @@ -0,0 +1,171 @@
> +/*
> + * Copyright (C) 2013 Texas Instruments Incorporated - http://www.ti.com/
> + *
> + * This program is free software; you can redistribute it and/or modify
> + * it under the terms of the GNU General Public License version 2 as
> + * published by the Free Software Foundation.
> + */
> +
> +#include <dt-bindings/interrupt-controller/irq.h>
> +
> +&palmas {
> + compatible = "ti,palmas";
> + interrupt-controller;
> + #interrupt-cells = <2>;

The I2C address should be there as well. We used to put it in the board
file, but this is really an I2C device specific information and not
board specific in that case.

Regards,
Benoit


> +
> + palmas_pmic {
> + compatible = "ti,palmas-pmic";
> + interrupt-parent = <&palmas>;
> + interrupts = <14 IRQ_TYPE_NONE>;
> + interrupt-name = "short-irq";
> +
> + ti,ldo6-vibrator;
> +
> + regulators {
> + smps123_reg: smps123 {
> + regulator-name = "smps123";
> + regulator-min-microvolt = < 600000>;
> + regulator-max-microvolt = <1500000>;
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + smps45_reg: smps45 {
> + regulator-name = "smps45";
> + regulator-min-microvolt = < 600000>;
> + regulator-max-microvolt = <1310000>;
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + smps6_reg: smps6 {
> + regulator-name = "smps6";
> + regulator-min-microvolt = <1200000>;
> + regulator-max-microvolt = <1200000>;
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + smps7_reg: smps7 {
> + regulator-name = "smps7";
> + regulator-min-microvolt = <1800000>;
> + regulator-max-microvolt = <1800000>;
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + smps8_reg: smps8 {
> + regulator-name = "smps8";
> + regulator-min-microvolt = < 600000>;
> + regulator-max-microvolt = <1310000>;
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + smps9_reg: smps9 {
> + regulator-name = "smps9";
> + regulator-min-microvolt = <2100000>;
> + regulator-max-microvolt = <2100000>;
> + regulator-always-on;
> + regulator-boot-on;
> + ti,smps-range = <0x80>;
> + };
> +
> + smps10_reg: smps10 {
> + regulator-name = "smps10";
> + regulator-min-microvolt = <5000000>;
> + regulator-max-microvolt = <5000000>;
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + ldo1_reg: ldo1 {
> + regulator-name = "ldo1";
> + regulator-min-microvolt = <2800000>;
> + regulator-max-microvolt = <2800000>;
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + ldo2_reg: ldo2 {
> + regulator-name = "ldo2";
> + regulator-min-microvolt = <2900000>;
> + regulator-max-microvolt = <2900000>;
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + ldo3_reg: ldo3 {
> + regulator-name = "ldo3";
> + regulator-min-microvolt = <3000000>;
> + regulator-max-microvolt = <3000000>;
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + ldo4_reg: ldo4 {
> + regulator-name = "ldo4";
> + regulator-min-microvolt = <2200000>;
> + regulator-max-microvolt = <2200000>;
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + ldo5_reg: ldo5 {
> + regulator-name = "ldo5";
> + regulator-min-microvolt = <1800000>;
> + regulator-max-microvolt = <1800000>;
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + ldo6_reg: ldo6 {
> + regulator-name = "ldo6";
> + regulator-min-microvolt = <1500000>;
> + regulator-max-microvolt = <1500000>;
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + ldo7_reg: ldo7 {
> + regulator-name = "ldo7";
> + regulator-min-microvolt = <1500000>;
> + regulator-max-microvolt = <1500000>;
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + ldo8_reg: ldo8 {
> + regulator-name = "ldo8";
> + regulator-min-microvolt = <1500000>;
> + regulator-max-microvolt = <1500000>;
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + ldo9_reg: ldo9 {
> + regulator-name = "ldo9";
> + regulator-min-microvolt = <1800000>;
> + regulator-max-microvolt = <3300000>;
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + ldoln_reg: ldoln {
> + regulator-name = "ldoln";
> + regulator-min-microvolt = <1800000>;
> + regulator-max-microvolt = <1800000>;
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + ldousb_reg: ldousb {
> + regulator-name = "ldousb";
> + regulator-min-microvolt = <3250000>;
> + regulator-max-microvolt = <3250000>;
> + regulator-always-on;
> + regulator-boot-on;
> + };
> + };
> + };
> +};
>

2013-06-07 12:33:07

by Keerthy

[permalink] [raw]
Subject: RE: [PATCH] ARM: dts: add dtsi for palmas

Hi Benoit,

Thanks for the quick response.
________________________________________
From: Cousson, Benoit
Sent: Friday, June 07, 2013 5:57 PM
To: J, KEERTHY
Cc: [email protected]; [email protected]; [email protected]; [email protected]; [email protected]; [email protected]; [email protected]; [email protected]; [email protected]; [email protected]
Subject: Re: [PATCH] ARM: dts: add dtsi for palmas

Hi Keerthy,

On 06/07/2013 01:28 PM, J Keerthy wrote:
> Adds palmas mfd and palmas regulator nodes. This is
> based on the patch series:
>
> http://www.mail-archive.com/[email protected]/msg89957.html
>
> The device tree nodes are based on:
> https://lkml.org/lkml/2013/6/6/25

It looks like the board node to use palmas is missing? I cannot find it
in the previous series as well?

Yes. This is just the palmas.dtsi which will be included in the board file.

>
> Signed-off-by: J Keerthy <[email protected]>
> Signed-off-by: Graeme Gregory <[email protected]>
> ---
> arch/arm/boot/dts/palmas.dtsi | 171 +++++++++++++++++++++++++++++++++++++++++
> 1 files changed, 171 insertions(+), 0 deletions(-)
> create mode 100644 arch/arm/boot/dts/palmas.dtsi
>
> diff --git a/arch/arm/boot/dts/palmas.dtsi b/arch/arm/boot/dts/palmas.dtsi
> new file mode 100644
> index 0000000..be631b5
> --- /dev/null
> +++ b/arch/arm/boot/dts/palmas.dtsi
> @@ -0,0 +1,171 @@
> +/*
> + * Copyright (C) 2013 Texas Instruments Incorporated - http://www.ti.com/
> + *
> + * This program is free software; you can redistribute it and/or modify
> + * it under the terms of the GNU General Public License version 2 as
> + * published by the Free Software Foundation.
> + */
> +
> +#include <dt-bindings/interrupt-controller/irq.h>
> +
> +&palmas {
> + compatible = "ti,palmas";
> + interrupt-controller;
> + #interrupt-cells = <2>;

The I2C address should be there as well. We used to put it in the board
file, but this is really an I2C device specific information and not
board specific in that case.

This again i will send another patch on top of the existing board
file. That will have the I2C address. This patch only adds the
standalone palmas.dtsi.

Regards,
Keerthy

Regards,
Benoit


> +
> + palmas_pmic {
> + compatible = "ti,palmas-pmic";
> + interrupt-parent = <&palmas>;
> + interrupts = <14 IRQ_TYPE_NONE>;
> + interrupt-name = "short-irq";
> +
> + ti,ldo6-vibrator;
> +
> + regulators {
> + smps123_reg: smps123 {
> + regulator-name = "smps123";
> + regulator-min-microvolt = < 600000>;
> + regulator-max-microvolt = <1500000>;
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + smps45_reg: smps45 {
> + regulator-name = "smps45";
> + regulator-min-microvolt = < 600000>;
> + regulator-max-microvolt = <1310000>;
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + smps6_reg: smps6 {
> + regulator-name = "smps6";
> + regulator-min-microvolt = <1200000>;
> + regulator-max-microvolt = <1200000>;
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + smps7_reg: smps7 {
> + regulator-name = "smps7";
> + regulator-min-microvolt = <1800000>;
> + regulator-max-microvolt = <1800000>;
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + smps8_reg: smps8 {
> + regulator-name = "smps8";
> + regulator-min-microvolt = < 600000>;
> + regulator-max-microvolt = <1310000>;
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + smps9_reg: smps9 {
> + regulator-name = "smps9";
> + regulator-min-microvolt = <2100000>;
> + regulator-max-microvolt = <2100000>;
> + regulator-always-on;
> + regulator-boot-on;
> + ti,smps-range = <0x80>;
> + };
> +
> + smps10_reg: smps10 {
> + regulator-name = "smps10";
> + regulator-min-microvolt = <5000000>;
> + regulator-max-microvolt = <5000000>;
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + ldo1_reg: ldo1 {
> + regulator-name = "ldo1";
> + regulator-min-microvolt = <2800000>;
> + regulator-max-microvolt = <2800000>;
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + ldo2_reg: ldo2 {
> + regulator-name = "ldo2";
> + regulator-min-microvolt = <2900000>;
> + regulator-max-microvolt = <2900000>;
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + ldo3_reg: ldo3 {
> + regulator-name = "ldo3";
> + regulator-min-microvolt = <3000000>;
> + regulator-max-microvolt = <3000000>;
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + ldo4_reg: ldo4 {
> + regulator-name = "ldo4";
> + regulator-min-microvolt = <2200000>;
> + regulator-max-microvolt = <2200000>;
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + ldo5_reg: ldo5 {
> + regulator-name = "ldo5";
> + regulator-min-microvolt = <1800000>;
> + regulator-max-microvolt = <1800000>;
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + ldo6_reg: ldo6 {
> + regulator-name = "ldo6";
> + regulator-min-microvolt = <1500000>;
> + regulator-max-microvolt = <1500000>;
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + ldo7_reg: ldo7 {
> + regulator-name = "ldo7";
> + regulator-min-microvolt = <1500000>;
> + regulator-max-microvolt = <1500000>;
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + ldo8_reg: ldo8 {
> + regulator-name = "ldo8";
> + regulator-min-microvolt = <1500000>;
> + regulator-max-microvolt = <1500000>;
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + ldo9_reg: ldo9 {
> + regulator-name = "ldo9";
> + regulator-min-microvolt = <1800000>;
> + regulator-max-microvolt = <3300000>;
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + ldoln_reg: ldoln {
> + regulator-name = "ldoln";
> + regulator-min-microvolt = <1800000>;
> + regulator-max-microvolt = <1800000>;
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + ldousb_reg: ldousb {
> + regulator-name = "ldousb";
> + regulator-min-microvolt = <3250000>;
> + regulator-max-microvolt = <3250000>;
> + regulator-always-on;
> + regulator-boot-on;
> + };
> + };
> + };
> +};
>

2013-06-07 19:23:04

by Stephen Warren

[permalink] [raw]
Subject: Re: [PATCH] ARM: dts: add dtsi for palmas

On 06/07/2013 06:27 AM, Benoit Cousson wrote:
> Hi Keerthy,
>
> On 06/07/2013 01:28 PM, J Keerthy wrote:
>> Adds palmas mfd and palmas regulator nodes. This is
>> based on the patch series:
>>
>> http://www.mail-archive.com/[email protected]/msg89957.html
>>
>> The device tree nodes are based on:
>> https://lkml.org/lkml/2013/6/6/25
...
>> diff --git a/arch/arm/boot/dts/palmas.dtsi b/arch/arm/boot/dts/palmas.dtsi
...
>> +&palmas {
>> + compatible = "ti,palmas";
>> + interrupt-controller;
>> + #interrupt-cells = <2>;
>
> The I2C address should be there as well. We used to put it in the board
> file, but this is really an I2C device specific information and not
> board specific in that case.

I thought the I2C address was variable depending on OTP settings, and
hence the I2C address is board-specific; depending on which variant of
the PMIC was stuffed onto the board?

2013-06-07 19:56:16

by Stephen Warren

[permalink] [raw]
Subject: Re: [PATCH] ARM: dts: add dtsi for palmas

On 06/07/2013 05:28 AM, J Keerthy wrote:
> Adds palmas mfd and palmas regulator nodes. This is
> based on the patch series:
>
> http://www.mail-archive.com/[email protected]/msg89957.html
>
> The device tree nodes are based on:
> https://lkml.org/lkml/2013/6/6/25

> diff --git a/arch/arm/boot/dts/palmas.dtsi b/arch/arm/boot/dts/palmas.dtsi

> +&palmas {

Hmmm. That (i.e. requiring the board file to declare the node, then
setting up all the content by later including this file) is an
interesting approach. I guess it's reasonable. The one issue is that it
makes it a little harder for the board file to override any of the
properties in this file., although it certainly is possible by including
those overrides after the include.

Irrespective of that, some comments on this:

> + palmas_pmic {

> + ti,ldo6-vibrator;

For example, what if the board doesn't want to have the property set?

> +
> + regulators {
> + smps123_reg: smps123 {
> + regulator-name = "smps123";
> + regulator-min-microvolt = < 600000>;
> + regulator-max-microvolt = <1500000>;

Or what if the board wants to limit the voltage range of this regulator
due to what it's used for on the board.

> + regulator-always-on;
> + regulator-boot-on;

And those two properties are almost certainly board-specific policy.

2013-06-10 04:04:06

by Keerthy

[permalink] [raw]
Subject: RE: [PATCH] ARM: dts: add dtsi for palmas

Hi Stephen,

Thanks for the review comments.

________________________________________
From: Stephen Warren [[email protected]]
Sent: Saturday, June 08, 2013 1:26 AM
To: J, KEERTHY
Cc: Cousson, Benoit; [email protected]; [email protected]; [email protected]; [email protected]; [email protected]; [email protected]; [email protected]; [email protected]; [email protected]
Subject: Re: [PATCH] ARM: dts: add dtsi for palmas

On 06/07/2013 05:28 AM, J Keerthy wrote:
> Adds palmas mfd and palmas regulator nodes. This is
> based on the patch series:
>
> http://www.mail-archive.com/[email protected]/msg89957.html
>
> The device tree nodes are based on:
> https://lkml.org/lkml/2013/6/6/25

> diff --git a/arch/arm/boot/dts/palmas.dtsi b/arch/arm/boot/dts/palmas.dtsi

> +&palmas {

Hmmm. That (i.e. requiring the board file to declare the node, then
setting up all the content by later including this file) is an
interesting approach. I guess it's reasonable. The one issue is that it
makes it a little harder for the board file to override any of the
properties in this file., although it certainly is possible by including
those overrides after the include.

Irrespective of that, some comments on this:

> + palmas_pmic {

> + ti,ldo6-vibrator;

For example, what if the board doesn't want to have the property set?

> +
> + regulators {
> + smps123_reg: smps123 {
> + regulator-name = "smps123";
> + regulator-min-microvolt = < 600000>;
> + regulator-max-microvolt = <1500000>;

Or what if the board wants to limit the voltage range of this regulator
due to what it's used for on the board.

> + regulator-always-on;
> + regulator-boot-on;

And those two properties are almost certainly board-specific policy.

Totally agree to all the above concerns. So can we have a custom .dtsi file
for a board+pmic combination? Or have only the required properties over ridden
in the board file?

Regards,
Keerthy

2013-06-10 08:04:28

by Lee Jones

[permalink] [raw]
Subject: Re: [PATCH] ARM: dts: add dtsi for palmas

> Totally agree to all the above concerns. So can we have a custom .dtsi file
> for a board+pmic combination? Or have only the required properties over ridden
> in the board file?

The common approach is to only apply nodes and node properties to the
.dtsi files which are appropriate for _all_ platforms which include
them. Anything that is only relevant to a sub-set of boards should be
in a higher ranking .dtsi file and finally, any settings which are
board specific should be in the board's .dts file.

--
Lee Jones
Linaro ST-Ericsson Landing Team Lead
Linaro.org │ Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog

2013-06-10 09:30:07

by Benoit Cousson

[permalink] [raw]
Subject: Re: [PATCH] ARM: dts: add dtsi for palmas

Hi Keerthy,

On 06/10/2013 06:03 AM, J, KEERTHY wrote:
> Hi Stephen,
>
> Thanks for the review comments.
>
> ________________________________________
> From: Stephen Warren [[email protected]]
> Sent: Saturday, June 08, 2013 1:26 AM
> To: J, KEERTHY
> Cc: Cousson, Benoit; [email protected]; [email protected]; [email protected]; [email protected]; [email protected]; [email protected]; [email protected]; [email protected]; [email protected]
> Subject: Re: [PATCH] ARM: dts: add dtsi for palmas
>
> On 06/07/2013 05:28 AM, J Keerthy wrote:
>> Adds palmas mfd and palmas regulator nodes. This is
>> based on the patch series:
>>
>> http://www.mail-archive.com/[email protected]/msg89957.html
>>
>> The device tree nodes are based on:
>> https://lkml.org/lkml/2013/6/6/25
>
>> diff --git a/arch/arm/boot/dts/palmas.dtsi b/arch/arm/boot/dts/palmas.dtsi
>
>> +&palmas {
>
> Hmmm. That (i.e. requiring the board file to declare the node, then
> setting up all the content by later including this file) is an
> interesting approach. I guess it's reasonable. The one issue is that it
> makes it a little harder for the board file to override any of the
> properties in this file., although it certainly is possible by including
> those overrides after the include.
>
> Irrespective of that, some comments on this:
>
>> + palmas_pmic {
>
>> + ti,ldo6-vibrator;
>
> For example, what if the board doesn't want to have the property set?
>
>> +
>> + regulators {
>> + smps123_reg: smps123 {
>> + regulator-name = "smps123";
>> + regulator-min-microvolt = < 600000>;
>> + regulator-max-microvolt = <1500000>;
>
> Or what if the board wants to limit the voltage range of this regulator
> due to what it's used for on the board.
>
>> + regulator-always-on;
>> + regulator-boot-on;
>
> And those two properties are almost certainly board-specific policy.
>
> Totally agree to all the above concerns. So can we have a custom .dtsi file
> for a board+pmic combination? Or have only the required properties over ridden
> in the board file?

Yes, you can do that potentially if most OMAP5 boards will reuse the
same kind of settings. Kevin has just done that for OMAP3 + twl4030.

In this case, since we do have only one board, I'm not sure it worth the
effort.

Regards,
Benoit

2013-06-10 10:18:17

by Keerthy

[permalink] [raw]
Subject: RE: [PATCH] ARM: dts: add dtsi for palmas

Hi Benoit,

> -----Original Message-----
> From: Cousson, Benoit
> Sent: Monday, June 10, 2013 3:00 PM
> To: J, KEERTHY
> Cc: Stephen Warren; [email protected]; linux-
> [email protected]; [email protected];
> [email protected]; [email protected]; [email protected];
> [email protected]; [email protected]; [email protected]
> Subject: Re: [PATCH] ARM: dts: add dtsi for palmas
>
> Hi Keerthy,
>
> On 06/10/2013 06:03 AM, J, KEERTHY wrote:
> > Hi Stephen,
> >
> > Thanks for the review comments.
> >
> > ________________________________________
> > From: Stephen Warren [[email protected]]
> > Sent: Saturday, June 08, 2013 1:26 AM
> > To: J, KEERTHY
> > Cc: Cousson, Benoit; [email protected];
> > [email protected]; [email protected];
> > [email protected]; [email protected]; [email protected];
> > [email protected]; [email protected]; [email protected]
> > Subject: Re: [PATCH] ARM: dts: add dtsi for palmas
> >
> > On 06/07/2013 05:28 AM, J Keerthy wrote:
> >> Adds palmas mfd and palmas regulator nodes. This is based on the
> >> patch series:
> >>
> >> http://www.mail-archive.com/[email protected]/msg89957.html
> >>
> >> The device tree nodes are based on:
> >> https://lkml.org/lkml/2013/6/6/25
> >
> >> diff --git a/arch/arm/boot/dts/palmas.dtsi
> >> b/arch/arm/boot/dts/palmas.dtsi
> >
> >> +&palmas {
> >
> > Hmmm. That (i.e. requiring the board file to declare the node, then
> > setting up all the content by later including this file) is an
> > interesting approach. I guess it's reasonable. The one issue is that
> > it makes it a little harder for the board file to override any of the
> > properties in this file., although it certainly is possible by
> > including those overrides after the include.
> >
> > Irrespective of that, some comments on this:
> >
> >> + palmas_pmic {
> >
> >> + ti,ldo6-vibrator;
> >
> > For example, what if the board doesn't want to have the property set?
> >
> >> +
> >> + regulators {
> >> + smps123_reg: smps123 {
> >> + regulator-name = "smps123";
> >> + regulator-min-microvolt = < 600000>;
> >> + regulator-max-microvolt = <1500000>;
> >
> > Or what if the board wants to limit the voltage range of this
> > regulator due to what it's used for on the board.
> >
> >> + regulator-always-on;
> >> + regulator-boot-on;
> >
> > And those two properties are almost certainly board-specific policy.
> >
> > Totally agree to all the above concerns. So can we have a custom
> .dtsi
> > file for a board+pmic combination? Or have only the required
> > properties over ridden in the board file?
>
> Yes, you can do that potentially if most OMAP5 boards will reuse the
> same kind of settings. Kevin has just done that for OMAP3 + twl4030.
>
> In this case, since we do have only one board, I'm not sure it worth
> the effort.

I sent a V2 with only the most generic property in palmas.dtsi and the
Configurable parameter under the board file. Let me know if that patch set
Is fine.


>
> Regards,
> Benoit

Regards,
Keerthy

2013-06-10 16:21:22

by Stephen Warren

[permalink] [raw]
Subject: Re: [PATCH] ARM: dts: add dtsi for palmas

On 06/10/2013 03:29 AM, Benoit Cousson wrote:
> Hi Keerthy,
>
> On 06/10/2013 06:03 AM, J, KEERTHY wrote:
>> Hi Stephen,
>>
>> Thanks for the review comments.
>>
>> ________________________________________
>> From: Stephen Warren [[email protected]]
>> Sent: Saturday, June 08, 2013 1:26 AM
>> To: J, KEERTHY
>> Cc: Cousson, Benoit; [email protected]; [email protected]; [email protected]; [email protected]; [email protected]; [email protected]; [email protected]; [email protected]; [email protected]
>> Subject: Re: [PATCH] ARM: dts: add dtsi for palmas
>>
>> On 06/07/2013 05:28 AM, J Keerthy wrote:
>>> Adds palmas mfd and palmas regulator nodes. This is
>>> based on the patch series:
>>>
>>> http://www.mail-archive.com/[email protected]/msg89957.html
>>>
>>> The device tree nodes are based on:
>>> https://lkml.org/lkml/2013/6/6/25
>>
>>> diff --git a/arch/arm/boot/dts/palmas.dtsi b/arch/arm/boot/dts/palmas.dtsi
>>
>>> +&palmas {
>>
>> Hmmm. That (i.e. requiring the board file to declare the node, then
>> setting up all the content by later including this file) is an
>> interesting approach. I guess it's reasonable. The one issue is that it
>> makes it a little harder for the board file to override any of the
>> properties in this file., although it certainly is possible by including
>> those overrides after the include.
>>
>> Irrespective of that, some comments on this:
>>
>>> + palmas_pmic {
>>
>>> + ti,ldo6-vibrator;
>>
>> For example, what if the board doesn't want to have the property set?
>>
>>> +
>>> + regulators {
>>> + smps123_reg: smps123 {
>>> + regulator-name = "smps123";
>>> + regulator-min-microvolt = < 600000>;
>>> + regulator-max-microvolt = <1500000>;
>>
>> Or what if the board wants to limit the voltage range of this regulator
>> due to what it's used for on the board.
>>
>>> + regulator-always-on;
>>> + regulator-boot-on;
>>
>> And those two properties are almost certainly board-specific policy.
>>
>> Totally agree to all the above concerns. So can we have a custom .dtsi file
>> for a board+pmic combination? Or have only the required properties over ridden
>> in the board file?
>
> Yes, you can do that potentially if most OMAP5 boards will reuse the
> same kind of settings. Kevin has just done that for OMAP3 + twl4030.
>
> In this case, since we do have only one board, I'm not sure it worth the
> effort.

IIUC, various Tegra boards use this PMIC, so there's more than one board
in question here.

Or were you talking about e.g.:

palmas.dtsi - base Palmas DT node for everything
omapXXXX-palmas.dtsi - common Palmas settings for all OMAP boards

... where the latter file would only be used by one board? If so, then
yes, creating the latter file might not make sense yet.

2013-06-10 16:22:27

by Stephen Warren

[permalink] [raw]
Subject: Re: [PATCH] ARM: dts: add dtsi for palmas

On 06/09/2013 10:03 PM, J, KEERTHY wrote:
> Hi Stephen,
>
> Thanks for the review comments.

Cam you please fix your email client to quote the messages you're
replyiing to correctly? In the message you sent, there's no
differentiation between what I originally wrote and you quoted, vs. the
new text you wrote as a response. That makes the message very confusing
to read...