Article 6HH7S Pinebook Pro boot from NVME - drop requirement for booting from uSD card

Pinebook Pro boot from NVME - drop requirement for booting from uSD card

by
difdif
from LinuxQuestions.org on (#6HH7S)
Following the Slackware Pinebook Pro installation instructions it has a section "Boot from NVME - drop requirement for booting from uSD card" noting that this is not yet fully worked out.

After a lot of trial and error I now have this working. First I wrote the Slackware bootloader to the SPI flash storage as described in my previous post. This allowed the SD card with the Slackware installer to boot. I formatted the NVME drive as a swap partition (/dev/nvme0n1p1) and a single data partition with ext4 format, /dev/nvme0n1p2 (maybe a separate /boot partition would work, I didn't try that). After completing the installation to the NVME storage the installer places the kernel and initrd on the SD card. The EMMC card was present in the computer but switched to disable it.

I copied the files from the boot partition on the SD card over to the /boot directory on the ext4 root partition. Editing /boot/extlinux/extlinux.conf on the NVME drive was where all the trial and error was then needed. I found the following entry worked and boots up from the NVME without the SD card present.

Code:LABEL System
MENU LABEL Boot NVME
KERNEL /boot/Image-armv8
INITRD /boot/initrd-armv8
FDTDIR /boot/dtb
APPEND earlyprintk rw console=tty1 root=/dev/nvme0n1p2 rootfstype=ext4 rootwaitChanging the PROMPT value to 90 gave enough time to see the menu and make a choice - it otherwise moves too quickly when running from the NVME drive, much faster then when running from the SD card.

Using root=LABEL=SLKroot in the APPEND line works too as the installer already labels up the partition - that would be more easily generalisable than the /dev/nvme0n1p2 version. Including console=tty1 ensured some errors were written to the screen to help understand what was happening before I got the APPEND options right. I'm not sure the combination above is optimal, but it works! Including rootfstype was crucial to the kernel being able to reach the root partition as it boots up.
External Content
Source RSS or Atom Feed
Feed Location https://feeds.feedburner.com/linuxquestions/latest
Feed Title LinuxQuestions.org
Feed Link https://www.linuxquestions.org/questions/
Reply 0 comments