Flashing the libreboot modified flash.img that cros-flash-replace creates to my c201 2GB model using the "internal" method leaves it in a broken state.
Restoring the back up externally, making a new libreboot modified flash.img, and flashing it externally leaves it in the same broken state.
Connecting to the serial on the servo header, I get this output:
coreboot-3ba8246-dirty Wed Sep 7 20:49:58 UTC 2016 bootblock starting...
Exception handlers installed.
Configuring PLL at ff760030 with NF = 99, NR = 2 and NO = 2 (VCO = 1188000KHz, output = 594000KHz)
Configuring PLL at ff760020 with NF = 32, NR = 1 and NO = 2 (VCO = 768000KHz, output = 384000KHz)
Translation table is @ ff700000
Mapping address range [0x00000000:0x00000000) as uncached
Creating new subtable @ff716c00 for [0xff700000:0xff800000)
Mapping address range [0xff700000:0xff718000) as writethrough
Configuring PLL at ff760000 with NF = 75, NR = 1 and NO = 1 (VCO = 1800000KHz, output = 1800000KHz)
SF: Detected GD25Q32(B) with sector size 0x1000, total 0x400000
CBFS @ 20000 size e0000
CBFS: 'Master Header Locator' located CBFS at [20000:100000)
CBFS: Locating 'fallback/romstage'
CBFS: Found @ offset 80 size 59e4
coreboot-3ba8246-dirty Wed Sep 7 20:49:58 UTC 2016 romstage starting...
RAM Config: 2.
My best guess is that a new depthcharge/coreboot/firmware bundle has been released by the ChromeOS team which breaks the cros-flash-replace script or that it won't play well with the old builds of coreboot.img and ro-frid.img.
how can i tell which coreboot firmware is installed on a book? I restored a chromebook to stable channel, cros 12239.67.0
recovery screen info:
TPM: fwver=0x00020003 kernver=0x00030002
read-only firmware id: Google_Veyron_Speedy.6588.92.0
active firmware id: Google_Veyron_Speedy.6588.92.0
if i boot normally, it shows:
active firmware id: Google_Veyron_Speedy.6588.237.0
Is it safe to flash internally? Or maybe restore an older cros version?
Thank you for your great work.
Update: libreboot flashes fine on pinned 76 on a 4GB c201p
Tried to attach the crossystem --all output from a 4GB lotus red c201pa with matte screen but it's not allowed.
I have another c201pa with 2gb in navy blue with glossy screen and libreboot already flashed, a beaglebone black for external flashing and a pl2303.
If you need me to test anything on those devices, just let me know.
Hey @riwale sorry for the late response, I didn't get any notifications that you commented on this :/
Very interesting that the current libreboot works with version 76.
The current libreboot isn't actually a full ROM image for the c201, it just patches what is already present on the c201s rom. This leads to issues with what versions of cros coreboot are "safe" to use libreboot with. I'm working on getting a full ROM image for the c201 built for libreboot. I have a few different c201s laying around but I'm sure there are many models so I'd definitely be interested in getting testers that have external flashers. I'll post here and on #libreboot when I have something.
Yes, if you let chromeos update the firmware to version 237 it will work for sure, flashed a dozen of books like this.
To add to this, i will surely look further into flashing those because i still have those handful of c100p lying around.
This page is a goldmine for chromebook bios related stuff: https://johnlewis.ie/page/2/
you can f.e. use kpartx to read the partitions of the bios image (there was a better tool but i don't remember).
The update script in libreboot only stubbornly applies a layout table and doesn't check beforehand how partitions are handled in the current flash.img. Maybe you remember the tool to simply dump the partition structure and check whether it is in the expected range.
if you have a bricked c201p, please read the flashmap using https://github.com/dhendrix/flashmap
for reference, working partition layout: https://pastebin.com/pkkj7jk7