[openwrt/openwrt] apm821xx: MBL: HDD regulators overhaul for MBL DUO

LEDE Commits lede-commits at lists.infradead.org
Fri Oct 22 12:28:12 PDT 2021


chunkeey pushed a commit to openwrt/openwrt.git, branch master:
https://git.openwrt.org/bbb38524011b44ff683638d66c3d197078727df1

commit bbb38524011b44ff683638d66c3d197078727df1
Author: Christian Lamparter <chunkeey at gmail.com>
AuthorDate: Fri Oct 15 21:30:58 2021 +0200

    apm821xx: MBL: HDD regulators overhaul for MBL DUO
    
    Takimata reported on the OpenWrt forum in thread [0], that his
    MyBook Live Duo wasn't booting OpenWrt 21.02 after upgrading
    from the previous OpenWrt 19.07.
    
    The last logged entries on his console
    
    |[    0.531599] sata1-regulator GPIO handle specifies active low - ignored
    |[    0.538391] sata0-regulator GPIO handle specifies active low - ignored
    |[    0.759791] ata2: SATA link down (SStatus 0 SControl 300)
    |[    0.765251] ata1: SATA link up 3.0 Gbps (SStatus 123 SControl 300)
    |[    5.909555] ata1.00: qc timeout (cmd 0xec)
    |[    5.913656] ata1.00: failed to IDENTIFY (I/O error, err_mask=0x4)
    |[    6.231757] ata1: SATA link down (SStatus 0 SControl 300)
    
    This extract clearly showed that the HDD on which OpenWrt is installed,
    simply disappeared after the SATA power regulators had been initialized.
    
    The reason why this worked with OpenWrt 19.07 was because the kernel
    config symbol CONFIG_REGULATOR=y was not set in the target's config-4.14.
    
    (This shows that the MBL Single does differ from the DUO in that
    it does not have programmable power regulators for the HDDs.)
    
    [0] <https://forum.openwrt.org/t/21-02-0-and-snapshot-fail-to-boot-on-my-book-live-duo/106585>
    
    Reported-by: Takimata (forum)
    Tested-by: Takimata (forum)
    Signed-off-by: Christian Lamparter <chunkeey at gmail.com>
---
 target/linux/apm821xx/dts/wd-mybooklive.dts | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/target/linux/apm821xx/dts/wd-mybooklive.dts b/target/linux/apm821xx/dts/wd-mybooklive.dts
index dcb8078050..bccf82fbaa 100644
--- a/target/linux/apm821xx/dts/wd-mybooklive.dts
+++ b/target/linux/apm821xx/dts/wd-mybooklive.dts
@@ -127,19 +127,23 @@
 	sata1pwr: sata1-regulator {
 		compatible = "regulator-fixed";
 		regulator-name = "Power Drive Port 1";
-		gpios = <&GPIO1 3 GPIO_ACTIVE_LOW>;
+		gpios = <&GPIO1 3 GPIO_ACTIVE_HIGH>;
 		regulator-min-microvolt = <12000000>;
 		regulator-max-microvolt = <12000000>;
+		regulator-boot-on;   /* uboot sets this */
 		regulator-always-on; /* needed to read OS from HDD */
+		enable-active-high;
 	};
 
 	sata0pwr: sata0-regulator {
 		compatible = "regulator-fixed";
 		regulator-name = "Power Drive Port 0";
-		gpios = <&GPIO1 7 GPIO_ACTIVE_LOW>;
+		gpios = <&GPIO1 7 GPIO_ACTIVE_HIGH>;
 		regulator-min-microvolt = <12000000>;
 		regulator-max-microvolt = <12000000>;
+		regulator-boot-on;   /* uboot sets this */
 		regulator-always-on; /* needed to read OS from HDD */
+		enable-active-high;
 	};
 };
 



More information about the lede-commits mailing list