Message ID | 1370604504-32310-1-git-send-email-j-keerthy@ti.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
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/linux-omap@vger.kernel.org/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 <j-keerthy@ti.com> > Signed-off-by: Graeme Gregory <gg@slimlogic.co.uk> > --- > 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; > + }; > + }; > + }; > +}; > -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Hi Benoit, Thanks for the quick response.
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/linux-omap@vger.kernel.org/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? -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
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/linux-omap@vger.kernel.org/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. -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Hi Stephen, Thanks for the review comments.
> 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.
Hi Keerthy, On 06/10/2013 06:03 AM, J, KEERTHY wrote: > Hi Stephen, > > Thanks for the review comments. > > ________________________________________ > From: Stephen Warren [swarren@wwwdotorg.org] > Sent: Saturday, June 08, 2013 1:26 AM > To: J, KEERTHY > Cc: Cousson, Benoit; devicetree-discuss@lists.ozlabs.org; linux-omap@vger.kernel.org; linux-kernel@vger.kernel.org; ldewangan@nvidia.com; grant.likely@secretlab.ca; swarren@nvidia.com; sameo@linux.intel.com; gg@slimlogic.co.uk; lee.jones@linaro.org > 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/linux-omap@vger.kernel.org/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 -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Hi Benoit, > -----Original Message----- > From: Cousson, Benoit > Sent: Monday, June 10, 2013 3:00 PM > To: J, KEERTHY > Cc: Stephen Warren; devicetree-discuss@lists.ozlabs.org; linux- > omap@vger.kernel.org; linux-kernel@vger.kernel.org; > ldewangan@nvidia.com; grant.likely@secretlab.ca; swarren@nvidia.com; > sameo@linux.intel.com; gg@slimlogic.co.uk; lee.jones@linaro.org > 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 [swarren@wwwdotorg.org] > > Sent: Saturday, June 08, 2013 1:26 AM > > To: J, KEERTHY > > Cc: Cousson, Benoit; devicetree-discuss@lists.ozlabs.org; > > linux-omap@vger.kernel.org; linux-kernel@vger.kernel.org; > > ldewangan@nvidia.com; grant.likely@secretlab.ca; swarren@nvidia.com; > > sameo@linux.intel.com; gg@slimlogic.co.uk; lee.jones@linaro.org > > 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/linux-omap@vger.kernel.org/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 -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
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 [swarren@wwwdotorg.org] >> Sent: Saturday, June 08, 2013 1:26 AM >> To: J, KEERTHY >> Cc: Cousson, Benoit; devicetree-discuss@lists.ozlabs.org; linux-omap@vger.kernel.org; linux-kernel@vger.kernel.org; ldewangan@nvidia.com; grant.likely@secretlab.ca; swarren@nvidia.com; sameo@linux.intel.com; gg@slimlogic.co.uk; lee.jones@linaro.org >> 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/linux-omap@vger.kernel.org/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. -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
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... -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
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; + }; + }; + }; +};