PINE64
PinePhone Beta Edition will not boot from MicroSD card - Printable Version

+- PINE64 (https://forum.pine64.org)
+-- Forum: PinePhone (https://forum.pine64.org/forumdisplay.php?fid=120)
+--- Forum: PinePhone Hardware (https://forum.pine64.org/forumdisplay.php?fid=122)
+--- Thread: PinePhone Beta Edition will not boot from MicroSD card (/showthread.php?tid=13775)

Pages: 1 2 3


PinePhone Beta Edition will not boot from MicroSD card - Timothy_Ecc - 05-02-2021

My PinePhone will boot from the eMMC, but will not boot from a MicroSD card that boots in another PinePhone.

I asked about this over in the software section, but am wondering if it could be a hardware problem. Here is a link to that post: https://forum.pine64.org/showthread.php?tid=13703

Before anyone asks, I have the card in the upper slot, I have made sure there is nothing visibly interfering with the card making contact, and I have tried three different cards. All three of the cards will boot in my friends Beta Edition PinePhone, but none of them will boot in my PinePhone.

When I attempt to boot I get a solid red notification LED and the phone never finishes booting.

I just tested booting with a MicroSD installed and no OS on the card. The phone booted to the eMMC as I would expect, and I was able to access the MicroSD card. Would this indicate an issue with the boot loader? If so, how do I re-flash the boot loader?

Thank you for any suggestions.

Timothy


RE: PinePhone Beta Edition will not boot from MicroSD card - Timothy_Ecc - 05-02-2021

Here is what I get from the serial console when I try to boot from a MicroSD card that works in another Beta Edition PinePhone:

U-Boot SPL 2021.01-rc4-0 (Mar 29 2021 - 14:39:18 +0000)
DRAM: 3072 MiB
Trying to boot from MMC1
MMC: no card present
spl: mmc init failed with error: -123
SPL: failed to boot from all boot devices
### ERROR ### Please RESET the board ###


RE: PinePhone Beta Edition will not boot from MicroSD card - 8bit - 05-02-2021

Just guessing. SD cards have a 1bit and 4bit mode for data transfer. One of the 3 additional pins needed for 4bit mode may be damaged. Maybe U-Boot wants to use 4bit mode and fails to initialize. Take a look at the spring contacts in the socket for anything bent.

Pretty sure U-Boot is running off the SD card so it is reading it. The date in your serial output is recent. Try flashing an older image and see if the date changes.


RE: PinePhone Beta Edition will not boot from MicroSD card - Timothy_Ecc - 05-04-2021

Interesting, thanks for the suggestion. As far as I can tell there is nothing wrong with the pins, but take a look at the image below and see what you think.

Just tried with Manjaro-ARM-phosh-pinephone-beta6 and got more or less the same result. It does indeed appear that U-Boot is running off the card, but it doesn't get any farther. This image also booted just fine in the other PinePhone.

To me this seems to point to a hardware problem.

U-Boot SPL 2020.07-rc4-11.2 (Jan 31 2021 - 14:19:48 +0000)
DRAM: 3072 MiB
Trying to boot from MMC1
MMC: no card present
spl: mmc init failed with error: -123
SPL: failed to boot from all boot devices
### ERROR ### Please RESET the board ###



[Image: P4041662-crop-Copy.jpg]


RE: PinePhone Beta Edition will not boot from MicroSD card - 8bit - 05-05-2021

Looks ok to me. Nothing bent or touching.

When you insert a SD card while running off the eMMC what does dmesg output?

This is what I get:
Code:
[  119.689851] mmc0: new high speed SDXC card at address 59b4
[  119.692761] mmcblk0: mmc0:59b4 SPCC  232 GiB
[  119.704219]  mmcblk0: p1

I suspect it isn't seeing it as a high speed device. Some kind of communications problem between the socket and the SOC


RE: PinePhone Beta Edition will not boot from MicroSD card - Timothy_Ecc - 05-05-2021

I am getting pretty close to the same. I used two different cards to see if there would be any major differences.

Code:
[  128.196245] mmc0: new high speed SDXC card at address 0001
[  128.198359] mmcblk0: mmc0:0001 GD4QT 119 GiB
[  128.202273]  mmcblk0: p1


[  116.418000] mmc0: new high speed SDHC card at address 0001
[  116.419305] mmcblk0: mmc0:0001 JB1RT 29.8 GiB
[  116.422489]  mmcblk0: p1 p2



RE: PinePhone Beta Edition will not boot from MicroSD card - 8bit - 05-06-2021

Good and bad news. I can reproduce your error.

I was playing with the microSD extension cable https://pine64.com/product/pinephone-microsd-extender/?v=0446c16e2e66
It worked fine but after removing it and booting from eMMC my data SD card was not mounting at boot. If I did a 'sudo mount -a' it would mount. If I slid it out and back in it would mount.

I then tried a SD card with an OS on it. I get the same error you do over the serial console.
Code:
U-Boot SPL 2020.10-3 (Dec 03 2020 - 06:43:18 +0000)
DRAM: 2048 MiB
Trying to boot from MMC1
MMC: no card present
spl: mmc init failed with error: -123
SPL: failed to boot from all boot devices
### ERROR ### Please RESET the board ###

The microSD extender damaged the pins in some way. The upside is that using the microSD extender I can boot off a SD card. So it must have bent the pins too flat or something. It is a tight fit.

I am going to do some more testing on the data SD card without the extender. To see if it is reliable or if the connection is intermittent and I will have to leave the extender attached for it to work reliably.


RE: PinePhone Beta Edition will not boot from MicroSD card - 8bit - 05-06-2021

I inadvertently fixed it. The card insertion switch was damaged. Not exactly sure how, but mine is now permanently shorted (thinks a card is always inserted.) I don't know what side effect this will cause, it not knowing when a card is removed. But since I would probably not ever remove a card that is mounted, I can live with that.

https://forum.pine64.org/showthread.php?tid=13654&pid=94178#pid94178


RE: PinePhone Beta Edition will not boot from MicroSD card - Timothy_Ecc - 05-08-2021

(05-06-2021, 11:33 AM)8bit Wrote: Good and bad news. I can reproduce your error.

I was playing with the microSD extension cable https://pine64.com/product/pinephone-microsd-extender/?v=0446c16e2e66
It worked fine but after removing it and booting from eMMC my data SD card was not mounting at boot. If I did a 'sudo mount -a' it would mount. If I slid it out and back in it would mount.

I then tried a SD card with an OS on it. I get the same error you do over the serial console.

The microSD extender damaged the pins in some way. The upside is that using the microSD extender I can boot off a SD card. So it must have bent the pins too flat or something. It is a tight fit.

I am going to do some more testing on the data SD card without the extender. To see if it is reliable or if the connection is intermittent and I will have to leave the extender attached for it to work reliably.

Very Interesting. I just tried one of the microSD extenders and my PinePhone boots straight to the eMMC without even trying to boot from the MicroSD card in the extender. From the sounds of what you found my PinePhone must have come with a damaged MicroSD card slot for some reason.

Just realized I was inserting the MicroSD card into the extender improperly. I get the same failure to boot using the extender as I do with the card in the normal slot.

Code:
U-Boot SPL 2020.07-rc4-11.2 (Jan 31 2021 - 14:19:48 +0000)
DRAM: 3072 MiB
Trying to boot from MMC1
MMC: no card present
spl: mmc init failed with error: -123
SPL: failed to boot from all boot devices
### ERROR ### Please RESET the board ###



RE: PinePhone Beta Edition will not boot from MicroSD card - 8bit - 05-08-2021

It looks like it is possible to compile U-Boot to ignore the card detection pin.
https://gitlab.com/pine64-org/u-boot/-/blob/master/drivers/mmc/mmc.c#L2867-2879
https://patchwork.ozlabs.org/project/uboot/patch/1514867157-18907-1-git-send-email-jun.nie@linaro.org/

This might be a good default setting since U-Boot would only ever run if there really was a SD card that it is running off of.
https://gitlab.com/pine64-org/u-boot/-/blob/master/configs/pinephone_defconfig