Provided by: coreboot-utils_4.15~dfsg-2_amd64 bug

NAME

       nvramtool - read/write coreboot-related information

SYNOPSIS

       nvramtool [OPTS] [-n] -r NAME
       nvramtool [OPTS] -e NAME
       nvramtool [OPTS] -a
       nvramtool [OPTS] -w NAME=VALUE
       nvramtool [OPTS] -p INPUT_FILE
       nvramtool [OPTS] -i
       nvramtool [OPTS] -c [VALUE]
       nvramtool [OPTS] -l [ARG]
       nvramtool [OPTS] -d
       nvramtool [OPTS] -Y
       nvramtool [OPTS] -b OUTPUT_FILE
       nvramtool [OPTS] -B INPUT_FILE
       nvramtool [OPTS] -x
       nvramtool [OPTS] -X DUMPFILE
       nvramtool [OPTS] -v
       nvramtool [OPTS] -h

DESCRIPTION

       nvramtool  is a utility for reading/writing coreboot parameters and displaying information
       from the coreboot table.

       The coreboot table resides in low  physical  memory.   It  is  created  at  boot  time  by
       coreboot,  and  contains  various system information such as the type of mainboard in use.
       It specifies locations in the CMOS (nonvolatile RAM) where  the  coreboot  parameters  are
       stored.

       This program is intended for (x86-based) systems that use coreboot.  For information about
       coreboot, see
       https://www.coreboot.org/.

PARAMETERS

       [-n] -r NAME
              Show the value of the coreboot parameter given by NAME.  If -n is  specified,  show
              only the value.  Otherwise show both parameter name and value.

       -e NAME
              Show all possible values for parameter given by NAME.

       -a     Show the names and values for all coreboot parameters.

       -w NAME=VALUE
              Assign VALUE to coreboot parameter given by NAME.

       -p INPUT_FILE
              Assign  values to coreboot parameters according to the contents of INPUT_FILE.  The
              format of this file is described below.

       -i     This is similar to the -p option, except that the contents of the  input  file  are
              taken from standard input.

       -c [VALUE]
              If  VALUE  is  present  then  set  the CMOS checksum for the coreboot parameters to
              VALUE.  Otherwise, show the checksum value.

       -l [ARG]
              If ARG is present then show information from the coreboot  table  as  specified  by
              ARG.  Otherwise show all possible values for ARG.

       -d     Do a low-level dump of the coreboot table.

       -Y     Write  CMOS  layout  information  to standard output.  If redirected to a file, the
              layout information may be used as  input  for  the  '-y  LAYOUT_FILE'  option  (see
              below).

       -b OUTPUT_FILE
              Write  the  contents  of  CMOS memory to the binary file OUTPUT_FILE.  The first 14
              bytes of OUTPUT_FILE do not contain actual CMOS data, and  are  always  written  as
              zeros.   This  is  because  the first 14 bytes of the CMOS area do not contain CMOS
              memory.  These bytes are involved with the functioning of the real time clock.

       -B INPUT_FILE
              Read binary data from INPUT_FILE and write the data to CMOS memory.  The  first  14
              bytes  of  INPUT_FILE  are skipped and data is written to CMOS starting at the 15th
              byte of the CMOS area.  This is because the first 14 bytes of the CMOS area do  not
              contain  CMOS  memory.   These  bytes are involved with the functioning of the real
              time clock.

       -x     Show a hex dump of all CMOS data.  The first 14 bytes of the dump  do  not  contain
              actual  CMOS  data,  and  are  always shown as zeros.  This is because the first 14
              bytes of the CMOS area do not contain CMOS memory.  These bytes are  involved  with
              the functioning of the real time clock.

       -X DUMPFILE
              Read  binary  data  from  DUMPFILE (presumably a CMOS dumpfile created using the -b
              OUTPUT_FILE option) and show a hex dump of the data.

       -v     Show version information for this program.

       -h     Show a help message for this program.

OPTIONS

       In all cases above, [OPTS] evaluates to the following:

           [-y LAYOUT_FILE | -t]

       The '-y LAYOUT_FILE' option tells nvramtool to obtain CMOS  layout  information  from  the
       contents  of LAYOUT_FILE.  Likewise, the '-t' option tells nvramtool to obtain CMOS layout
       information from the CMOS option table (contained within the coreboot table).  If  neither
       option  is  specified,  the CMOS option table is used by default.  LAYOUT_FILE follows the
       format of the cmos.layout files provided by coreboot.

       If   the   coreboot   installed   on   your   system   was   built   without    specifying
       CONFIG_HAVE_OPTION_TABLE,  then  the  coreboot table will not contain a CMOS option table.
       In this case, the '-y LAYOUT_FILE' option must be used.

       These two options are silently ignored when used in combination with other  options  (such
       as -h, for instance) for which they are not applicable.

FILE FORMAT

       For  the  -p option, INPUT_FILE must consist of a sequence of lines such that each line is
       either a blank line, a comment, or an assignment.  A blank line consists only of  zero  or
       more whitespace characters (spaces and tabs).  A comment is constructed as follows:

           [ws]#[text]

       Here,  [ws]  indicates  optional whitespace characters and [text] indicates optional text.
       Blank lines and comments are both ignored.  An assignment is constructed as follows:

           [ws]NAME[ws]=[ws]VALUE[ws]

       Here, NAME is the name of a coreboot parameter  and  VALUE  is  the  value  that  will  be
       assigned  to  NAME.   VALUE is allowed to contain whitespace characters, but it must begin
       and end with nonwhitespace characters.  Note that each comment must appear on  a  line  by
       itself.   If  you  attempt  to add a comment to the end of an assignment, then the comment
       will be interpreted as part of VALUE.  It is useful to observe that the output produced by
       both  the  -a  and  the  '[-n]  NAME'  options (without -n specified) adheres to this file
       format.

BUGS

       This program does not implement any type  of  synchronization  to  ensure  that  different
       processes   don't  stomp  on  each  other  when  trying  to  access  the  nonvolatile  RAM
       simultaneously.  Therefore, corruption of the BIOS parameter values may occur if  multiple
       instances of this program are executed concurrently.

AUTHORS

       David S. Peterson <dsp@llnl.gov> <dave_peterson@pobox.com>
       Stefan Reinauer <stepan@coresystems.de>

                                          September 2008                             NVRAMTOOL(8)