You are not logged in.

#1 2016-07-20 04:23:51

alaskanarcher
Member
Registered: 2016-04-30
Posts: 50

[solved] Acer Chromebook CB3-431, Cannot Boot

I am attempting to install Arch onto my Acer Chromebook CB3-431, for which I cannot find any guides.

Problem:
I have installed everything correctly to the best of my knowledge but when I reboot without the live USB plugged in, no bootable media can be found and I get the following:

Booting from Floppy...
Boot failed: could not read the boot disk

Booting from Hard Disk...
Boot failed: could not read the boot disk

No bootable device. Retrying in 60 seconds.


Install details:
In Chrome OS, I disabled the hw and sw write protection and ran John Lewis's script using the safest option which is called RW_LEGACY.
I am using GPT, GRUB, and I am installing Arch on ZFS root. I have successfully installed Arch on ZFS in virtual boxes manually before but this time I used the ALEZ script to install ZFS. I read the entire script before running it.

Here are all the block devices (sda is the usb drive from which I am booting):

# lsblk
NAME          MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda             8:0    1 59.6G  0 disk
└-sda1          8:1    1 59.6G  0 part /run/archiso/bootmnt
loop0           7:0    0  325M  1 loop /run/archiso/sfs/airootfs
mmcblk0rpmb   179:24   0    4M  0 disk
mmcblk0boot0  179:8    0    4M  1 disk
mmcblk0boot1  179:16   0    4M  1 disk
mmcblk0       179:0    0 29.1G  0 disk
├-mmcblk0p1   179:1    0    1M  0 part
└-mmcblk0p2   179:2    0 29.1G  0 part

Here is my partition scheme of /dev/mmcblk0:

# fdisk -l /dev/mmcblk0
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: E1EA4E7C-658C-47DE-9836-10952852C1C2

Device         Start      End  Sectors  Size Type
/dev/mmcblk0p1  2048     4095     2048    1M BIOS boot
/dev/mmcblk0p2  4096 61069311 61065216 29.1G EFI System

I installed GRUB onto /dev/mmcblk0.

I wonder if the problem has anything to do with the other mmcblk0* partitions: mmcblk0boot0, mmcblk0boot1, mmcblk0rpmb.

Due diligence:
I have read everything in these Arch wikis thoroughly:
- ZFS
- Installing Arch Linux on ZFS
- Chrome OS Devices
- Acer C720 Chromebook

EDIT: SOLUTION:
This was a firmware issue/limitation that prevented booting form the internal emmc. I'm not sure if John Lewis has updated his firmware to fix this issue but I recommend using Matt Devo's firmware (AKA Mr. Chromebox), as it appears to be better supported and definitely loads faster.

I have now been happily using this Acer Chromebook 14 with Arch Linux and i3wm for my mobile work computer for the past 2/3 months.

Last edited by alaskanarcher (2016-12-07 12:18:00)

Offline

#2 2016-07-21 07:15:37

knotic
Member
Registered: 2015-12-03
Posts: 7

Re: [solved] Acer Chromebook CB3-431, Cannot Boot

Hi!

As far as I know, the ROMs for the Braswell Chromebooks don't support booting off the internal eMMC yet, so you have to put at least the /boot-partition (as well as the bootloader) on the USB-Stick (SD-Card might work too, have not tried it, though).

The bigger problem I have with Arch is the non-working internal keyboard, which I suspect has to do with the "CONFIG-SERIO-*" kernel compilation options being set to "m". Some distros such as Debian and Fedora 24, which have this options set to "y", give me a working keyboard.

Unfortunately, I have not found a way to reset/reload the kernel modules on Arch after boot, that unlocked the keyboard. I went with Debian for now.

Offline

#3 2016-07-21 17:21:51

alaskanarcher
Member
Registered: 2016-04-30
Posts: 50

Re: [solved] Acer Chromebook CB3-431, Cannot Boot

Thank you so much for your reply.

I won't have time to play with this for another week probably but I'll be trying to research in the meantime.

How would you recommend learning about my specific Chromebook hardware?
Where would I find details about what the ROM for Braswell Chromebooks does support for booting options?
How did you learn about the kernel compilation options regarding the keyboard?
Does that mean that I could theoretically recompile the kernel with the correct option? Of course would that also mean that I can't enjoy the rolling releases?

Thank you again!

Offline

#4 2016-07-22 17:10:23

knotic
Member
Registered: 2015-12-03
Posts: 7

Re: [solved] Acer Chromebook CB3-431, Cannot Boot

Well, regarding the ROM, I got all my information from John Lewis' site. Here is his latest post concerning progress on Braswell machines, where he talks about the current shortcomings (sound being another problem I was not able to solve yet, on any distribution).

Your machine does not seem to have an SD-card slot, so booting off an USB-Stick is your only option for now (if you get a low profile one, it only sticks out a few milimeters, making this setup workable).

Regarding the kernel compilation flags: this is just conjecture on my side, as it was the only glaring difference between the distro that did result in a working keyboard and those that did not. I have not tried compiling a custom kernel with these options, because of the drawbacks you mentioned.

I'm sure there is some way to get the keyboard working on Arch with the stock kernel, so if you happen to stumble upon a solution, I would be very interested in hearing about it!

Offline

#5 2016-07-23 13:27:38

alive4ever
Member
Registered: 2016-07-10
Posts: 65

Re: [solved] Acer Chromebook CB3-431, Cannot Boot

alaskanarcher wrote:

I am attempting to install Arch onto my Acer Chromebook CB3-431, for which I cannot find any guides.

Problem:
I have installed everything correctly to the best of my knowledge but when I reboot without the live USB plugged in, no bootable media can be found and I get the following:

Booting from Floppy...
Boot failed: could not read the boot disk

Booting from Hard Disk...
Boot failed: could not read the boot disk

No bootable device. Retrying in 60 seconds.

# lsblk
NAME          MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda             8:0    1 59.6G  0 disk
└-sda1          8:1    1 59.6G  0 part /run/archiso/bootmnt
loop0           7:0    0  325M  1 loop /run/archiso/sfs/airootfs
mmcblk0rpmb   179:24   0    4M  0 disk
mmcblk0boot0  179:8    0    4M  1 disk
mmcblk0boot1  179:16   0    4M  1 disk
mmcblk0       179:0    0 29.1G  0 disk
├-mmcblk0p1   179:1    0    1M  0 part
└-mmcblk0p2   179:2    0 29.1G  0 part

Here is my partition scheme of /dev/mmcblk0:

# fdisk -l /dev/mmcblk0
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: E1EA4E7C-658C-47DE-9836-10952852C1C2

Device         Start      End  Sectors  Size Type
/dev/mmcblk0p1  2048     4095     2048    1M BIOS boot
/dev/mmcblk0p2  4096 61069311 61065216 29.1G EFI System

I installed GRUB onto /dev/mmcblk0.

I wonder if the problem has anything to do with the other mmcblk0* partitions: mmcblk0boot0, mmcblk0boot1, mmcblk0rpmb.

Due diligence:
I have read everything in these Arch wikis thoroughly:
- ZFS
- Installing Arch Linux on ZFS
- Chrome OS Devices
- Acer C720 Chromebook

On UEFI based system, EFI System partition/ESP (0xEF00) should be formatted with FAT 32 filesystem. This partition is meant only to store boot related files, such as grubx64.efi, shellx64.efi. refind.efi, and systemd-bootx64.efi. The ESP doesn't need to be large, 256MB is enough.

You must create a separate root partition to hold Arch Linux files. Then, install grub for  both x86_64-efi and i386-pc using EFI System as boot directory. You may mount ESP on /boot for convenience (define the mountpoint on /etc/fstab file).

You should also install an EFI Boot Manager, such as systemd's bootctl or refind-efi to make UEFI booting easier.

Offline

#6 2016-08-30 09:51:17

JohnFiddle
Member
Registered: 2016-08-28
Posts: 1

Re: [solved] Acer Chromebook CB3-431, Cannot Boot

Hello alaskanarcher,

I found your post which supported me when I was trying to install native Fedora on the same machine. Without this thread I probably would not have come that far. Thanks to you!
Before I almost gave up seeing the same message as you, I gave it one last try:

What solved the Boot-Problem for me was simply:
Removing ALL partitions on the internal eMMC (displayed as SD-Card in Diskmanager) even those named "EFI Boot", "BIOS BOOT" and more small, labelless partitions.
That was more by an accident. I rebooted believing this would be the last time this machine would work (what to do without EFI?) but magically it booted the native Linux via SeaBIOS.


Be aware:
1. There is no guarantee that this will work on your machine too (I assume should!)
2. Because I was afraid of accidentally removing all partitions and it would probably never boot again when restarting, I opened the case again while beeing booted in the Live-CD(/USB)-Setup, and removed all screws from the board (because since yet I do not know what specific screw disables the write-protection) to run the SeaBIOS Setup again.


TLDR;
These steps solved the boot-problem for me on my CB3-431:
(This requires one to already have installed SeaBios and is able to boot from USB. Maybe step 7 is not necessary, but IF it is - you may brick your chromebook if you do not follow it)

1. Open the case to remove the HW-Protection screw (on other chromebooks it could be a jumper)
2. Boot a Live-Linux from USB-Stick
3. Remove all(!) Partitions from the eMMC, so there is only 1 empty unassigned space
4. Run Linux-Setup
5. Install Linux with automated partitioning (result could be: 3 partitions: System, Swap, Bootloader)
6. After finishing setup do NOT shutdown
7. Run JohnLewis' SeaBIOS-script again using the 1. Option (RW_LEGACY)
8. Reboot your system & (hopefully) enjoy your native tux booting directly from eMMC via SeaBios! :)

Additional information:
- I removed the Chrome-OS and any relating data, but still see the "ChromeOS-Dev-Mode Screen" on startup. (Seems unfixable to me?)
- Once before, in ChromeOSb JohnLewis' script offered me 3 Options ("based on the device" it said) while in Linux the same script only offered the 1. option (so one may never ever try the other ones..!)
- Audio still isn't working since there is no device shown in the system. (I will try to fix this soon and put the results here, if you backed up your ChromeOS data it would be great if you could send me the original "asound.state"-file because I miss it)
- Showing the Bootloader (Grub2 with fedora) is incredibly slow (means: printing char by char takes a minute or so) - I address this problem to SeaBIOS - maybe someone knows a fix for it. If I find one I will post it here.
- Your CB's Hotkeys may not work but it is very easy to fix (I used gnome-tweak-tool and the System-internal Keyboard-Shortcuts)
- I do not use Dualboot
- My Keyboard / Touchpad works
- On some distros you may need to improve touchpad sensitivity
- Most distros offer a built-in feature to enable "touch-click"
- It can be very important, that you perform [Setup & SeaBIOS-Install (without HW-Protection) & eMMC-wipe] in ONE STEP and avoid any reboot before finished!

Why screw with the screw?
JohnLewis' script does install some preconfigured magic that allows you to access boot-options to boot from USB. If you remove all partitions from the eMMC it COULD BE that this also deletes the SeaBIOS and EFI. There are partitions labeled suspicious important as you would never like to touch them (e.g. "EFI-System"). If you would shutdown after the linux-setup when you formatted the eMMC it's likely that you have no further option to boot from USB/eMMC. I work with computers for dozens of years now but it's very very rare that you ever face a situation where you really can brick a system without being possible to recover it by replacing some of its parts (HW/SW). This is why I repeatly write about that in this post. I do not know, if this is the case, and you can destroy the chromebook but on the other hand I cannot exclude it yet either. All these operations deserve serious attention!

I would be happy to hear if this worked for you, but however I cannot give any guarantees that this won't brick your edgar...

Cheers,
John

Last edited by JohnFiddle (2016-08-30 17:05:39)

Offline

#7 2016-09-17 01:11:57

Misanthrop
Member
Registered: 2013-06-25
Posts: 7

Re: [solved] Acer Chromebook CB3-431, Cannot Boot

Today I faced the same problem.
It seems SeaBios does not want to run system from GPT eMMC. So just switch to MBR using fdisk.
It works for me with syslinux boot loader.

My current fdisk -l /dev/mmcblk0 output:

Disk /dev/mmcblk0: 29.1 GiB, 31268536320 bytes, 61071360 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x3e6b0fe1

Device         Boot  Start      End  Sectors  Size Id Type
/dev/mmcblk0p1 *      2048   264191   262144  128M 83 Linux
/dev/mmcblk0p2      264192 61071359 60807168   29G 83 Linux

Last edited by Misanthrop (2016-09-17 15:26:55)

Offline

#8 2016-12-31 00:20:32

ubmattpangolin
Member
Registered: 2016-12-31
Posts: 1

Re: [solved] Acer Chromebook CB3-431, Cannot Boot

Hey,

I'm installing archlinux on this very same model. So far everything is coming along, except for the sound. Did you get the sound to work? If so, was there anything specific that you had to do?

Offline

#9 2016-12-31 00:58:55

alaskanarcher
Member
Registered: 2016-04-30
Posts: 50

Re: [solved] Acer Chromebook CB3-431, Cannot Boot

Sound does not yet work on this Chromebook. Gallium OS attempts to be compatible with Chromebooks and I keep an eye on their issue tracker for this Chromebook. https://github.com/GalliumOS/galliumos- … issues/270

Offline

Board footer

Powered by FluxBB