Hallo,
ich habe neulich meinen Raspi 3 im Schlafzimmer durch einen Odroid C2 ersetzt. Auf dem Raspi konnte man ja ganz bequem mittels NOOBS Multibootsysteme auf die SD-Karte klatschen.
Auf dem Odroid C2 gibt es leider nichts vergleichbar einfaches. Es gibt zwar eine Multiboot-Entwicklung hier auf Github Odroid-Multiboot, jedoch wird diese auch schon seit 2 Jahren nicht mehr weiterentwickelt, unterstützt auch nicht direkt Lakka und scheint beim Updaten der einzelnen Systeme dann auch Probleme zu bereiten.
Was ich interessanter finde, ist diese Boot-Switcher Lösung https://forum.odroid.com/viewtopic.php?f=136&t=20002 , die ich aber auch nicht so ganz umgesetzt bekomme. Ich muss dazu sagen, dass meine Linux-Kenntnisse auch nicht so weit fortgeschritten sind, um alles nachzuvollziehen. Ergänzend zum Thema habe ich bei Lakka.tv, allerdings als Tipp für den XU3/4 noch folgendes gefunden:
Using eMMC and SD at the same time
One of our users installed Lakka on his SD card, and wanted to keep its eMMC plugged. He had to change the dev names in the boot.ini. /dev/mmcblk1p1 instead of /dev/mmcblk0p1, and /dev/mmcblk1p2 instead of /dev/mmcblk0p2
Was mir vorschwebt, ist dass ich mir bei meinem gewollten Dualboot sowohl in Kodi als auch in Lakka einen Shortcut ins Menü baue, der ein Script startet. Das Skript hat dann die Aufgabe, die passende boot.ini an den richtigen Ort zu kopieren und die jeweils andere umzubenennen. Eigentlich so, wie im obigen verlinkten Beispiel.
Ich hatte das mal testweise manuell ausprobiert, indem ich die boot.ini von Lakka (SD) in den /flash Ordner der Kodi eMMC kopiert habe. Die Original boot.ini von CoreELEC hatte ich zuvor umbenannt. In der Lakka boot.ini Kopie habe ich dann /dev/mmcblk1p1 und /dev/mmcblk1p2 dahingehend angepasst.
Leider bootet es so nicht. Daher gehe ich davon aus, dass noch weitere Anpassungen nötig sind. Hier ist übrigens die geänderte Lakka boot.ini, mit der ich getestet habe:
Spoiler anzeigen
#------------------------------------------------------------------------------------------------------
#
# boot.ini identification
#
#------------------------------------------------------------------------------------------------------
ODROIDC2-UBOOT-CONFIG
#------------------------------------------------------------------------------------------------------
#
# Boot Specific Stuff
#
#------------------------------------------------------------------------------------------------------
setenv bootrootfs "boot=/dev/mmcblk1p1 disk=/dev/mmcblk1p2"
#------------------------------------------------------------------------------------------------------
#
# Console Setup
# setenv condev "console=ttyS0,115200n8" # on serial port
# setenv condev "console=tty0" # on display (HDMI)
# setenv condev "console=tty0 console=ttyS0,115200n8" # on both
#
#------------------------------------------------------------------------------------------------------
setenv console "console=tty0"
#------------------------------------------------------------------------------------------------------
#
# Video
# Setup the video output (default is 1080p60hz)
# 480 Lines (720x480)
# setenv hdmimode "480i60hz" # Interlaced 60Hz
# setenv hdmimode "480i_rpt" # Interlaced for Rear Projection Televisions 60Hz
# setenv hdmimode "480p60hz" # 480 Progressive 60Hz
# setenv hdmimode "480p_rpt" # 480 Progressive for Rear Projection Televisions 60Hz
# 576 Lines (720x576)
# setenv hdmimode "576i50hz" # Interlaced 50Hz
# setenv hdmimode "576i_rpt" # Interlaced for Rear Projection Televisions 50Hz
# setenv hdmimode "576p50hz" # Progressive 50Hz
# setenv hdmimode "576p_rpt" # Progressive for Rear Projection Televisions 50Hz
# 720 Lines (1280x720)
# setenv hdmimode "720p60hz" # Progressive 60Hz
# setenv hdmimode "720p50hz" # Progressive 50Hz
# 1080 Lines (1920x1080)
# setenv hdmimode "1080i60hz" # Interlaced 60Hz
# setenv hdmimode "1080p60hz" # Progressive 60Hz
# setenv hdmimode "1080i50hz" # Interlaced 50Hz
# setenv hdmimode "1080p50hz" # Progressive 50Hz
# setenv hdmimode "1080p30hz" # Progressive 30Hz
# setenv hdmimode "1080p25hz" # Progressive 25Hz
# setenv hdmimode "1080p24hz" # Progressive 24Hz
# 4K (3840x2160)
# setenv hdmimode "2160p60hz" # Progressive 60Hz
# setenv hdmimode "2160p50hz" # Progressive 50Hz
# setenv hdmimode "2160p30hz" # Progressive 30Hz
# setenv hdmimode "2160p25hz" # Progressive 25Hz
# setenv hdmimode "2160p24hz" # Progressive 24Hz
# setenv hdmimode "2160p60hz420" # Progressive 60Hz with YCbCr 4:2:0 (Requires TV/Monitor that supports it)
# setenv hdmimode "2160p50hz420" # Progressive 50Hz with YCbCr 4:2:0 (Requires TV/Monitor that supports it)
# 4K2K (4096x2160)
# setenv hdmimode "smpte60hz" # Progressive 60Hz SMPTE
# setenv hdmimode "smpte50hz" # Progressive 50Hz SMPTE
# setenv hdmimode "smpte30hz" # Progressive 30Hz SMPTE
# setenv hdmimode "smpte25hz" # Progressive 25Hz SMPTE
# setenv hdmimode "smpte24hz" # Progressive 24Hz SMPTE
# setenv hdmimode "smpte60hz420" # Progressive 60Hz SMPTE with YCbCr 4:2:0 (Requires TV/Monitor that supports it)
# setenv hdmimode "smpte50hz420" # Progressive 50Hz SMPTE with YCbCr 4:2:0 (Requires TV/Monitor that supports it)
#
# Enable|Disable HDMI (Saves RAM)
# setenv hdmioutput "0" # Disabled
# setenv hdmioutput "1" # Enabled
#
# Enable|Disable VPU (Saves RAM)
# setenv vpu "0" # Disabled
# setenv vpu "1" # Enabled
#
#------------------------------------------------------------------------------------------------------
setenv hdmioutput "1"
setenv vpu "1"
#------------------------------------------------------------------------------------------------------
#
# LibreELEC variables
#
# Setup the LibreELEC options
# valid values are: textmode [definition=12,2]debugging[/definition] progress nofsck nosplash noram overlay quiet ssh
#------------------------------------------------------------------------------------------------------
setenv libreelec "quiet"
#------------------------------------------------------------------------------------------------------
#
# Enable|Disable HDMI CEC Control
# setenv hdmi_cec "0" # Disabled
# setenv hdmi_cec "1" # Enabled
#
#------------------------------------------------------------------------------------------------------
setenv hdmi_cec "1"
#------------------------------------------------------------------------------------------------------
#
# CPU Frequency / Cores control
#
# WARNING!!! WARNING!!! WARNING!!!
# Before changing anything here please read the wiki entry:
# http://odroid.com/dokuwiki/doku.php?id=en:c2_set_cpu_freq
#
# MAX CPU's
# setenv maxcpus "1"
# setenv maxcpus "2"
# setenv maxcpus "3"
# setenv maxcpus "4"
#
# MAX Frequency
# setenv max_freq "2016" # 2.016GHz
# setenv max_freq "1944" # 1.944GHz
# setenv max_freq "1944" # 1.944GHz
# setenv max_freq "1920" # 1.920GHz
# setenv max_freq "1896" # 1.896GHz
# setenv max_freq "1752" # 1.752GHz
# setenv max_freq "1680" # 1.680GHz
# setenv max_freq "1656" # 1.656GHz
# setenv max_freq "1536" # 1.536GHz
#
#------------------------------------------------------------------------------------------------------
setenv maxcpus "4"
setenv max_freq "1536"
#------------------------------------------------------------------------------------------------------
#
# Odroid C2 specific
#
#------------------------------------------------------------------------------------------------------
setenv odroidp1 "no_console_suspend logo=${logoopt} vout=${outputmode},enable hdmimode=${hdmimode} cvbsmode=nocvbs"
setenv odroidp2 "mac=${ethaddr} consoleblank=0 max_freq=${max_freq} maxcpus=${maxcpus}"
setenv odroid "${odroidp1} ${odroidp2}"
#------------------------------------------------------------------------------------------------------
#
# U-Boot bootcmd command
#
#------------------------------------------------------------------------------------------------------
setenv kernel "fatload mmc 0:1 0x11000000 KERNEL"
setenv dtb "fatload mmc 0:1 0x1000000 meson64_odroidc2.dtb"
setenv bootseq "booti 0x11000000 - 0x1000000"
setenv bootcmd "${kernel}; ${dtb}; ${bootseq}"
#------------------------------------------------------------------------------------------------------
#
# Kernel boot
#
#------------------------------------------------------------------------------------------------------
# Prepare to boot
if test "${hdmi_cec}" = "1"; then setenv cec "hdmitx=cec17"; fi
if test "${vpu}" = "0"; then fdt rm /mesonstream; fdt rm /vdec; fdt rm /ppmgr; fi
if test "${hdmioutput}" = "0"; then fdt rm /mesonfb; fi
# Populate the final bootcmd
setenv bootargs "${console} ${bootrootfs} ${odroid} ${cec} ${libreelec}"
# Boot the board
run bootcmd
Eventuell hat ja jemand Lust und Zeit, mir dabei zu helfen, oder vielleicht noch eine simplere Alternative auf Lager.
Ein Herausnehmen der eMMC kommt für mich nicht in Frage, wenn ich Lakka verwenden will. Jeder der einen Odroid mit eMMC hat, weiß wie pfriemelig das ist, besonders mit Gehäuse
Gruß und vielen Dank
Stefan