PINE64
Dual boot options for ROCK64? - Printable Version

+- PINE64 (https://forum.pine64.org)
+-- Forum: ROCK64 (https://forum.pine64.org/forumdisplay.php?fid=85)
+--- Forum: Linux on Rock64 (https://forum.pine64.org/forumdisplay.php?fid=88)
+--- Thread: Dual boot options for ROCK64? (/showthread.php?tid=5363)

Pages: 1 2 3


Dual boot options for ROCK64? - Mrfixit2001 - 11-14-2017

I've been doing lots of research in preparation of receiving my ROCK64  Cool  Has anyone tried dual-booting from a single SD Card yet? I'm hoping to find something that works on this platform that's similar to NOOBS Companion for the RPI, allowing me to easily jump back and forth between LibreELEC (KODI) and LAKKA. Anyone have any experience with this topic yet?


RE: Dual boot options for ROCK64? - Tony32 - 11-22-2017

I Wonder the same. Wish to run libreelec and recalbox/lalla/retropie


RE: Dual boot options for ROCK64? - freebsd - 11-23-2017

My guess is you would have to re-compile the kernels to pick the different slice on the flash AND a layer to boot up enough to give you a screen/keyboard to say 'what is the blob you want to load'. Now perhaps someone would write such code for an IoT field upgrade model - 'Boot from this old version/boot the new version' and then that could get re-purposed for what you are looking for or someone wanting:
1) coreboot https://www.coreboot.org/ARM running on the platform
2) NetBSD's model of doing a device tree
https://www.cnx-software.com/2017/07/11/netbsd-is-now-running-on-allwinner-h3-boards/

The short version is: ARM is not the same as the bios model that brought you dual booting.


RE: Dual boot options for ROCK64? - dkryder - 11-24-2017

(11-23-2017, 01:10 PM)freebsd Wrote: My guess is you would have to re-compile the kernels to pick the different slice on the flash AND a layer to boot up enough to give you a screen/keyboard to say 'what is the blob you want to load'.   Now perhaps someone would write such code for an IoT field upgrade model - 'Boot from this old version/boot the new version' and then that could get re-purposed for what you are looking for or someone wanting:
1) coreboot   https://www.coreboot.org/ARM running on the platform
2) NetBSD's model of doing a  device tree
https://www.cnx-software.com/2017/07/11/netbsd-is-now-running-on-allwinner-h3-boards/

The short version is:  ARM is not the same as the bios model that brought you dual booting.

that noobs companion or the wd hd  rpi multi boot  code could maybe be modified to set up pine64 devices for multi-boot option.

berryboot source is on github so you could check that out to determine if hack is possible


RE: Dual boot options for ROCK64? - Tony32 - 01-15-2018

Any update regarding this? I do not have the knowledge nor skill to make such a thing on my own. I desperately want to dualboot on the eMMC to switch between libreelec and Lakka >.<


RE: Dual boot options for ROCK64? - dudemo - 01-15-2018

The best way I know to dual boot is to have one OS on the eMMC and another on the SD card. The Rock64 board has a jumper on it to set whether or not it boots from eMMC or SD. Swap the jumper and you can boot SD without having to remove the eMMC card.


RE: Dual boot options for ROCK64? - Luke - 01-15-2018

ayufan just got SPI working last week - this holds the promise of multibooting different OS'. I wouldn't expect this anytime super-soon, but now at least the possibility is real.


RE: Dual boot options for ROCK64? - maal - 01-15-2018

What works for me:


/boot/extlinux/extlinux.conf
Code:
TIMEOUT 30
DEFAULT kernel-4.14

MENU TITLE Rock64 boot options


LABEL kernel-4.14
   kernel /boot/Image-4.14
   fdt /boot/rk3328-rock64.dtb-4.14
   append earlycon=uart8250,mmio32,0xff130000 rw root=/dev/mmcblk0p1 rootwait rootfstype=ext4 init=/sbin/init coherent_pool=1M ethaddr=${ethaddr} eth1addr=${eth1addr} serial=${serial#}

LABEL kernel-4.15-rc6
   kernel /boot/Image-4.15-rc6
   fdt /boot/rk3328-rock64.dtb-4.15-rc6
   append earlycon=uart8250,mmio32,0xff130000 rw root=/dev/mmcblk0p1 rootwait rootfstype=ext4 init=/sbin/init coherent_pool=1M ethaddr=${ethaddr} eth1addr=${eth1addr} serial=${serial#}

LABEL kernel-4.4
   kernel /boot/Image
   initrd /boot/initrd.img
   fdt /boot/dtb
   append earlycon=uart8250,mmio32,0xff130000 rw root=LABEL=linux-root rootwait rootfstype=ext4 init=/sbin/init coherent_pool=1M ethaddr=${ethaddr} eth1addr=${eth1addr} serial=${serial#}


Boot log:
Code:
DDR version 1.06 20170424
In
LPDDR3
786MHz
Bus Width=32 Col=11 Bank=8 Row=15/15 CS=2 Die Bus-Width=32 Size=4096MB
ddrconfig:7
OUT
Boot1 Release Time: 2017-05-18, version: 2.43
ChipType = 0x11, 127
emmc reinit
emmc reinit
SdmmcInit=2 20
SdmmcInit=0 0
BootCapSize=0
UserCapSize=15084MB
FwPartOffset=2000 , 0
StorageInit ok = 50220
Raw SecureMode = 0
SecureInit read PBA: 0x4
SecureInit read PBA: 0x404
SecureInit read PBA: 0x804
SecureInit read PBA: 0xc04
SecureInit read PBA: 0x1004
SecureInit ret = 0, SecureMode = 0
LoadTrustBL
No find bl30.bin
No find bl32.bin
Load uboot, ReadLba = 2000
Load OK, addr=0x200000, size=0x7bd90
RunBL31 0x10000
NOTICE:  BL31: v1.4(release):v1.4-218-g3b6ceeff
NOTICE:  BL31: Built : 11:11:11, Sep 30 2017
NOTICE:  BL31:Rockchip release version: v1.2


U-Boot 2017.09-00396-g6ca43a58db (Sep 30 2017 - 11:11:57 +0200)

Model: Rockchip RK3328 EVB
DRAM:  4 GiB
MMC:   rksdmmc@ff500000: 1, rksdmmc@ff520000: 0
*** Warning - bad CRC, using default environment

In:    serial@ff130000
Out:   serial@ff130000
Err:   serial@ff130000
Model: Rockchip RK3328 EVB
Net:   Net Initialization Skipped
No ethernet found.
Hit any key to stop autoboot:  0
Card did not respond to voltage select!
mmc_init: -95, time 9
switch to partitions #0, OK
mmc1 is current device
Scanning mmc 1:1...
Found /boot/extlinux/extlinux.conf
Retrieving file: /boot/extlinux/extlinux.conf
891 bytes read in 73 ms (11.7 KiB/s)
Rock64 boot options
1:      kernel-4.14
2:      kernel-4.15-rc6
3:      kernel-4.4
Enter choice: 2
2:      kernel-4.15-rc6
Retrieving file: /boot/Image-4.15-rc6
13763072 bytes read in 1312 ms (10 MiB/s)
append: earlycon=uart8250,mmio32,0xff130000 rw root=/dev/mmcblk0p1 rootwait rootfstype=ext4 init=/sbin/init coherent_pool=1M ethaddr= eth1addr= serial=
Retrieving file: /boot/rk3328-rock64.dtb-4.15-rc6
30605 bytes read in 101 ms (295.9 KiB/s)
## Flattened Device Tree blob at 01f00000
  Booting using the fdt blob at 0x1f00000
  Loading Device Tree to 00000000fcf27000, end 00000000fcf3178c ... OK

Starting kernel ...



RE: Dual boot options for ROCK64? - Luke - 01-15-2018

maal, that is really neat. Do you have a how-to link ?


RE: Dual boot options for ROCK64? - maal - 01-15-2018

No, sorry - setting this up was a process of trial and error.
Useful link: http://www.syslinux.org/wiki/index.php?title=Config