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 <xrup...@gmail.com> --- 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. G12B:BL:6e7c85:7898ac;FEAT:E0F83180:2000;POC:F;RCY:0; EMMC:800;NAND:81;SD?:0;SD:400;USB:8;LOOP:1;EMMC:800; NAND:81;SD?:0;SD:400;USB:8;LOOP:2;EMMC:800;NAND:81; 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>; enable-active-high; + regulator-always-on; }; tf_io: gpio-regulator-tf_io { -- 2.21.0