1NVRAMTOOL(8)                System Manager's Manual               NVRAMTOOL(8)
2
3
4

NAME

6       nvramtool - read/write coreboot-related information
7

SYNOPSIS

9       nvramtool [OPTS] [-n] -r NAME
10       nvramtool [OPTS] -e NAME
11       nvramtool [OPTS] -a
12       nvramtool [OPTS] -w NAME=VALUE
13       nvramtool [OPTS] -p INPUT_FILE
14       nvramtool [OPTS] -i
15       nvramtool [OPTS] -c [VALUE]
16       nvramtool [OPTS] -l [ARG]
17       nvramtool [OPTS] -d
18       nvramtool [OPTS] -Y
19       nvramtool [OPTS] -b OUTPUT_FILE
20       nvramtool [OPTS] -B INPUT_FILE
21       nvramtool [OPTS] -x
22       nvramtool [OPTS] -X DUMPFILE
23       nvramtool [OPTS] -v
24       nvramtool [OPTS] -h
25

DESCRIPTION

27       nvramtool is a utility for reading/writing coreboot parameters and dis‐
28       playing information from the coreboot table.
29
30       The coreboot table resides in low physical memory.  It  is  created  at
31       boot  time by coreboot, and contains various system information such as
32       the type of mainboard in use.  It specifies locations in the CMOS (non‐
33       volatile RAM) where the coreboot parameters are stored.
34
35       This  program  is  intended  for (x86-based) systems that use coreboot.
36       For information about coreboot, see
37       https://www.coreboot.org/.
38

PARAMETERS

40       [-n] -r NAME
41              Show the value of the coreboot parameter given by NAME.   If  -n
42              is  specified, show only the value.  Otherwise show both parame‐
43              ter name and value.
44
45       -e NAME
46              Show all possible values for parameter given by NAME.
47
48       -a     Show the names and values for all coreboot parameters.
49
50       -w NAME=VALUE
51              Assign VALUE to coreboot parameter given by NAME.
52
53       -p INPUT_FILE
54              Assign values to coreboot parameters according to  the  contents
55              of INPUT_FILE.  The format of this file is described below.
56
57       -i     This  is  similar  to the -p option, except that the contents of
58              the input file are taken from standard input.
59
60       -c [VALUE]
61              If VALUE is present then set the CMOS checksum for the  coreboot
62              parameters to VALUE.  Otherwise, show the checksum value.
63
64       -l [ARG]
65              If  ARG is present then show information from the coreboot table
66              as specified by ARG.  Otherwise show  all  possible  values  for
67              ARG.
68
69       -d     Do a low-level dump of the coreboot table.
70
71       -Y     Write CMOS layout information to standard output.  If redirected
72              to a file, the layout information may be used as input  for  the
73              '-y LAYOUT_FILE' option (see below).
74
75       -b OUTPUT_FILE
76              Write  the  contents  of  CMOS  memory  to  the binary file OUT‐
77              PUT_FILE.  The first 14 bytes  of  OUTPUT_FILE  do  not  contain
78              actual  CMOS  data,  and  are  always written as zeros.  This is
79              because the first 14 bytes of the CMOS area do not contain  CMOS
80              memory.   These  bytes  are involved with the functioning of the
81              real time clock.
82
83       -B INPUT_FILE
84              Read binary data from INPUT_FILE and write the data to CMOS mem‐
85              ory.   The  first 14 bytes of INPUT_FILE are skipped and data is
86              written to CMOS starting at the 15th  byte  of  the  CMOS  area.
87              This  is because the first 14 bytes of the CMOS area do not con‐
88              tain CMOS memory.  These bytes are involved with the functioning
89              of the real time clock.
90
91       -x     Show  a  hex  dump  of all CMOS data.  The first 14 bytes of the
92              dump do not contain actual CMOS data, and are  always  shown  as
93              zeros.   This  is because the first 14 bytes of the CMOS area do
94              not contain CMOS memory.  These  bytes  are  involved  with  the
95              functioning of the real time clock.
96
97       -X DUMPFILE
98              Read  binary data from DUMPFILE (presumably a CMOS dumpfile cre‐
99              ated using the -b OUTPUT_FILE option) and show a hex dump of the
100              data.
101
102       -v     Show version information for this program.
103
104       -h     Show a help message for this program.
105

OPTIONS

107       In all cases above, [OPTS] evaluates to the following:
108
109           [-y LAYOUT_FILE | -t]
110
111       The  '-y  LAYOUT_FILE'  option  tells  nvramtool  to obtain CMOS layout
112       information from the  contents  of  LAYOUT_FILE.   Likewise,  the  '-t'
113       option  tells nvramtool to obtain CMOS layout information from the CMOS
114       option table (contained within the coreboot table).  If neither  option
115       is  specified,  the  CMOS option table is used by default.  LAYOUT_FILE
116       follows the format of the cmos.layout files provided by coreboot.
117
118       If the coreboot installed on your system was built  without  specifying
119       CONFIG_HAVE_OPTION_TABLE,  then  the  coreboot table will not contain a
120       CMOS option table.  In this case, the '-y LAYOUT_FILE' option  must  be
121       used.
122
123       These  two  options  are silently ignored when used in combination with
124       other options (such as -h, for instance) for which they are not  appli‐
125       cable.
126

FILE FORMAT

128       For  the -p option, INPUT_FILE must consist of a sequence of lines such
129       that each line is either a blank line, a comment, or an assignment.   A
130       blank  line consists only of zero or more whitespace characters (spaces
131       and tabs).  A comment is constructed as follows:
132
133           [ws]#[text]
134
135       Here, [ws] indicates optional whitespace characters  and  [text]  indi‐
136       cates  optional  text.   Blank lines and comments are both ignored.  An
137       assignment is constructed as follows:
138
139           [ws]NAME[ws]=[ws]VALUE[ws]
140
141       Here, NAME is the name of a coreboot parameter and VALUE is  the  value
142       that  will be assigned to NAME.  VALUE is allowed to contain whitespace
143       characters, but it must begin and end  with  nonwhitespace  characters.
144       Note that each comment must appear on a line by itself.  If you attempt
145       to add a comment to the end of an assignment, then the comment will  be
146       interpreted  as part of VALUE.  It is useful to observe that the output
147       produced by both the -a and the '[-n] NAME' options (without -n  speci‐
148       fied) adheres to this file format.
149

BUGS

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

AUTHORS

158       David S. Peterson <dsp@llnl.gov> <dave_peterson@pobox.com>
159       Stefan Reinauer <stepan@coresystems.de>
160
161
162
163                                September 2008                    NVRAMTOOL(8)
Impressum