[SeaBIOS] Chromebook doesn't boot BSD

Kevin O'Connor kevin at koconnor.net
Mon Feb 15 00:02:11 CET 2016

On Sun, Feb 14, 2016 at 08:30:47PM +0100, Ronny Schneider wrote:
> > Am 14.02.2016 um 19:29 schrieb Kevin O'Connor <kevin at koconnor.net>:
> > On Sun, Feb 14, 2016 at 06:04:16PM +0100, Ronny Schneider wrote:
> >> Hello there,
> >> 
> >> i have a Toshiba Chromebook 2 (CB30-B-104) with a flashed on SeaBIOS by the script from John Lewis: https://johnlewis.ie/custom-chromebook-firmware/rom-download/
> >> 
> >> Linux is running very well but i want to see OpenBSD 5.8 on this laptop. But it’s not working, neither do FreeBSD 10.2, NetBSD 7.0 or DragonFly 4.2. The boot stops at the point where the kernel wants to mount the root-filesystem. I even copied an installed OpenBSD-System from an usb-stick onto the emmc-flash of the chromebook but it’s not working.
> >> 
> >> I googled arround and found out the problem is not unknown among the Chromebook Pixel. So i thought i could help a little by providing my cbmem-bootlog for my machine: http://pastebin.com/asLqar5q
> >> If i can do more to see OpenBSD booting on this laptop, please let me know :-)
> > 
> > When you say "it's not working" - what happens - does the machine hang or does it attempt to reboot?
> > If it hangs, are you sure the machine is really stuck instead of just the display not working?
> The Display is working all the time. Using NetBSD, it also applies the native resolution of the panel.
> > If it hangs, can you provide all the information on the screen prior to the hang. 
> I used the amd64 install-images on an 64GB USB3-Stick for the following pictures. If you want me to copy the installer-images onto the mmc of the chromebook, tell me please.
> With FreeBSD 11 it freezes. The machine hangs at the moment the kernel tries to mount the root-filesystem and does not respond to any keypress anymore. I have to shutdown the chromebook by keep pressing on the powerbutton for a few seconds.
> Image: http://bilderhochladen.org/i/SFrHFStWws/
> With OpenBSD 5.8 it „stalls“. The Cursor is blinking but nothing more happens. Although the chromebook shuts down when the powerbutton is pressed.
> Image: http://bilderhochladen.org/i/4jFRYDYO11/
> With NetBSD 7.0 it „stalls“ too. The Cursor is not blinking but i can enter a „root device“. If nothing is entered it gives me the choice of either „ddb“, „halt“ or „reboot“. „Halt" and „Reboot" are working properly, the machine shuts down or reboots correctly.
> Image 1: http://bilderhochladen.org/i/zgq1usG2Ri/
> Image 2: http://bilderhochladen.org/i/EqVSDbn25x/
> With Dragonfly 4.2 the kernel stops at the moment it tries to mount the root-filesystem and asks me to enter the device. The machine has to be shut down via holding the powerbutton for a few seconds.
> Image 1: http://bilderhochladen.org/i/TRIdjee9VP/
> Image 2: http://bilderhochladen.org/i/khPrwt4P0C/

So if I understand correctly, you are attempting to launch BSD install
media from a USB drive, and the installer fails to start?

This doesn't look like a typical SeaBIOS issue - it looks more like
the various BSD kernels don't like the USB controller and/or USB drive
on your machine.  Have you tried using a different type of USB drive
for the install media?  It's also possible there's something in the
ACPI tables that coreboot provides that is confusing the BSDs.

Your logs seem to indicate you also have an eMMC and an SD card.  Have
you tried placing the install media on an SD card instead of USB?

Another thing you could do is launch the install media with the same
verson of SeaBIOS on QEMU emulating an XHCI drive and SD drive - just
to see if it's possible to reproduce outside of your particular
machine.  See below.


With qemu v2.5 an example command might look something like:

qemu-img create -f qcow2 my_simulated_sd 15g

qemu-system-x86_64 -chardev stdio,id=seabios -device isa-debugcon,iobase=0x402,chardev=seabios -m 512 -boot menu=on -device sdhci-pci,x-drive=drive0 -drive id=drive0,if=none,file=my_simulated_sd -device nec-usb-xhci,id=xhci -device usb-storage,bus=xhci.0,drive=drive1 -drive id=drive1,if=none,file=my_installer_media -device usb-kbd,bus=xhci.0

More information about the SeaBIOS mailing list