[PATCH] arm64: dts: meson: odroid-n2: keep SD card regulator always on

From: Xavier Ruppen
Date: Fri Jul 19 2019 - 15:29:58 EST

When powering off the Odroid N2, the tflash_vdd regulator is
automatically turned off by the kernel. This is a problem
when issuing the "reboot" command while using an SD card.
The boot ROM does not power this regulator back on, blocking
the reboot process at the boot ROM stage, preventing the
SD card from being detected.

Adding the "regulator-always-on" property fixes the problem.

Signed-off-by: Xavier Ruppen <xruppen@xxxxxxxxx>

Here is what the boot ROM output looks like without this patch:

[root@alarm ~]# reboot
[ 24.275860] shutdown[1]: All loop devices detached.
[ 24.278864] shutdown[1]: Detaching DM devices.
[ 24.287105] kvm: exiting hardware virtualization
[ 24.318776] reboot: Restarting system
bl31 reboot reason: 0xd
bl31 reboot reason: 0x0
system cmd 1.
SD?:0;SD:400;USB:8;LOOP:3; [...]

Other people can be seen having this problem on the odroid
forum [1].

The cause of the problem was found by Martin Blumenstingl
on #linux-amlogic. We may want to add his Suggested-by tag
if he agrees.

[1] https://forum.odroid.com/viewtopic.php?f=176&t=33993

arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dts | 1 +
1 file changed, 1 insertion(+)

diff --git a/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dts b/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dts
index 81780ffcc7f0..4e916e1f71f7 100644
--- a/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dts
@@ -53,6 +53,7 @@

gpio = <&gpio_ao GPIOAO_8 GPIO_ACTIVE_HIGH>;
+ regulator-always-on;

tf_io: gpio-regulator-tf_io {