aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThomas Petazzoni <thomas.petazzoni@free-electrons.com>2015-12-22 15:28:42 +0100
committerGregory CLEMENT <gregory.clement@free-electrons.com>2016-02-09 10:59:58 +0100
commita8409c65df76033a496c2dbcec303a3a5e4afc3d (patch)
treed50bf131dbce83073090a991489d90030ed5f1c5
parent05abb9754b503dd39b31bc191fe87c7fca957f3e (diff)
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: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
-rw-r--r--arch/arm/boot/dts/armada-388-gp.dts16
1 files changed, 4 insertions, 12 deletions
diff --git a/arch/arm/boot/dts/armada-388-gp.dts b/arch/arm/boot/dts/armada-388-gp.dts
index bed4a80..ac3c944 100644
--- a/arch/arm/boot/dts/armada-388-gp.dts
+++ b/arch/arm/boot/dts/armada-388-gp.dts
@@ -309,7 +309,7 @@
regulator-min-microvolt = <12000000>;
regulator-max-microvolt = <12000000>;
enable-active-high;
- regulator-always-on;
+ regulator-boot-on;
gpio = <&expander0 2 GPIO_ACTIVE_HIGH>;
};
@@ -318,7 +318,6 @@
regulator-name = "v5.0-sata0";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
- regulator-always-on;
vin-supply = <&reg_sata0>;
};
@@ -327,7 +326,6 @@
regulator-name = "v12.0-sata0";
regulator-min-microvolt = <12000000>;
regulator-max-microvolt = <12000000>;
- regulator-always-on;
vin-supply = <&reg_sata0>;
};
@@ -337,7 +335,7 @@
regulator-min-microvolt = <12000000>;
regulator-max-microvolt = <12000000>;
enable-active-high;
- regulator-always-on;
+ regulator-boot-on;
gpio = <&expander0 3 GPIO_ACTIVE_HIGH>;
};
@@ -346,7 +344,6 @@
regulator-name = "v5.0-sata1";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
- regulator-always-on;
vin-supply = <&reg_sata1>;
};
@@ -355,7 +352,6 @@
regulator-name = "v12.0-sata1";
regulator-min-microvolt = <12000000>;
regulator-max-microvolt = <12000000>;
- regulator-always-on;
vin-supply = <&reg_sata1>;
};
@@ -363,7 +359,7 @@
compatible = "regulator-fixed";
regulator-name = "pwr_en_sata2";
enable-active-high;
- regulator-always-on;
+ regulator-boot-on;
gpio = <&expander0 11 GPIO_ACTIVE_HIGH>;
};
@@ -372,7 +368,6 @@
regulator-name = "v5.0-sata2";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
- regulator-always-on;
vin-supply = <&reg_sata2>;
};
@@ -381,7 +376,6 @@
regulator-name = "v12.0-sata2";
regulator-min-microvolt = <12000000>;
regulator-max-microvolt = <12000000>;
- regulator-always-on;
vin-supply = <&reg_sata2>;
};
@@ -389,7 +383,7 @@
compatible = "regulator-fixed";
regulator-name = "pwr_en_sata3";
enable-active-high;
- regulator-always-on;
+ regulator-boot-on;
gpio = <&expander0 12 GPIO_ACTIVE_HIGH>;
};
@@ -398,7 +392,6 @@
regulator-name = "v5.0-sata3";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
- regulator-always-on;
vin-supply = <&reg_sata3>;
};
@@ -407,7 +400,6 @@
regulator-name = "v12.0-sata3";
regulator-min-microvolt = <12000000>;
regulator-max-microvolt = <12000000>;
- regulator-always-on;
vin-supply = <&reg_sata3>;
};
};