Open LorenzoBettini opened 2 years ago
The instructions use Tow-Boot. You claim to use U-Boot. Can you try Tow-Boot, and see if it gives you video during boot-up?
Last time I tested the instructions (less than a month ago) on a Pinebook Pro from the same generation, everything worked fine for me.
@SvenKiljan sorry, maybe I was misleading.
If you refer to this
dd if=boot/Tow-Boot.noenv.bin of=/dev/sdX seek=64 conv=notrunc,fsync
I did that, where sdX is the SD card device. That's what the instructions say, or did I get them wrong? But the SPI of the PineBook hasn't been touched. I seem to understand that was not required. So U-boot starts, and then it boots the SD card (I guess at that point it boots it with Tow-Boot, right?)
Do I have to flash Two-Boot on the SPI? I wouldn't want to break the existing Manjaro installation (not yet, at least ;)
And some updates: Some days, I can boot the SD card the very first time, but then the next reboots still give me the black screen. Some days, it doesn't really want to know... On the contrary, using a dock and inserting the SD card in the dock looks like it's working all the time: I can boot from the SD card, and the boot completes successfully.
Before Tow-Boot or U-Boot, the Pinebook Pro looks for these boot loaders on different boot devices. The sequence is noted here. As far as it is relevant to this issue:
The Pinebook Pro will use the first boot loader it finds. That means that if a boot loader is installed on eMMC, that it will be used despite the presence of a boot loader on an SD card.
On the contrary, using a dock and inserting the SD card in the dock looks like it's working all the time: I can boot from the SD card, and the boot completes successfully.
The dock is a USB device. The Pinebook Pro cannot boot by itself from USB mass storage. The boot loader must be installed and loaded from somewhere else. This means that you have a boot loader (likely U-Boot) installed in either SPI or on the eMMC. An older version of U-Boot might give issues.
You can clear the SPI using # flash_erase /dev/mtd0 0 0
, and the beginning of the eMMC drive using # dd if=/dev/zero of=/dev/mmcblk2 bs=1M count=32
. Of course, you do so at your own risk. Note that the eMMC drive will also lose its partition table, and will appear blank to any operating systems. This might be desirable, since it is the quickest method to get rid of a forgotten and unwanted previous OS installation.
If the SPI and eMMC are cleared, the only boot loader the Pinebook Pro can use will have to come from SD.
So for the moment, I don't want to lose the Manjaro installation, that is why I haven't touched the SPI or the internal eMMC card.
The u-boot that is currently installed (on the internal eMMC) has been installed by following the instructions shown during a recent Manjaro update a few weeks ago.
From what I know, and from what I can experiment, the new u-boot changed the boot order you mentioned, and the USB and SD-card are inspected before the eMMC (https://wiki.pine64.org/index.php?title=Pinebook_Pro#Using_as_OS_root_drive mentions that the SD card is inspected first; I also read that the USB is inspected first but I'm afraid I can't find the source right now; to summarize, if you want to test an installation on an SD card or USB stick, you don't need to remove the internal eMMC card anymore if that's what you meant). In fact, although I haven't touched the u-boot, I can boot from the SD card and from a USB stick.
I did experiments with the "official" Arm image, as detailed here https://wiki.pine64.org/wiki/Installing_Arch_Linux_ARM_On_The_Pinebook_Pro, and with your instructions (in both cases, starting from scratch, of course).
I cannot live with the official Arm image because wifi and audio will not work, and the battery is not correctly recognized. That's why I also tried your packages (and instructions for installation).
I have no problem booting from the USB stick the official Arm installation or your image and kernel, while for the SD card where I installed your image (following the instructions https://github.com/SvenKiljan/archlinuxarm-pbp/blob/main/INSTALL.md#installation-on-microsd-card-or-emmc-module) I have the problems I detailed above: the u-boot finds the installation in the SD card, it boots it (I can see it finds and reads the image and the root filesystem), but most of the times, after that, the screen stays black. When it works, I have a perfectly working installation with audio and wifi (I also installed Gnome). As I said above, if the same SD Card is inserted in a small dock connected to the USB-C port, the system is perfectly booted from the SD card. (Again, u-boot inspects that first, before the eMMC).
As an additional experiment, I started from scratch by installing the official Arm image https://wiki.pine64.org/wiki/Installing_Arch_Linux_ARM_On_The_Pinebook_Pro and then I "migrated" to your repository, based on https://github.com/SvenKiljan/archlinuxarm-pbp/blob/main/FAQ.md#how-do-i-migrate-from-other-arch-linux-arm-releases-for-the-pinebook-pro (of course, in my case, I didn't have to remove anything, I just had to add your repository and install the specific PineBook Pro packages and the Manjaro kernel, which replaces the original one). Before switching to your Manjaro kernel, the SD card was booting fine. After switching to your kernel, I had the same problems again. I can only guess there are some problems with the Manjaro kernel and with the SD card port... some missed synchronization that happens frequently, but that is not likely to happen when inserting the SD card in the dock instead of directly in the laptop port...
I hope I provided enough details, otherwise, please let me know.
I had similar problems. It worked fine on the live installation as far as I can tell and then the first one or two boots (presumably until some kernel or bootloader updates), but after that I got a black screen. The LED did turn green though as far as I remember, so it seems to kinda have booted? I gave up on it, cause at the moment I had/have neither the time nor the need for it... thats why I also didn't try any other distros.
Some additional experiments today:
I still think there's some synchronization problem:
Hi
I followed the instructions https://github.com/SvenKiljan/archlinuxarm-pbp/blob/main/INSTALL.md#installation-on-microsd-card-or-emmc-module to install Arch Linux Arm on an SD card. Everything went fine. However, upon rebooting, while U-boot detects and boots the SD card, after some flashing on the screen, I only get a black screen. I did the same procedure once more from scratch, and I got the same result. However, the OS seems to be up and running; in fact, if I press Ctrl+Alt+Del, the machine reboots. After that, I finally get the screen showing that the installed OS is booting, and I can log in and perform the last instructions (I can connect to the wifi and run pacman-key). Upon rebooting, however, I get the black screen again. I tried with Ctrl+Alt+Del, and again the system reboots, but this time I cannot get to the prompt anymore: the screen is black.
Any clue, please?
It's a PineBook Pro bought in 2020.
Thanks in advance