CMOS.layout guide

From coreboot
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

The wiki is being retired!

Documentation is now handled by the same processes we use for code: Add something to the Documentation/ directory in the coreboot repo, and it will be rendered to https://doc.coreboot.org/. Contributions welcome!

CMOS layout

This page explain the workings of the CMOS layout file. The CMOS layout file can be linked into a board specific environment. By creating the cmos.layout file in the board directory. and set the HAVE_OPTION_TABLE in the Kconfig file of the board.

The CMOS layout file must contain the following sections;

  • entries
  • enumerations
  • checksums

The hash (#) character is the comment prefix, all characters until the eof of line are treated as comment.

entries section

enumerations section

checksums section

The checksums section has one variable with three parameters;

 checksum <startbit> <endbit> <start-of-checksumbit>

The <startbit> parameter is the bit position where the calculation of the checksum starts from.

The <endbit> parameter is the bit position there the calculation of the checksum starts on.

The <start-of-checksumbit> parameter is the bit position there the checksum will be stored, there must be space for 16 bits of checksum data.

Example;

 checksum 392 983 984

Example cmos.layout file