Zerocat’s Coreboot Machines  v0.9.2
How to create Zerocat’s Coreboot Machines like the ZC-X200 and others...
Remind CMOS Checksum Reset

Main Page | Related Pages | List of Files

When flashing a coreboot image onto an old Already-Running-With-Coreboot-Machine, remember to reset the CMOS Checksum and

  • pull the coin battery
  • or use sudo ./nvramtool -c 0x00.

The machine will then be forced to initialize the CMOS with its new values upon reboot.

Example Issue

(This applies to coreboot git commit dfeb1c4da9be7ac97bd31f580ff2fff0c4b3256e.)

Coreboot Settings

$ make menuconfig
  • Select: General Setup/ Include the coreboot .config file into the ROM image
  • Select: Mainboard/ Mainboard vendor (Lenovo)
  • Select: Mainboard/ Mainboard model (ThinkPad X60)
  • Select: Mainboard/ ROM chip size (2MB)
  • Select: Console/ Use onboard VGA as primary video device
  • Deselect: Console/ Send console output to a CBMEM buffer
  • Select: Devices/ Display (Framebuffer mode high resolution)
  • Select: Payload/ Add a Payload: An ELF executable payload.
  • Select: Payload/ (grub.elf) Payload path and filename.

Result

The coreboot.rom works fine on X60s systemboards (with L2400 CPU), but has weird screen results and a dead TrackPoint on X60 machines (T2400 CPU).

  • This has been tested with a default Seabios payload, Trackpoint dead as well. commit id dfeb1c4.
  • Tested without microcode blob, same result.
  • Tested with an old libreboot image (as of 2014?): Everything works fine!

Q: Hmmm, after flashing a bigger coreboot.rom with lots of debug features, a dedicated lean X60 rom could be flashed with flashrom and works fine. Why?

A: I guess CMOS needs to initialized on each boot, let’s configure the ROM that way. But then, let’s deselect setting "initialize CMOS at each boot" again! If you want to force CMOS to be initialized, you can reset the CMOS checksum and then reboot, i.e.:

$ sudo ./nvramtool -c 0x000

Main Page | Related Pages | List of Files