Commit a8409c65 authored by Thomas Petazzoni's avatar Thomas Petazzoni Committed by Gregory CLEMENT

ARM: dts: armada-38x: use regulator-boot-on for SATA regulators on Armada 388 GP

Really, what we meant by regulator-always-on is that the regulators
are already turned on by the bootloader, for which regulator-boot-on
is a better description.

A net advantage of using regulator-boot-on is that the regulator is
not touched at boot time by the kernel, which avoids having the hard
drives spinning down and then up again, taking several (~5) seconds of
additional boot time.

In addition, there is no need to have such properties on the child
regulators used for SATA. Having it on the parent regulator that
really controls the GPIO is sufficient.

Without the patch:

[    3.945866] ata2: SATA link down (SStatus 0 SControl 300)
[    3.995862] ata3: SATA link down (SStatus 0 SControl 300)
[    4.005863] ata4: SATA link down (SStatus 0 SControl 300)
[    9.125861] ata1: SATA link up 3.0 Gbps (SStatus 123 SControl 300)
[    9.144575] ata1.00: ATA-8: WDC WD5003ABYX-01WERA1, 01.01S02, max UDMA/133
[    9.151471] ata1.00: 976773168 sectors, multi 0: LBA48 NCQ (depth 31/32)

 (and you can hear the disk spinning down and up during this 5.1
 seconds delay)

With the patch:

[    3.945988] ata2: SATA link down (SStatus 0 SControl 300)
[    4.005980] ata4: SATA link down (SStatus 0 SControl 300)
[    4.011404] ata3: SATA link down (SStatus 0 SControl 300)
[    4.145978] ata1: SATA link up 3.0 Gbps (SStatus 123 SControl 300)
[    4.153701] ata1.00: ATA-8: WDC WD5003ABYX-01WERA1, 01.01S02, max UDMA/133
[    4.160597] ata1.00: 976773168 sectors, multi 0: LBA48 NCQ (depth 31/32)
Signed-off-by: default avatarThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: default avatarGregory CLEMENT <gregory.clement@free-electrons.com>
parent 05abb975
...@@ -309,7 +309,7 @@ reg_sata0: pwr-sata0 { ...@@ -309,7 +309,7 @@ reg_sata0: pwr-sata0 {
regulator-min-microvolt = <12000000>; regulator-min-microvolt = <12000000>;
regulator-max-microvolt = <12000000>; regulator-max-microvolt = <12000000>;
enable-active-high; enable-active-high;
regulator-always-on; regulator-boot-on;
gpio = <&expander0 2 GPIO_ACTIVE_HIGH>; gpio = <&expander0 2 GPIO_ACTIVE_HIGH>;
}; };
...@@ -318,7 +318,6 @@ reg_5v_sata0: v5-sata0 { ...@@ -318,7 +318,6 @@ reg_5v_sata0: v5-sata0 {
regulator-name = "v5.0-sata0"; regulator-name = "v5.0-sata0";
regulator-min-microvolt = <5000000>; regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>; regulator-max-microvolt = <5000000>;
regulator-always-on;
vin-supply = <&reg_sata0>; vin-supply = <&reg_sata0>;
}; };
...@@ -327,7 +326,6 @@ reg_12v_sata0: v12-sata0 { ...@@ -327,7 +326,6 @@ reg_12v_sata0: v12-sata0 {
regulator-name = "v12.0-sata0"; regulator-name = "v12.0-sata0";
regulator-min-microvolt = <12000000>; regulator-min-microvolt = <12000000>;
regulator-max-microvolt = <12000000>; regulator-max-microvolt = <12000000>;
regulator-always-on;
vin-supply = <&reg_sata0>; vin-supply = <&reg_sata0>;
}; };
...@@ -337,7 +335,7 @@ reg_sata1: pwr-sata1 { ...@@ -337,7 +335,7 @@ reg_sata1: pwr-sata1 {
regulator-min-microvolt = <12000000>; regulator-min-microvolt = <12000000>;
regulator-max-microvolt = <12000000>; regulator-max-microvolt = <12000000>;
enable-active-high; enable-active-high;
regulator-always-on; regulator-boot-on;
gpio = <&expander0 3 GPIO_ACTIVE_HIGH>; gpio = <&expander0 3 GPIO_ACTIVE_HIGH>;
}; };
...@@ -346,7 +344,6 @@ reg_5v_sata1: v5-sata1 { ...@@ -346,7 +344,6 @@ reg_5v_sata1: v5-sata1 {
regulator-name = "v5.0-sata1"; regulator-name = "v5.0-sata1";
regulator-min-microvolt = <5000000>; regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>; regulator-max-microvolt = <5000000>;
regulator-always-on;
vin-supply = <&reg_sata1>; vin-supply = <&reg_sata1>;
}; };
...@@ -355,7 +352,6 @@ reg_12v_sata1: v12-sata1 { ...@@ -355,7 +352,6 @@ reg_12v_sata1: v12-sata1 {
regulator-name = "v12.0-sata1"; regulator-name = "v12.0-sata1";
regulator-min-microvolt = <12000000>; regulator-min-microvolt = <12000000>;
regulator-max-microvolt = <12000000>; regulator-max-microvolt = <12000000>;
regulator-always-on;
vin-supply = <&reg_sata1>; vin-supply = <&reg_sata1>;
}; };
...@@ -363,7 +359,7 @@ reg_sata2: pwr-sata2 { ...@@ -363,7 +359,7 @@ reg_sata2: pwr-sata2 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
regulator-name = "pwr_en_sata2"; regulator-name = "pwr_en_sata2";
enable-active-high; enable-active-high;
regulator-always-on; regulator-boot-on;
gpio = <&expander0 11 GPIO_ACTIVE_HIGH>; gpio = <&expander0 11 GPIO_ACTIVE_HIGH>;
}; };
...@@ -372,7 +368,6 @@ reg_5v_sata2: v5-sata2 { ...@@ -372,7 +368,6 @@ reg_5v_sata2: v5-sata2 {
regulator-name = "v5.0-sata2"; regulator-name = "v5.0-sata2";
regulator-min-microvolt = <5000000>; regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>; regulator-max-microvolt = <5000000>;
regulator-always-on;
vin-supply = <&reg_sata2>; vin-supply = <&reg_sata2>;
}; };
...@@ -381,7 +376,6 @@ reg_12v_sata2: v12-sata2 { ...@@ -381,7 +376,6 @@ reg_12v_sata2: v12-sata2 {
regulator-name = "v12.0-sata2"; regulator-name = "v12.0-sata2";
regulator-min-microvolt = <12000000>; regulator-min-microvolt = <12000000>;
regulator-max-microvolt = <12000000>; regulator-max-microvolt = <12000000>;
regulator-always-on;
vin-supply = <&reg_sata2>; vin-supply = <&reg_sata2>;
}; };
...@@ -389,7 +383,7 @@ reg_sata3: pwr-sata3 { ...@@ -389,7 +383,7 @@ reg_sata3: pwr-sata3 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
regulator-name = "pwr_en_sata3"; regulator-name = "pwr_en_sata3";
enable-active-high; enable-active-high;
regulator-always-on; regulator-boot-on;
gpio = <&expander0 12 GPIO_ACTIVE_HIGH>; gpio = <&expander0 12 GPIO_ACTIVE_HIGH>;
}; };
...@@ -398,7 +392,6 @@ reg_5v_sata3: v5-sata3 { ...@@ -398,7 +392,6 @@ reg_5v_sata3: v5-sata3 {
regulator-name = "v5.0-sata3"; regulator-name = "v5.0-sata3";
regulator-min-microvolt = <5000000>; regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>; regulator-max-microvolt = <5000000>;
regulator-always-on;
vin-supply = <&reg_sata3>; vin-supply = <&reg_sata3>;
}; };
...@@ -407,7 +400,6 @@ reg_12v_sata3: v12-sata3 { ...@@ -407,7 +400,6 @@ reg_12v_sata3: v12-sata3 {
regulator-name = "v12.0-sata3"; regulator-name = "v12.0-sata3";
regulator-min-microvolt = <12000000>; regulator-min-microvolt = <12000000>;
regulator-max-microvolt = <12000000>; regulator-max-microvolt = <12000000>;
regulator-always-on;
vin-supply = <&reg_sata3>; vin-supply = <&reg_sata3>;
}; };
}; };
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment