]> git.dujemihanovic.xyz Git - u-boot.git/commitdiff
power: regulator: rk8xx: Add 500us delay after LDO regulator is enabled
authorJonas Karlman <jonas@kwiboo.se>
Sun, 2 Jul 2023 12:41:15 +0000 (12:41 +0000)
committerKever Yang <kever.yang@rock-chips.com>
Mon, 31 Jul 2023 12:33:18 +0000 (20:33 +0800)
A quick power cycle of a LDO regulator during dw-mmc signal voltage
change has shown that SD-card does not always get recognized.

Linux driver use an enable_time of 400us for LDO regulators. Apply a
500us delay when a LDO regulator is enabled to fix possible issues.

Fixes: 94afc1cb466a ("power: regulator: rk8xx: update the driver for rk808 and rk818")
Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
Reviewed-by: elaine.zhang<elaine.zhang@rock-chips.com>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
drivers/power/regulator/rk8xx.c

index 0ee07ad299d779e6f34c3394bcbdb303fc0d7b81..e95640a39b0a59618f9ec9c9220e33c019b516ca 100644 (file)
@@ -12,6 +12,7 @@
 #include <dm.h>
 #include <errno.h>
 #include <log.h>
+#include <linux/delay.h>
 #include <power/rk8xx_pmic.h>
 #include <power/pmic.h>
 #include <power/regulator.h>
@@ -616,6 +617,9 @@ static int _ldo_set_enable(struct udevice *pmic, int ldo, bool enable)
                break;
        }
 
+       if (enable)
+               udelay(500);
+
        return ret;
 }