My potato boots fine the first time after flashing the sdcard. However, after doing an initial upgrade, the root file system fails to mount and drops to initramfs. The cause appears to be that it takes over 100s for the sdcard to be detected. By this time the local-premount scripts have already run and failed.
- Not sure what’s causing the delay after the upgrade
- How can I get it to wait longer for the sdcard to be detected before it fails?
Need the exact messages. Probably a bad MicroSD card corrupting data.
Ok, 3rd brand new SD card: (different symptoms)
Used Win32 Disk Imager 1.0 (balena also works)
Image used: https://distro.libre.computer/ci/ubuntu/22.10/ubuntu-22.10-preinstalled-server-arm64%2Baml-s905x-cc.img.xz
In every case, i was unable to reboot. Whenever you see a sequence like:
I had to manually power cycle.
I restarted twice, then did the upgrade, then rebooted twice more. This time it didn’t fail to boot after the update, but i was never able to reboot safely.
I recognize that sequence from other boards when not even a bootloader is found.
log to large to post here. see gist
I get the same results with 22.04.1
Can you break it down step by step. It may make sense from the perspective you describe. However, from someone who doesn’t know your setup, I cannot discern the exact issue you are having.
If the board no longer boots at all after an update (no video), it is usually due to bad MicroSD card. The sectors holding the bootloader is usually never touched by deb package updates.
I don’t have a display hooked up, I’m just using the serial console.
- I write and verify the sd card
- I modify user-data and network-config as appropriate for my network
- I boot up the unit with the sd card installed, it boots successfully
- I issue a reboot command
- The system appears to shutdown but never restarts. I only have an infine loop of the sequence of messages in the form of
- If I manually remove power and then plug it back in, it successfully starts.
Previously, (which may be causing confusion) it would successfully reboot on command but only until I installed the software updates which includes firmware and kernel from the default repositories. At which point, the sd card would be delayed to be detected, causing rootfs to not be mounted.
I am on my third new sd card with the same exact images. The gist I linked above contains 4 cycles, separated by the sequence of messages i listed.
It is possibly because of SD UHS mode. Le Potato V1 has no way to turn off VCC (power) on the MicroSD card but does have a way to switch the IO voltage from 3.3V to 1.8V needed for UHS. When Linux boots, it switches the MicroSD card to UHS mode. The problem is that the SD spec requires VCC (power) to be turned off to go back to non-UHS mode (3.3V IO) which occurs when you reboot. Some MicroSD card will work fine but others will present problems since the state of the state machine is not in a spec compliant state.
There are two potential fixes for this:
- Disable MicroSD card UHS mode and stay on 3.3V. This will decrease performance. This can be done via an DT overlay with the delete-property flag to remove UHS support.
- Switch to a MicroSD card that supports non-poweroff return to non-UHS mode.
- Improved handling through our boot and Linux stack to improve compatibility. We will actively investigate this.