Using grub-image ?
#1
Would it be safe to use the grub-image, with all the modules (as long as it doesn't exceed 16 MB) and flash it to the spi ? Which would eliminate the need for uboot entirely ?
Just checking my options before i get an ssd, for the nvme adaper (pbp)
  Reply
#2
You'll have to do some real configuring to use GRUB, and it will still rely on u-boot. If you want to flash to SPI, there are already u-boots for the SPI that are capable of booting from NVMe drives in the PBP. (Thanks to users dhivael and pcm720, respectively!)
  Reply
#3
I got grub to work as an EFI payload from uboot, only caveat is that the display doesn't work. Install grub with --target=arm64-efi and --removable flags, and use the following boot script (adjust as needed to your setup):


Code:
setenv bootargs initrd=/boot/initramfs-linux.img console=ttyS0 console=tty1 root=LABEL=ROOT_MNJRO rw rootwait video=eDP-1:1920x1080@60 video=HDMI-A-1:1920x1080@60 bootsplash.bootfile=bootsplash-themes/manjaro/bootsplash
load mmc 1:1 ${fdt_addr_r} dtbs/rockchip/rk3399-pinebook-pro.dtb
load mmc 1:1 ${kernel_addr_r} efi/EFI/BOOT/BOOTAA64.EFI
bootefi ${kernel_addr_r} ${fdt_addr_r}
And grub.cfg (adjust to your setup)

Code:
set timeout_style="menu"
set timeout=5
menuentry "Kernel" {
linux (hd0,msdos1)/Image console=tty1 root=LABEL=ROOT_MNJRO rw rootwait video=eDP-1:1920x1080@60 video=HDMI-A-1:1920x1080@60 bootsplash.bootfile=bootsplash-themes/manjaro/bootsplash
devicetree (hd0,msdos1)/dtbs/rockchip/rk3399-pinebook-pro.dtb
initrd (hd0,msdos1)/initramfs-linux.img
}


I've been poking around the u-boot source code to try and get the eDP and LCD drivers working <https://github.com/amiraeva/uboot-pbp>. So far I can get the display to flicker for a brief second before the u-boot serial console loads, and have run out of things to try. Any ideas/suggestions would be appreciated!
  Reply
#4
@ScarFez, you don't want to flash Grub to the SPI. There are more things in the U-Boot package than just booting. One of the sections is for the dual control processors, which handle the speed adjustment and thermal limiting, (if I understand it correctly). Many vendors use closed source code for this function. We do have some work alike open source for that code, (can't remember it's name). Plus, there is DRAM initialization and other SoC specific code that needs to run.

Anyway, you want U-Boot, (or similar firmware), to be in SPI, (eventually), and have Grub as the payload. Thus, we can change kernels, boot devices, password protect booting, or editing grub menu entries, all from Grub.

That's my ideal end result. Stable, fully open source SPI firmware that will check USB, SD card, NVMe and then eMMC for booting. Whence a device has been selected, Grub takes over from that specific device. (So if Grub gets screwed up on your eMMC, you can boot using USB or SD card to recover.)
--
Arwen Evenstar
Princess of Rivendale
  Reply
#5
(03-25-2020, 01:40 PM)amiraeva Wrote: I got grub to work as an EFI payload from uboot, only caveat is that the display doesn't work. Install grub with --target=arm64-efi and --removable flags, and use the following boot script (adjust as needed to your setup):


Code:
setenv bootargs initrd=/boot/initramfs-linux.img console=ttyS0 console=tty1 root=LABEL=ROOT_MNJRO rw rootwait video=eDP-1:1920x1080@60 video=HDMI-A-1:1920x1080@60 bootsplash.bootfile=bootsplash-themes/manjaro/bootsplash
load mmc 1:1 ${fdt_addr_r} dtbs/rockchip/rk3399-pinebook-pro.dtb
load mmc 1:1 ${kernel_addr_r} efi/EFI/BOOT/BOOTAA64.EFI
bootefi ${kernel_addr_r} ${fdt_addr_r}
And grub.cfg (adjust to your setup)

Code:
set timeout_style="menu"
set timeout=5
menuentry "Kernel" {
linux (hd0,msdos1)/Image console=tty1 root=LABEL=ROOT_MNJRO rw rootwait video=eDP-1:1920x1080@60 video=HDMI-A-1:1920x1080@60 bootsplash.bootfile=bootsplash-themes/manjaro/bootsplash
devicetree (hd0,msdos1)/dtbs/rockchip/rk3399-pinebook-pro.dtb
initrd (hd0,msdos1)/initramfs-linux.img
}


I've been poking around the u-boot source code to try and get the eDP and LCD drivers working <https://github.com/amiraeva/uboot-pbp>. So far I can get the display to flicker for a brief second before the u-boot serial console loads, and have run out of things to try. Any ideas/suggestions would be appreciated!

Did you get the grub serial console to work?
I only seem to get this output when booting grub from u-boot:

Code:
139264 bytes read in 12 ms (11.1 MiB/s)
error: no suitable video mode found.
EFI stub: Booting Linux Kernel...
EFI stub: EFI_RNG_PROTOCOL unavailable, no randomness supplied
EFI stub: ERROR: Could not determine UEFI Secure Boot status.
EFI stub: Using DTB from configuration table
EFI stub: Exiting boot services and installing virtual address map...
[    0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034]

But no menu.

Edit:
Figured it out, if anyone ever feels like they are nuking something, remember to change this:
Code:
GRUB_TIMEOUT_STYLE=hidden
GRUB_TIMEOUT=0
to
Code:
GRUB_TIMEOUT_STYLE=menu
GRUB_TIMEOUT=2
  Reply


Possibly Related Threads...
Thread Author Replies Views Last Post
  Slow WiFi on Manjaro Default Image 20.04 for PBP SuperUJ 8 259 05-28-2020, 08:16 PM
Last Post: nekojet
  postmarketOS/Alpine edge image for the Pinebook Pro MartijnBraam 51 5,097 05-28-2020, 07:07 AM
Last Post: pmjohann
  Pinebook Pro Temps? 65C while playing music via youtube w nothing but a static image jazzmans 4 210 05-26-2020, 10:54 AM
Last Post: xmixahlx
  Link to the Official (from factory) manjaro image? gandlers 4 161 05-19-2020, 03:36 PM
Last Post: erchache2000
  Bricked PBP after writing image to eMMC? wvdschel 20 1,706 04-28-2020, 06:44 PM
Last Post: binholz
  Recalbox Image is available Luke 5 701 04-12-2020, 07:29 AM
Last Post: mschoolbus
  Cant boot into home-rolled Arch Linux image craftkiller 4 325 02-25-2020, 12:58 PM
Last Post: craftkiller
  Kernel headers for stock Debian image fader 0 107 01-18-2020, 10:35 AM
Last Post: fader
  Troubleshooting New Kernel Image wsgts 3 232 01-16-2020, 09:04 AM
Last Post: wsgts
Wink Re-image Help *facepalm* xircledev 2 350 11-24-2019, 04:16 AM
Last Post: Arglebargle

Forum Jump:


Users browsing this thread: 1 Guest(s)