Banana Pi M1: fails to boot normally Debian Stretch


MikeL
 Share

0

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
Link to post
Share on other sites

Donate and support the project!

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 ...

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.

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.

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.

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";
};

Link to post
Share on other sites

Guest
This topic is now closed to further replies.
 Share

0