* [PATCH V3] ARM: dt: tegra: ventana: add regulators
@ 2012-08-03 18:09 Stephen Warren
[not found] ` <1344017356-29352-1-git-send-email-swarren-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
0 siblings, 1 reply; 5+ messages in thread
From: Stephen Warren @ 2012-08-03 18:09 UTC (permalink / raw)
To: Olof Johansson, Colin Cross
Cc: Mark Brown, Laxman Dewangan,
linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r,
linux-tegra-u79uwXL29TY76Z2rM5mHXA, Stephen Warren
From: Stephen Warren <swarren-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
Ventana uses a TPS6586x regulator. Instantiate this, and hook up a
couple of fixed GPIO-controlled regulators too.
The data was chosen to match the PMIC HW defaults, with the following
exception:
ldo6: The HW default is 2.85v. The schematics are unlabelled. Internal
research indicates that 1.8v is correct. Our downstream kernel also uses
1.8v.
Portions based on work by Laxman Dewangan <ldewangan-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
Signed-off-by: Stephen Warren <swarren-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
---
v3:
* Switch back to simple-bus compatible value for the /regulators node.
* Added supply properties for all TPS6586x regulators.
* Made SM* children of the new SYS regulator.
* Removed ldo0 configuration, since it isn't used.
v2:
* Made all constraints match the HW defaults to avoid behavior changes,
with exceptions noted above.
* Removed vin-supply properties from LDO nodes; the driver and binding
need to be updated to support specifying the parent regulators before
we can put these into DT.
* Rename vdd_pnl regulator-name to match schematic.
* Added vdd_bl regulator.
* Fix typo in regulator@3 reg property.
* Use the enumerated-bus compatible value for the /regulators node.
* Enhanced all regulator-name properties to list all signal names directly
derived from the regulator pins.
* Added ldo_rtc regulator.
---
arch/arm/boot/dts/tegra20-ventana.dts | 204 +++++++++++++++++++++++++++++++++
1 files changed, 204 insertions(+), 0 deletions(-)
diff --git a/arch/arm/boot/dts/tegra20-ventana.dts b/arch/arm/boot/dts/tegra20-ventana.dts
index be90544..4ec6b4c 100644
--- a/arch/arm/boot/dts/tegra20-ventana.dts
+++ b/arch/arm/boot/dts/tegra20-ventana.dts
@@ -289,6 +289,156 @@
i2c@7000d000 {
status = "okay";
clock-frequency = <400000>;
+
+ pmic: tps6586x@34 {
+ compatible = "ti,tps6586x";
+ reg = <0x34>;
+ interrupts = <0 86 0x4>;
+
+ #gpio-cells = <2>;
+ gpio-controller;
+
+ sys-supply = <&vdd_5v0_reg>;
+ vin-sm0-supply = <&sys_reg>;
+ vin-sm1-supply = <&sys_reg>;
+ vin-sm2-supply = <&sys_reg>;
+ vinldo01-supply = <&sm2_reg>;
+ vinldo23-supply = <&sm2_reg>;
+ vinldo4-supply = <&sm2_reg>;
+ vinldo678-supply = <&sm2_reg>;
+ vinldo9-supply = <&sm2_reg>;
+
+ regulators {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ sys_reg: regulator@0 {
+ reg = <0>;
+ regulator-compatible = "sys";
+ regulator-name = "vdd_sys";
+ regulator-always-on;
+ };
+
+ regulator@1 {
+ reg = <1>;
+ regulator-compatible = "sm0";
+ regulator-name = "vdd_sm0,vdd_core";
+ regulator-min-microvolt = <1200000>;
+ regulator-max-microvolt = <1200000>;
+ regulator-always-on;
+ };
+
+ regulator@2 {
+ reg = <2>;
+ regulator-compatible = "sm1";
+ regulator-name = "vdd_sm1,vdd_cpu";
+ regulator-min-microvolt = <1000000>;
+ regulator-max-microvolt = <1000000>;
+ regulator-always-on;
+ };
+
+ sm2_reg: regulator@3 {
+ reg = <3>;
+ regulator-compatible = "sm2";
+ regulator-name = "vdd_sm2,vin_ldo*";
+ regulator-min-microvolt = <3700000>;
+ regulator-max-microvolt = <3700000>;
+ regulator-always-on;
+ };
+
+ /* LDO0 is not connected to anything */
+
+ regulator@5 {
+ reg = <5>;
+ regulator-compatible = "ldo1";
+ regulator-name = "vdd_ldo1,avdd_pll*";
+ regulator-min-microvolt = <1100000>;
+ regulator-max-microvolt = <1100000>;
+ regulator-always-on;
+ };
+
+ regulator@6 {
+ reg = <6>;
+ regulator-compatible = "ldo2";
+ regulator-name = "vdd_ldo2,vdd_rtc";
+ regulator-min-microvolt = <1200000>;
+ regulator-max-microvolt = <1200000>;
+ };
+
+ regulator@7 {
+ reg = <7>;
+ regulator-compatible = "ldo3";
+ regulator-name = "vdd_ldo3,avdd_usb*";
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ regulator-always-on;
+ };
+
+ regulator@8 {
+ reg = <8>;
+ regulator-compatible = "ldo4";
+ regulator-name = "vdd_ldo4,avdd_osc,vddio_sys";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ regulator-always-on;
+ };
+
+ regulator@9 {
+ reg = <9>;
+ regulator-compatible = "ldo5";
+ regulator-name = "vdd_ldo5,vcore_mmc";
+ regulator-min-microvolt = <2850000>;
+ regulator-max-microvolt = <2850000>;
+ regulator-always-on;
+ };
+
+ regulator@10 {
+ reg = <10>;
+ regulator-compatible = "ldo6";
+ regulator-name = "vdd_ldo6,avdd_vdac";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ };
+
+ regulator@11 {
+ reg = <11>;
+ regulator-compatible = "ldo7";
+ regulator-name = "vdd_ldo7,avdd_hdmi,vdd_fuse";
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ };
+
+ regulator@12 {
+ reg = <12>;
+ regulator-compatible = "ldo8";
+ regulator-name = "vdd_ldo8,avdd_hdmi_pll";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ };
+
+ regulator@13 {
+ reg = <13>;
+ regulator-compatible = "ldo9";
+ regulator-name = "vdd_ldo9,avdd_2v85,vdd_ddr_rx";
+ regulator-min-microvolt = <2850000>;
+ regulator-max-microvolt = <2850000>;
+ regulator-always-on;
+ };
+
+ regulator@14 {
+ reg = <14>;
+ regulator-compatible = "ldo_rtc";
+ regulator-name = "vdd_rtc_out,vdd_cell";
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ regulator-always-on;
+ };
+ };
+ };
+ };
+
+ pmc {
+ nvidia,invert-interrupt;
};
usb@c5000000 {
@@ -317,6 +467,60 @@
bus-width = <8>;
};
+ regulators {
+ compatible = "simple-bus";
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ vdd_5v0_reg: regulator@0 {
+ compatible = "regulator-fixed";
+ reg = <0>;
+ regulator-name = "vdd_5v0";
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+ regulator-always-on;
+ };
+
+ regulator@1 {
+ compatible = "regulator-fixed";
+ reg = <1>;
+ regulator-name = "vdd_1v5";
+ regulator-min-microvolt = <1500000>;
+ regulator-max-microvolt = <1500000>;
+ gpio = <&pmic 0 0>;
+ };
+
+ regulator@2 {
+ compatible = "regulator-fixed";
+ reg = <2>;
+ regulator-name = "vdd_1v2";
+ regulator-min-microvolt = <1200000>;
+ regulator-max-microvolt = <1200000>;
+ gpio = <&pmic 1 0>;
+ enable-active-high;
+ };
+
+ regulator@3 {
+ compatible = "regulator-fixed";
+ reg = <3>;
+ regulator-name = "vdd_pnl";
+ regulator-min-microvolt = <2800000>;
+ regulator-max-microvolt = <2800000>;
+ gpio = <&gpio 22 0>; /* gpio PC6 */
+ enable-active-high;
+ };
+
+ regulator@4 {
+ compatible = "regulator-fixed";
+ reg = <4>;
+ regulator-name = "vdd_bl";
+ regulator-min-microvolt = <2800000>;
+ regulator-max-microvolt = <2800000>;
+ gpio = <&gpio 176 0>; /* gpio PW0 */
+ enable-active-high;
+ };
+ };
+
sound {
compatible = "nvidia,tegra-audio-wm8903-ventana",
"nvidia,tegra-audio-wm8903";
--
1.7.0.4
^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH V3] ARM: dt: tegra: ventana: add regulators
[not found] ` <1344017356-29352-1-git-send-email-swarren-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
@ 2012-08-09 12:03 ` Laxman Dewangan
[not found] ` <5023A716.50807-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2012-08-10 16:51 ` Stephen Warren
1 sibling, 1 reply; 5+ messages in thread
From: Laxman Dewangan @ 2012-08-09 12:03 UTC (permalink / raw)
To: Stephen Warren
Cc: Olof Johansson, Colin Cross, Mark Brown,
linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org,
linux-tegra-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
Stephen Warren
On Friday 03 August 2012 11:39 PM, Stephen Warren wrote:
> From: Stephen Warren<swarren-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
>
> Ventana uses a TPS6586x regulator. Instantiate this, and hook up a
> couple of fixed GPIO-controlled regulators too.
>
> The data was chosen to match the PMIC HW defaults, with the following
> exception:
>
> ldo6: The HW default is 2.85v. The schematics are unlabelled. Internal
> research indicates that 1.8v is correct. Our downstream kernel also uses
> 1.8v.
>
> Portions based on work by Laxman Dewangan<ldewangan-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
>
> Signed-off-by: Stephen Warren<swarren-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
> ---
> v3:
> * Switch back to simple-bus compatible value for the /regulators node.
> * Added supply properties for all TPS6586x regulators.
> * Made SM* children of the new SYS regulator.
> * Removed ldo0 configuration, since it isn't used.
> v2:
> * Made all constraints match the HW defaults to avoid behavior changes,
> with exceptions noted above.
> * Removed vin-supply properties from LDO nodes; the driver and binding
> need to be updated to support specifying the parent regulators before
> we can put these into DT.
> * Rename vdd_pnl regulator-name to match schematic.
> * Added vdd_bl regulator.
> * Fix typo in regulator@3 reg property.
> * Use the enumerated-bus compatible value for the /regulators node.
> * Enhanced all regulator-name properties to list all signal names directly
> derived from the regulator pins.
> * Added ldo_rtc regulator.
> ---
Acked-by: Laxman Dewangan <ldewangan-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
You can addd my ACK for harmony dts file.
> arch/arm/boot/dts/tegra20-ventana.dts | 204 +++++++++++++++++++++++++++++++++
> 1 files changed, 204 insertions(+), 0 deletions(-)
>
> diff --git a/arch/arm/boot/dts/tegra20-ventana.dts b/arch/arm/boot/dts/tegra20-ventana.dts
> index be90544..4ec6b4c 100644
> --- a/arch/arm/boot/dts/tegra20-ventana.dts
> +++ b/arch/arm/boot/dts/tegra20-ventana.dts
> @@ -289,6 +289,156 @@
> i2c@7000d000 {
> status = "okay";
> clock-frequency =<400000>;
> +
> + pmic: tps6586x@34 {
> + compatible = "ti,tps6586x";
> + reg =<0x34>;
> + interrupts =<0 86 0x4>;
Should we say interrupt-controller also here?
> +
> + sys-supply =<&vdd_5v0_reg>;
> + vin-sm0-supply =<&sys_reg>;
> + vin-sm1-supply =<&sys_reg>;
> + vin-sm2-supply =<&sys_reg>;
This depends on two changes on tps6586x regulator which are not merged yet.
> +
> + pmc {
Should say status OK?
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH V3] ARM: dt: tegra: ventana: add regulators
[not found] ` <5023A716.50807-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
@ 2012-08-09 15:15 ` Stephen Warren
2012-08-09 18:04 ` Stephen Warren
1 sibling, 0 replies; 5+ messages in thread
From: Stephen Warren @ 2012-08-09 15:15 UTC (permalink / raw)
To: Laxman Dewangan
Cc: Olof Johansson, Colin Cross, Mark Brown,
linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org,
linux-tegra-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
Stephen Warren
On 08/09/2012 06:03 AM, Laxman Dewangan wrote:
> On Friday 03 August 2012 11:39 PM, Stephen Warren wrote:
>> From: Stephen Warren<swarren-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
>>
>> Ventana uses a TPS6586x regulator. Instantiate this, and hook up a
>> couple of fixed GPIO-controlled regulators too.
>>
>> The data was chosen to match the PMIC HW defaults, with the following
>> exception:
>>
>> ldo6: The HW default is 2.85v. The schematics are unlabelled. Internal
>> research indicates that 1.8v is correct. Our downstream kernel also uses
>> 1.8v.
>>
>> Portions based on work by Laxman Dewangan<ldewangan-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
...
>
> Acked-by: Laxman Dewangan <ldewangan-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
> You can addd my ACK for harmony dts file.
There is no Harmony patch; just Paz00, Ventana, Seaboard. I assume you
meant to ack Seaboard as well, not Harmony?
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH V3] ARM: dt: tegra: ventana: add regulators
[not found] ` <5023A716.50807-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2012-08-09 15:15 ` Stephen Warren
@ 2012-08-09 18:04 ` Stephen Warren
1 sibling, 0 replies; 5+ messages in thread
From: Stephen Warren @ 2012-08-09 18:04 UTC (permalink / raw)
To: Laxman Dewangan
Cc: Olof Johansson, Colin Cross, Mark Brown,
linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org,
linux-tegra-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
Stephen Warren
On 08/09/2012 06:03 AM, Laxman Dewangan wrote:
> On Friday 03 August 2012 11:39 PM, Stephen Warren wrote:
>> Ventana uses a TPS6586x regulator. Instantiate this, and hook up a
>> couple of fixed GPIO-controlled regulators too.
...
Sorry, I didn't look below at your other comments. Now responding...
>> + pmic: tps6586x@34 {
>> + compatible = "ti,tps6586x";
>> + reg =<0x34>;
>> + interrupts =<0 86 0x4>;
>
> Should we say interrupt-controller also here?
I don't think so; it looks like all the interrupts within this chip are
for things that should be handled completely internally to to driver
itself. Either way, there's certainly nothing attempting to use any
interrupts from this chip right now, so if we did need that property, we
could always add it if/when we added a client that needed it.
>> +
>> + sys-supply =<&vdd_5v0_reg>;
>> + vin-sm0-supply =<&sys_reg>;
>> + vin-sm1-supply =<&sys_reg>;
>> + vin-sm2-supply =<&sys_reg>;
>
> This depends on two changes on tps6586x regulator which are not merged yet.
Yes, I'm waiting for those changes to be merged before actually applying
this. However, there's no particular dependency; this patch simply won't
end up enabling the regulators until it's merged with the other patches,
so the .dts and regulator driver patches can go in through separate
trees OK.
>> + pmc {
>
> Should say status OK?
The default status is OK. Since the PMC is useful on all boards, it
isn't disabled in tegra30.dtsi; only board-specific things are disabled
in tegra30.dtsi (e.g. which I2C, MMC, I2S, ... ports are used is board
specific. Core SoC functionality isn't.)
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH V3] ARM: dt: tegra: ventana: add regulators
[not found] ` <1344017356-29352-1-git-send-email-swarren-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2012-08-09 12:03 ` Laxman Dewangan
@ 2012-08-10 16:51 ` Stephen Warren
1 sibling, 0 replies; 5+ messages in thread
From: Stephen Warren @ 2012-08-10 16:51 UTC (permalink / raw)
To: Olof Johansson, Colin Cross
Cc: Mark Brown, Laxman Dewangan,
linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r,
linux-tegra-u79uwXL29TY76Z2rM5mHXA, Stephen Warren
On 08/03/2012 12:09 PM, Stephen Warren wrote:
> Ventana uses a TPS6586x regulator. Instantiate this, and hook up a
> couple of fixed GPIO-controlled regulators too.
Applied to for-3.7/dt.
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2012-08-10 16:51 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-08-03 18:09 [PATCH V3] ARM: dt: tegra: ventana: add regulators Stephen Warren
[not found] ` <1344017356-29352-1-git-send-email-swarren-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2012-08-09 12:03 ` Laxman Dewangan
[not found] ` <5023A716.50807-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2012-08-09 15:15 ` Stephen Warren
2012-08-09 18:04 ` Stephen Warren
2012-08-10 16:51 ` Stephen Warren
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).