0
MikeL

Banana Pi M1: fails to boot normally Debian Stretch

Recommended Posts

In the last weeks I've successfully installed Armbian Debian Stretch 5.59 onto a Banana Pi M2 Berry, now I'm trying with a Banana Pi M1.

 

From https://www.armbian.com/bananapi/ I've downloaded the Debian Stretch image and wrote it to my 4GB SD-card using Etcher (on Windows 10) - Etcher meant it was successfully after writing. I've safely ejected the SD-card from Windows, plugged it into the Banana Pi M, but it tries to boot from the network. Then I've taken a look at https://dl.armbian.com/bananapi/archive/ and downloaded Armbian-5.59 Debian Stretch image, wrote it with Etcher again, booted. Same issue. It shows a red armbian logo with "initializing boot loader" and below output (typed from screenshots, so there might be typos):

HDMI connected: Setting up a 1920x1080 hdmi console (overscan 0x0)
Error: no valid bmp image at 66000000
In:    serial
Out:   vga
Err:   vga
SCSI:  SATA link 0 timeout
AHCI 0001.0100 32 slots 1 ports 3 Gbps 0x1 impl SATA mode
flags: ncq stag pm led clo only pmp pio slum part ccc apst
Net:   eth0: ethernet@01c50000
230454 bytes read in 32 ms (6.9 MiB/s)
starting USB...
USB0:   USB EHCI 1.00
USB1:   USB OHCI 1.0
USB2:   USB EHCI 1.00
USB3:   USB OHCI 1.0
scanning bus 0 for devices... 1 USB Device(s) found
scanning bus 2 for devices... 1 USB Device(s) found
scanning bus 1 for devices... 1 USB Device(s) found
scanning bus 3 for devices... 2 USB Device(s) found
       scanning usb for storage devices... 0 Storage Device(s) found
Autoboot in 1 seconds, press <Space> to stop
scanning bus for devices...
Found 0 device(s).

Device 0: not available

Device 0: device type unknown
... is now current device
** Bad device usb 0**
** Bad device usb 0**
ethernet@01c50000 Waiting for PHY auto negotiation to complete ........... TIMEOUT !
Could not initialze PHY ethernet@01c500000
missing environment variable: pxeuuid
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/0000000
ethernet@01c50000 Waiting for PHY auto negotiation to complete ........... TIMEOUT !
Could not initialze PHY ethernet@01c500000
=> 

How to convince it to boot to the normal login prompt?

 

Mike

Edited by MikeL

Share this post


Link to post
Share on other sites

No idea what could cause the problem? Is it the right image for this Banana Pi M1? Is there something I should check on the SD card using a Linux? I don't have a TTL-to-USB serial adapter.

Share this post


Link to post
Share on other sites
23 minutes ago, MikeL said:

I don't have a TTL-to-USB serial adapter.

Those are really helpful to have some in your toolbox, they are pretty cheap, around US$1 ...

If you had some, I would ask you to press <space> at u-boot prompt and do "mmc info" to see why u-boot doesn't find the SDCard.

Maybe the SDCard detect pin is broken on your board ...

Share this post


Link to post
Share on other sites

Thank you for answering. If the SD card could not be detected, shouldn't it behave as there would be no SD card inserted? I'm asking because I've tried that and got no output at all. So from my naive understanding it seems to have found the SD card.

Share this post


Link to post
Share on other sites

I followed the SD card trail and tried a different SD card (16 GB micro-SD with SD-Adapter instead of the 4 GB full size SD). I noticed a click when inserting while the normal SD card made none, but could not be inserted farther. And now it booted. Very odd.

Share this post


Link to post
Share on other sites
2 hours ago, MikeL said:

I noticed a click when inserting while the normal SD card made none, but could not be inserted farther. And now it booted. Very odd.

Some people experienced even worst issue than your : completely broken detect pin !

In this case, the only workarounds are to either solder wire to ground, or edit Main DT to remove the detect pin declaration and/or having custom compiled u-boot.

Share this post


Link to post
Share on other sites

@martinayotte Thanks a lot, it worked. 

 

For anyone else looking for solution; below file has to be changed; patch created and then image built (with patch placed in build\userpatches\kernel\sunxi-next)

 

build\cache\sources\linux-mainline\linux-4.14.y\arch\arm\boot\dts\sun7i-a20-bananapi.dts

 

&mmc0 {
    pinctrl-names = "default";
    pinctrl-0 = <&mmc0_pins_a>, <&mmc0_cd_pin_bananapi>;
    vmmc-supply = <&reg_vcc3v3>;
    bus-width = <4>;
    broken-cd;
    cd-inverted;
    status = "okay";
};

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
0