From: Gregory CLEMENT <gregory.clement@free-electrons.com>
To: Hans de Goede <hdegoede@redhat.com>, Tejun Heo <tj@kernel.org>,
linux-ide@vger.kernel.org, linux-kernel@vger.kernel.org
Cc: "Antoine Ténart" <antoine.tenart@free-electrons.com>,
"Liam Girdwood" <lgirdwood@gmail.com>,
"Mark Brown" <broonie@kernel.org>,
"Thomas Petazzoni" <thomas.petazzoni@free-electrons.com>,
"Ezequiel Garcia" <ezequiel.garcia@free-electrons.com>,
"Maxime Ripard" <maxime.ripard@free-electrons.com>,
"Boris BREZILLON" <boris.brezillon@free-electrons.com>,
"Jason Cooper" <jason@lakedaemon.net>,
"Andrew Lunn" <andrew@lunn.ch>,
"Sebastian Hesselbarth" <sebastian.hesselbarth@gmail.com>,
linux-arm-kernel@lists.infradead.org,
"Lior Amsalem" <alior@marvell.com>,
"Tawfik Bayouk" <tawfik@marvell.com>,
"Nadav Haklai" <nadavh@marvell.com>,
"Mark Rutland" <mark.rutland@arm.com>,
devicetree@vger.kernel.org
Subject: Re: [PATCH v4 4/4] ARM: mvebu: Armada 385 GP: Add regulators to the SATA port
Date: Fri, 16 Jan 2015 10:27:23 +0100 [thread overview]
Message-ID: <54B8D97B.3090908@free-electrons.com> (raw)
In-Reply-To: <54B8C933.7020502@redhat.com>
Hi Hans,
On 16/01/2015 09:17, Hans de Goede wrote:
> Hi,
>
> On 15-01-15 15:09, Gregory CLEMENT wrote:
>> Add the regulators to each SATA port.
>>
>> Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
>> ---
>> arch/arm/boot/dts/armada-388-gp.dts | 126 ++++++++++++++++++++++++++++++++++++
>> 1 file changed, 126 insertions(+)
>>
>> diff --git a/arch/arm/boot/dts/armada-388-gp.dts b/arch/arm/boot/dts/armada-388-gp.dts
>> index 4df22bf91683..590b383db323 100644
>> --- a/arch/arm/boot/dts/armada-388-gp.dts
>> +++ b/arch/arm/boot/dts/armada-388-gp.dts
>> @@ -173,6 +173,16 @@
>> status = "okay";
>> #address-cells = <1>;
>> #size-cells = <0>;
>> +
>> + sata0: sata-port@0 {
>> + reg = <0>;
>> + target-supply = <®_5v_sata0>;
>> + };
>> +
>> + sata1: sata-port@1 {
>> + reg = <1>;
>> + target-supply = <®_5v_sata1>;
>> + };
>> };
>>
>> sata@e0000 {
>> @@ -181,6 +191,16 @@
>> status = "okay";
>> #address-cells = <1>;
>> #size-cells = <0>;
>> +
>> + sata2: sata-port@0 {
>> + reg = <0>;
>> + target-supply = <®_5v_sata2>;
>> + };
>> +
>> + sata3: sata-port@1 {
>> + reg = <1>;
>> + target-supply = <®_5v_sata3>;
>> + };
>> };
>>
>> sdhci@d8000 {
>> @@ -278,6 +298,112 @@
>> regulator-always-on;
>> gpio = <&expander0 4 GPIO_ACTIVE_HIGH>;
>> };
>> +
>> + reg_sata0: pwr-sata0 {
>> + compatible = "regulator-fixed";
>> + regulator-name = "pwr_en_sata0";
>> + enable-active-high;
>> + regulator-always-on;
>> +
>> + };
>> +
>> + reg_5v_sata0: v5-sata0 {
>> + compatible = "regulator-fixed";
>> + regulator-name = "v5.0-sata0";
>> + regulator-min-microvolt = <5000000>;
>> + regulator-max-microvolt = <5000000>;
>> + regulator-always-on;
>> + vin-supply = <®_sata0>;
>> + };
>> +
>> + reg_12v_sata0: v12-sata0 {
>> + compatible = "regulator-fixed";
>> + regulator-name = "v12.0-sata0";
>> + regulator-min-microvolt = <12000000>;
>> + regulator-max-microvolt = <12000000>;
>> + regulator-always-on;
>> + vin-supply = <®_sata0>;
>> + };
>
> AFAIK the separate v5 / 12v regulators you're creating here
> are not used anywhere. So I guess there just here to
> accurately / completely describe the power topology ?
Yes it was the point.
>
>> +
>> + reg_sata1: pwr-sata1 {
>> + regulator-name = "pwr_en_sata1";
>> + compatible = "regulator-fixed";
>> + regulator-min-microvolt = <12000000>;
>> + regulator-max-microvolt = <12000000>;
>> + enable-active-high;
>> + regulator-always-on;
>
>
> The always on here seems to a bit weird, wasn't the
> whole purpose of this patch set to teach ahci_platform
> to turn it on as needed ?
Maybe I misunderstood the regulator binding, but I thought
that (once the suspend will be available on this platform) I
could use:
regulator-state-mem {
regulator-off-in-suspend;
};
>
> You do probably want to put a regulator-boot-on here so
> that disks do not get an unwanted powercycle (bad for
> their lifetime) when the firmware has already turned on
> the disk. Downside of using regulator-boot-on is that if
> the power is not actually turned on no power-on-delay is
That's why I didn't use it
> done, but we're not using a power on delay anyways.
But if regulator-always-on prevent to switch it off in
suspend then yes using regulator-boot-on is better.
Thanks,
Gregory
>
> The same goes for reg_sata2 & reg_sata3.
>
>> + gpio = <&expander0 3 GPIO_ACTIVE_HIGH>;
>> + };
>> +
>> + reg_5v_sata1: v5-sata1 {
>> + compatible = "regulator-fixed";
>> + regulator-name = "v5.0-sata1";
>> + regulator-min-microvolt = <5000000>;
>> + regulator-max-microvolt = <5000000>;
>> + regulator-always-on;
>> + vin-supply = <®_sata1>;
>> + };
>> +
>> + reg_12v_sata1: v12-sata1 {
>> + compatible = "regulator-fixed";
>> + regulator-name = "v12.0-sata1";
>> + regulator-min-microvolt = <12000000>;
>> + regulator-max-microvolt = <12000000>;
>> + regulator-always-on;
>> + vin-supply = <®_sata1>;
>> + };
>> +
>> + reg_sata2: pwr-sata2 {
>> + compatible = "regulator-fixed";
>> + regulator-name = "pwr_en_sata2";
>> + enable-active-high;
>> + regulator-always-on;
>> + gpio = <&expander0 11 GPIO_ACTIVE_HIGH>;
>> + };
>> +
>> + reg_5v_sata2: v5-sata2 {
>> + compatible = "regulator-fixed";
>> + regulator-name = "v5.0-sata2";
>> + regulator-min-microvolt = <5000000>;
>> + regulator-max-microvolt = <5000000>;
>> + regulator-always-on;
>> + vin-supply = <®_sata2>;
>> + };
>> +
>> + reg_12v_sata2: v12-sata2 {
>> + compatible = "regulator-fixed";
>> + regulator-name = "v12.0-sata2";
>> + regulator-min-microvolt = <12000000>;
>> + regulator-max-microvolt = <12000000>;
>> + regulator-always-on;
>> + vin-supply = <®_sata2>;
>> + };
>> +
>> + reg_sata3: pwr-sata3 {
>> + compatible = "regulator-fixed";
>> + regulator-name = "pwr_en_sata3";
>> + enable-active-high;
>> + regulator-always-on;
>> + gpio = <&expander0 12 GPIO_ACTIVE_HIGH>;
>> + };
>> +
>> + reg_5v_sata3: v5-sata3 {
>> + compatible = "regulator-fixed";
>> + regulator-name = "v5.0-sata3";
>> + regulator-min-microvolt = <5000000>;
>> + regulator-max-microvolt = <5000000>;
>> + regulator-always-on;
>> + vin-supply = <®_sata3>;
>> + };
>> +
>> + reg_12v_sata3: v12-sata3 {
>> + compatible = "regulator-fixed";
>> + regulator-name = "v12.0-sata3";
>> + regulator-min-microvolt = <12000000>;
>> + regulator-max-microvolt = <12000000>;
>> + regulator-always-on;
>> + vin-supply = <®_sata3>;
>> + };
>> };
>>
>> &pinctrl {
>>
>
> Regards,
>
> Hans
>
--
Gregory Clement, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com
WARNING: multiple messages have this Message-ID (diff)
From: gregory.clement@free-electrons.com (Gregory CLEMENT)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v4 4/4] ARM: mvebu: Armada 385 GP: Add regulators to the SATA port
Date: Fri, 16 Jan 2015 10:27:23 +0100 [thread overview]
Message-ID: <54B8D97B.3090908@free-electrons.com> (raw)
In-Reply-To: <54B8C933.7020502@redhat.com>
Hi Hans,
On 16/01/2015 09:17, Hans de Goede wrote:
> Hi,
>
> On 15-01-15 15:09, Gregory CLEMENT wrote:
>> Add the regulators to each SATA port.
>>
>> Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
>> ---
>> arch/arm/boot/dts/armada-388-gp.dts | 126 ++++++++++++++++++++++++++++++++++++
>> 1 file changed, 126 insertions(+)
>>
>> diff --git a/arch/arm/boot/dts/armada-388-gp.dts b/arch/arm/boot/dts/armada-388-gp.dts
>> index 4df22bf91683..590b383db323 100644
>> --- a/arch/arm/boot/dts/armada-388-gp.dts
>> +++ b/arch/arm/boot/dts/armada-388-gp.dts
>> @@ -173,6 +173,16 @@
>> status = "okay";
>> #address-cells = <1>;
>> #size-cells = <0>;
>> +
>> + sata0: sata-port at 0 {
>> + reg = <0>;
>> + target-supply = <®_5v_sata0>;
>> + };
>> +
>> + sata1: sata-port at 1 {
>> + reg = <1>;
>> + target-supply = <®_5v_sata1>;
>> + };
>> };
>>
>> sata at e0000 {
>> @@ -181,6 +191,16 @@
>> status = "okay";
>> #address-cells = <1>;
>> #size-cells = <0>;
>> +
>> + sata2: sata-port at 0 {
>> + reg = <0>;
>> + target-supply = <®_5v_sata2>;
>> + };
>> +
>> + sata3: sata-port at 1 {
>> + reg = <1>;
>> + target-supply = <®_5v_sata3>;
>> + };
>> };
>>
>> sdhci at d8000 {
>> @@ -278,6 +298,112 @@
>> regulator-always-on;
>> gpio = <&expander0 4 GPIO_ACTIVE_HIGH>;
>> };
>> +
>> + reg_sata0: pwr-sata0 {
>> + compatible = "regulator-fixed";
>> + regulator-name = "pwr_en_sata0";
>> + enable-active-high;
>> + regulator-always-on;
>> +
>> + };
>> +
>> + reg_5v_sata0: v5-sata0 {
>> + compatible = "regulator-fixed";
>> + regulator-name = "v5.0-sata0";
>> + regulator-min-microvolt = <5000000>;
>> + regulator-max-microvolt = <5000000>;
>> + regulator-always-on;
>> + vin-supply = <®_sata0>;
>> + };
>> +
>> + reg_12v_sata0: v12-sata0 {
>> + compatible = "regulator-fixed";
>> + regulator-name = "v12.0-sata0";
>> + regulator-min-microvolt = <12000000>;
>> + regulator-max-microvolt = <12000000>;
>> + regulator-always-on;
>> + vin-supply = <®_sata0>;
>> + };
>
> AFAIK the separate v5 / 12v regulators you're creating here
> are not used anywhere. So I guess there just here to
> accurately / completely describe the power topology ?
Yes it was the point.
>
>> +
>> + reg_sata1: pwr-sata1 {
>> + regulator-name = "pwr_en_sata1";
>> + compatible = "regulator-fixed";
>> + regulator-min-microvolt = <12000000>;
>> + regulator-max-microvolt = <12000000>;
>> + enable-active-high;
>> + regulator-always-on;
>
>
> The always on here seems to a bit weird, wasn't the
> whole purpose of this patch set to teach ahci_platform
> to turn it on as needed ?
Maybe I misunderstood the regulator binding, but I thought
that (once the suspend will be available on this platform) I
could use:
regulator-state-mem {
regulator-off-in-suspend;
};
>
> You do probably want to put a regulator-boot-on here so
> that disks do not get an unwanted powercycle (bad for
> their lifetime) when the firmware has already turned on
> the disk. Downside of using regulator-boot-on is that if
> the power is not actually turned on no power-on-delay is
That's why I didn't use it
> done, but we're not using a power on delay anyways.
But if regulator-always-on prevent to switch it off in
suspend then yes using regulator-boot-on is better.
Thanks,
Gregory
>
> The same goes for reg_sata2 & reg_sata3.
>
>> + gpio = <&expander0 3 GPIO_ACTIVE_HIGH>;
>> + };
>> +
>> + reg_5v_sata1: v5-sata1 {
>> + compatible = "regulator-fixed";
>> + regulator-name = "v5.0-sata1";
>> + regulator-min-microvolt = <5000000>;
>> + regulator-max-microvolt = <5000000>;
>> + regulator-always-on;
>> + vin-supply = <®_sata1>;
>> + };
>> +
>> + reg_12v_sata1: v12-sata1 {
>> + compatible = "regulator-fixed";
>> + regulator-name = "v12.0-sata1";
>> + regulator-min-microvolt = <12000000>;
>> + regulator-max-microvolt = <12000000>;
>> + regulator-always-on;
>> + vin-supply = <®_sata1>;
>> + };
>> +
>> + reg_sata2: pwr-sata2 {
>> + compatible = "regulator-fixed";
>> + regulator-name = "pwr_en_sata2";
>> + enable-active-high;
>> + regulator-always-on;
>> + gpio = <&expander0 11 GPIO_ACTIVE_HIGH>;
>> + };
>> +
>> + reg_5v_sata2: v5-sata2 {
>> + compatible = "regulator-fixed";
>> + regulator-name = "v5.0-sata2";
>> + regulator-min-microvolt = <5000000>;
>> + regulator-max-microvolt = <5000000>;
>> + regulator-always-on;
>> + vin-supply = <®_sata2>;
>> + };
>> +
>> + reg_12v_sata2: v12-sata2 {
>> + compatible = "regulator-fixed";
>> + regulator-name = "v12.0-sata2";
>> + regulator-min-microvolt = <12000000>;
>> + regulator-max-microvolt = <12000000>;
>> + regulator-always-on;
>> + vin-supply = <®_sata2>;
>> + };
>> +
>> + reg_sata3: pwr-sata3 {
>> + compatible = "regulator-fixed";
>> + regulator-name = "pwr_en_sata3";
>> + enable-active-high;
>> + regulator-always-on;
>> + gpio = <&expander0 12 GPIO_ACTIVE_HIGH>;
>> + };
>> +
>> + reg_5v_sata3: v5-sata3 {
>> + compatible = "regulator-fixed";
>> + regulator-name = "v5.0-sata3";
>> + regulator-min-microvolt = <5000000>;
>> + regulator-max-microvolt = <5000000>;
>> + regulator-always-on;
>> + vin-supply = <®_sata3>;
>> + };
>> +
>> + reg_12v_sata3: v12-sata3 {
>> + compatible = "regulator-fixed";
>> + regulator-name = "v12.0-sata3";
>> + regulator-min-microvolt = <12000000>;
>> + regulator-max-microvolt = <12000000>;
>> + regulator-always-on;
>> + vin-supply = <®_sata3>;
>> + };
>> };
>>
>> &pinctrl {
>>
>
> Regards,
>
> Hans
>
--
Gregory Clement, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com
next prev parent reply other threads:[~2015-01-16 9:27 UTC|newest]
Thread overview: 53+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-01-15 14:09 [PATCH v4 0/4] ata: libahci: Allow using a regulator for each port Gregory CLEMENT
2015-01-15 14:09 ` Gregory CLEMENT
2015-01-15 14:09 ` [PATCH v4 1/4] ata: libahci: Clean-up the ahci_platform_en/disable_phys functions Gregory CLEMENT
2015-01-15 14:09 ` Gregory CLEMENT
2015-01-15 14:09 ` [PATCH v4 2/4] Documentation: bindings: Add the regulator property to the sub-nodes AHCI bindings Gregory CLEMENT
2015-01-15 14:09 ` Gregory CLEMENT
2015-01-15 14:09 ` [PATCH v4 3/4] ata: libahci: Allow using multiple regulators Gregory CLEMENT
2015-01-15 14:09 ` Gregory CLEMENT
2015-01-15 14:09 ` [PATCH v4 4/4] ARM: mvebu: Armada 385 GP: Add regulators to the SATA port Gregory CLEMENT
2015-01-15 14:09 ` Gregory CLEMENT
2015-01-16 8:17 ` Hans de Goede
2015-01-16 8:17 ` Hans de Goede
2015-01-16 9:27 ` Gregory CLEMENT [this message]
2015-01-16 9:27 ` Gregory CLEMENT
2015-01-16 10:10 ` Hans de Goede
2015-01-16 10:10 ` Hans de Goede
2015-01-16 12:37 ` Mark Brown
2015-01-16 12:37 ` Mark Brown
2015-01-16 14:27 ` Gregory CLEMENT
2015-01-16 14:27 ` Gregory CLEMENT
[not found] ` <54B91FB4.5080707-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8@public.gmane.org>
2015-01-16 15:34 ` Mark Brown
2015-01-16 15:34 ` Mark Brown
2015-01-16 15:34 ` Mark Brown
2015-01-16 19:13 ` Hans de Goede
2015-01-16 19:13 ` Hans de Goede
2015-01-16 19:44 ` Mark Brown
2015-01-16 19:44 ` Mark Brown
2015-01-16 19:12 ` Hans de Goede
2015-01-16 19:12 ` Hans de Goede
[not found] ` <54B9629C.9090800-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2015-01-16 20:25 ` Mark Brown
2015-01-16 20:25 ` Mark Brown
2015-01-16 20:25 ` Mark Brown
2015-01-17 8:48 ` Hans de Goede
2015-01-17 8:48 ` Hans de Goede
[not found] ` <54BA21F9.5050408-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2015-01-17 13:14 ` Mark Brown
2015-01-17 13:14 ` Mark Brown
2015-01-17 13:14 ` Mark Brown
2015-01-17 14:28 ` Hans de Goede
2015-01-17 14:28 ` Hans de Goede
[not found] ` <54BA7197.40301-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2015-01-18 12:35 ` Mark Brown
2015-01-18 12:35 ` Mark Brown
2015-01-18 12:35 ` Mark Brown
2015-01-18 15:29 ` Hans de Goede
2015-01-18 15:29 ` Hans de Goede
2015-01-18 19:28 ` Mark Brown
2015-01-18 19:28 ` Mark Brown
[not found] ` <1421330978-9694-1-git-send-email-gregory.clement-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8@public.gmane.org>
2015-01-16 7:58 ` [PATCH v4 0/4] ata: libahci: Allow using a regulator for each port Hans de Goede
2015-01-16 7:58 ` Hans de Goede
2015-01-16 7:58 ` Hans de Goede
2015-01-19 14:54 ` Tejun Heo
2015-01-19 14:54 ` Tejun Heo
2015-01-19 15:05 ` Andrew Lunn
2015-01-19 15:05 ` Andrew Lunn
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=54B8D97B.3090908@free-electrons.com \
--to=gregory.clement@free-electrons.com \
--cc=alior@marvell.com \
--cc=andrew@lunn.ch \
--cc=antoine.tenart@free-electrons.com \
--cc=boris.brezillon@free-electrons.com \
--cc=broonie@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=ezequiel.garcia@free-electrons.com \
--cc=hdegoede@redhat.com \
--cc=jason@lakedaemon.net \
--cc=lgirdwood@gmail.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-ide@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mark.rutland@arm.com \
--cc=maxime.ripard@free-electrons.com \
--cc=nadavh@marvell.com \
--cc=sebastian.hesselbarth@gmail.com \
--cc=tawfik@marvell.com \
--cc=thomas.petazzoni@free-electrons.com \
--cc=tj@kernel.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.