EEPROM(8) Maintenance Commands and Procedures EEPROM(8)
NAME
eeprom - EEPROM display and load utility
SYNOPSIS
/usr/sbin/eeprom [
-] [
-f device] [
parameter[=
value]]
DESCRIPTION
eeprom displays or changes the values of parameters in the
EEPROM. It
processes parameters in the order given. When processing a
parameter accompanied by a
value,
eeprom makes the indicated alteration to the
EEPROM; otherwise, it displays the
parameter's value. When given no
parameter specifiers,
eeprom displays the values of all
EEPROM parameters. A `-
' (hyphen) flag specifies that parameters and values
are to be read from the standard input (one
parameter or
parameter=value per line).
Only the super-user may alter the
EEPROM contents.
eeprom verifies the
EEPROM checksums and complains if they are
incorrect.
platform-name is the name of the platform implementation and can be
found using the
-i option of
uname(1).
SPARC
SPARC based systems implement firmware password protection with
eeprom, using the
security-mode,
security-password and
security-#badlogins properties.
x86 EEPROM storage is simulated using a file residing in the platform-
specific boot area. The
/boot/solaris/bootenv.rc file simulates
EEPROM storage.
Because x86 based systems typically implement password protection in
the system
BIOS, there is no support for password protection in the
eeprom program. While it is possible to set the
security-mode,
security-password and
security-#badlogins properties on x86 based
systems, these properties have no special meaning or behavior on x86
based systems.
OPTIONS
-f device Use
device as the
EEPROM device.
OPERANDS
x86 Only acpi-user-options A configuration variable that controls the use of Advanced
Configuration and Power Interface (ACPI), a power management
specification. The acceptable values for this variable depend on
the release of the Solaris operating system you are using.
For all releases of Solaris 10 and Solaris 11, a value of of
0x0 means that there will be an attempt to use ACPI if it is
available on the system. A value of
0x2 disables the use of ACPI.
For the Solaris 10 1/06 release, a value of
0x8 means that there
will be an attempt to use ACPI in a mode compatible with previous
releases of Solaris 10 if it is available on the system. The
default for Solaris 10 1/06 is
0x8.
For releases of Solaris 10 after the 1/06 release and for Solaris
11, the default is
0x0.
Most users can safely accept the default value, which enables
ACPI if available. If issues related to the use of ACPI are
suspected on releases of Solaris after Solaris 1/06, it is
suggested to first try a value of
0x8 and then, if you do not
obtain satisfactory results,
0x02.
console Specifies the console device. Possible values are
ttya,
ttyb,
ttyc,
ttyd, and
text. In
text mode, console output goes to the
frame buffer and input comes from the keyboard. For SPARC, when
this property is not present, the console device falls back to
the device specified by
input-device and
output-device. When
neither the console property or the
input-device and
output- device property pair are present, the console defaults to the
frame buffer and keyboard.
os_console While
console controls both boot loader and kernel console,
setting
os_console allows setting console device only for kernel.
Values are the same as for
console.
diag-device The
diag-device is currently implemented to support serial port
as output for system early boot diagnostic messages and input and
output for
kmdb debugger. For early boot, all the console
messages are mirrored to
diag-device, until the console drivers
are loaded. After that, only
kmdb will continue to use the
diag- device.
segkpsize Specifies the amount in
bytes of kernel pageable memory
available. Increasing this variable allows either larger stacks
for the same number of kernel threads or more kernel threads, by
default this value is
0x80000000 (2GiB). If the value specified
exceeds the size of physical memory it will be automatically
capped to that.
Valid Ranges: 0xC800000 - 0x200000000(200MiB - 8GiB)
NVRAM CONFIGURATION PARAMETERS
Not all OpenBoot systems support all parameters. Defaults vary
depending on the system and the
PROM revision. See the output in the
"Default Value" column of the
printenv command, as entered at the
ok (OpenBoot) prompt, to determine the default for your system.
auto-boot? If
true, boots automatically after power-on or reset. Defaults to
true.
ansi-terminal? Configuration variable used to control the behavior of the
terminal emulator. The value
false makes the terminal emulator
stop interpreting
ANSI escape sequences; instead, echoes them to
the output device. Defaults to
true.
boot-args Holds a string of arguments that are passed to the boot
subsystem. For example, you can use
boot-args=' - install dhcp' to request a customer jumpstart installation. See
boot(8),
kadb(8) and
kernel(8).
boot-command Command executed if
auto-boot? is
true. Defaults to
boot.
boot-device Device from which to boot.
boot-device may contain 0 or more
device specifiers separated by spaces. Each device specifier may
be either a prom device alias or a prom device path. The boot
prom will attempt to open each successive device specifier in the
list beginning with the first device specifier. The first device
specifier that opens successfully will be used as the device to
boot from. Defaults to
disk net.
boot-file File to boot (an empty string lets the secondary booter choose
default). Defaults to empty string.
boot-from Boot device and file (OpenBoot PROM version 1.
x only). Defaults
to
vmunix.
boot-from-diag Diagnostic boot device and file (OpenBoot PROM version 1.
x only).
Defaults to
le()unix.
boot-ncpus Configuration variable that controls the number of processors
with which the system should boot. By default, the system boots
with maximum supported number of processors.
comX-noprobe
Where
X is the number of the serial port, prevents device probe
on serial port
X. diag-device Diagnostic boot source device. Defaults to
net.
diag-file File from which to boot in diagnostic mode. Defaults to empty
string.
diag-level Diagnostics level. Values include
off,
min,
max and
menus. There
may be additional platform-specific values. When set to
off,
POST is not called. If
POST is called, the value is made available as
an argument to, and is interpreted by
POST. Defaults to
platform- dependent.
diag-switch? If
true, run in diagnostic mode. Defaults to
false on most
desktop systems,
true on most servers.
error-reset-recovery Recover after an error reset trap. Defaults to platform-specific
setting.
On platforms supporting this variable, it replaces the
watchdog- reboot?,
watchdog-sync?,
redmode-reboot?,
redmode-sync?,
sir- sync?, and
xir-sync? parameters.
The options are:
none Print a message describing the reset trap and go to OpenBoot
PROM's user interface,
aka OK prompt.
sync Invoke OpenBoot PROM's
sync word after the reset trap. Some
platforms may treat this as
none after an externally
initiated reset (
XIR) trap.
boot Reboot after the reset trap. Some platforms may treat this as
none after an
XIR trap.
fcode-debug? If
true, include name parameter for plug-in device FCodes.
Defaults to
false.
hardware-revision System version information.
input-device Input device used at power-on (usually
keyboard,
ttya,
ttyb,
ttyc, or
ttyd). Defaults to
keyboard.
keyboard-click? If
true, enable keyboard click. Defaults to
false.
keyboard-layout A string that specifies the layout name for non-self-identifying
keyboards (type 7c). Invoke
kbd -s to obtain a list of acceptable
layout names. See
kbd(1).
keymap Keymap for custom keyboard.
last-hardware-update System update information.
load-base Default load address for client programs. Default value is
16384.
local-mac-address? If true, network drivers use their own MAC address, not the
system's. Defaults to
false.
mfg-mode Manufacturing mode argument for
POST. Possible values include
off or
chamber. The value is passed as an argument to
POST. Defaults
to
off.
mfg-switch? If true, repeat system self-tests until interrupted with STOP-A.
Defaults to
false.
nvramrc Contents of NVRAMRC. Defaults to empty.
network-boot-arguments Arguments to be used by the PROM for network booting. Defaults to
an empty string.
network-boot-arguments can be used to specify
the boot protocol (RARP/DHCP) to be used and a range of system
knowledge to be used in the process.
The syntax for arguments supported for network booting is:
[
protocol,] [
key=
value,]*
All arguments are optional and can appear in any order. Commas
are required unless the argument is at the end of the list. If
specified, an argument takes precedence over any default values,
or, if booting using DHCP, over configuration information
provided by a DHCP server for those parameters.
protocol, above, specifies the address discovery protocol to be
used.
Configuration parameters, listed below, are specified as
key=
value attribute pairs.
tftp-server IP address of the TFTP server
file file to download using TFTP or URL for WAN boot
host-ip IP address of the client (in dotted-decimal notation)
router-ip IP address of the default router (in dotted-decimal notation)
subnet-mask subnet mask (in dotted-decimal notation)
client-id DHCP client identifier
hostname hostname to use in DHCP transactions
http-proxy HTTP proxy server specification (IPADDR[:PORT])
tftp-retries maximum number of TFTP retries
dhcp-retries maximum number of DHCP retries
If no parameters are specified (that is,
network-boot-arguments is an empty string), the PROM will use the platform-specific
default address discovery protocol.
Absence of the protocol parameter when other configuration
parameters are specified implies manual configuration.
Manual configuration requires that the client be provided with
all the information necessary for boot. If using manual
configuration, information required by the PROM to load the
second-stage boot program must be provided in
network-boot- arguments while information required for the second-stage boot
program can be specified either as arguments to the
boot program
or by means of the
boot program's interactive command
interpreter.
Information required by the PROM when using manual configuration
includes the booting client's IP address, name of the boot file,
and the address of the server providing the boot file image.
Depending on network configuration, it might be required that the
subnet mask and address of the default router to use also be
specified.
oem-banner Custom OEM banner (enabled by setting
oem-banner? to
true).
Defaults to empty string.
oem-banner? If
true, use custom
OEM banner. Defaults to
false.
oem-logo Byte array custom OEM logo (enabled by setting
oem-logo? to
true). Displayed in hexadecimal.
oem-logo? If
true, use custom OEM logo (else, use Sun logo). Defaults to
false.
pci-mem64? If true, the OpenBoot PROM allocates 64-bit PCI memory addresses
to a PCI device that can support 64-bit addresses.
This variable is available on SPARC platforms only and is
optional. Some versions of SunOS do not support PCI
MEM64 addresses and will fail in unexpected ways if the OpenBoot PROM
allocates PCI
MEM64 addresses.
The default value is system-dependent. If the variable exists,
the default value is appropriate to the lowest version of the
SunOS that shipped with a specific platform.
output-device Output device used at power-on (usually
screen,
ttya,
ttyb,
ttyc,
or
ttyd). Defaults to
screen.
rootpath Specifies the root device of the operating system.
sbus-probe-list Designate which SBus slots are probed and in what order. Defaults
to
0123.
screen-#columns Number of on-screen columns (characters/line). Defaults to
80.
screen-#rows Number of on-screen rows (lines). Defaults to
34.
scsi-initiator-id SCSI bus address of host adapter, range 0-7. Defaults to
7.
sd-targets Map
SCSI disk units (OpenBoot PROM version 1.
x only). Defaults to
31204567, which means that unit 0 maps to target
3, unit 1 maps
to target
1, and so on.
security-#badlogins Number of incorrect security password attempts.This property has
no special meaning or behavior on x86 based systems.
security-mode Firmware security level (options:
none,
command, or
full). If set
to
command or
full, system will prompt for
PROM security
password. Defaults to
none.This property has no special meaning
or behavior on x86 based systems.
security-password Firmware security password (never displayed). Can be set only
when
security-mode is set to
command or
full.This property has no
special meaning or behavior on x86 based systems.
example# eeprom security-password=
Changing PROM password:
New password:
Retype new password:
selftest-#megs Megabytes of
RAM to test. Ignored if
diag-switch? is
true.
Defaults to
1.
skip-vme-loopback? If
true, POST does not do VMEbus loopback tests. Defaults to
false.
st-targets Map
SCSI tape units (OpenBoot PROM version 1.
x only). Defaults to
45670123, which means that unit 0 maps to target
4, unit 1 maps
to target
5, and so on.
sunmon-compat? If
true, display Restricted Monitor prompt (>). Defaults to
false.
testarea One-byte scratch field, available for read/write test. Defaults
to
0.
tpe-link-test? Enable 10baseT link test for built-in twisted pair Ethernet.
Defaults to
true.
ttya-mode TTYA (baud rate, #bits, parity, #stop, handshake). Defaults to
9600,8,n,1,-.
Fields, in left-to-right order, are:
Baud rate: 110, 300, 1200, 4800, 9600...
Data bits: 5, 6, 7, 8
Parity: n(none), e(even), o(odd), m(mark), s(space)
Stop bits: 1, 1.5, 2
Handshake: -(none), h(hardware:rts/cts), s(software:xon/xoff)
ttyX-mode
TTYB, TTYC, or TTYD (baud rate, #bits, parity, #stop, handshake).
Defaults to
9600,8,n,1,-.
Fields, in left-to-right order, are:
Baud rate: 110, 300, 1200, 4800, 9600...
Data bits: 5, 6, 7, 8
Stop bits: 1, 1.5, 2
Parity: n(none), e(even), o(odd), m(mark), s(space)
Handshake: -(none), h(hardware:rts/cts), s(software:xon/xoff)
ttya-ignore-cd If
true, operating system ignores carrier-detect on TTYA.
Defaults to
true.
ttyX-ignore-cd
If
true, operating system ignores carrier-detect on TTYB, TTYC,
or TTYD. Defaults to
true.
ttya-rts-dtr-off If
true, operating system does not assert DTR and RTS on TTYA.
Defaults to
false.
ttyX-rts-dtr-off
If
true, operating system does not assert DTR and RTS on TTYB,
TTYC, or TTYD. Defaults to
false.
use-nvramrc? If
true, execute commands in
NVRAMRC during system start-up.
Defaults to
false.
verbosity Controls the level of verbosity of PROM messages. Can be one of
debug,
max,
normal,
min, or
none. Defaults to
normal.
version2? If
true, hybrid (1.
x/2.
x) PROM comes up in version 2.
x. Defaults
to
true.
watchdog-reboot? If
true, reboot after watchdog reset. Defaults to
false.
EXAMPLES
Example 1: Changing the Number of Megabytes of RAM.
The following example demonstrates the method for changing from one
to two the number of megabytes of
RAM that the system will test.
example#
eeprom selftest-#megs selftest-#megs=1
example# eeprom selftest-#megs=2
example#
eeprom selftest-#megs selftest-#megs=2
Example 2: Setting the auto-boot? Parameter to true.
The following example demonstrates the method for setting the
auto- boot? parameter to
true.
example#
eeprom auto-boot?=true When the
eeprom command is executed in user mode, the parameters with
a trailing question mark (?) need to be enclosed in double quotation
marks (" ") to prevent the shell from interpreting the question mark.
Preceding the question mark with an escape character (
\) will also
prevent the shell from interpreting the question mark.
example% eeprom "auto-boot?"=true Example 3: Using network-boot-arguments
To use DHCP as the boot protocol and a hostname of
abcd.example.com for network booting, set these values in
network-boot-arguments as:
example#
eeprom network-boot-arguments="dhcp,hostname=abcd.example.com" ...then boot using the command:
ok
boot net Note that network boot arguments specified from the PROM command line
cause the contents of
network-boot-arguments to be ignored. For
example, with
network-boot-arguments set as shown above, the
boot command:
ok
boot net:dhcp ...causes DHCP to be used, but the
hostname specified in
network- boot-arguments will not be used during network boot.
Example 4: Setting System Console to Auxiliary Device
The command below assigns the device
/dev/term/a as the system
console device. You would make such an assignment prior to using
tip(1) to establish a
tip connection to a host.
On a SPARC machine:
#
eeprom output-device=/dev/term/a On an x86 machine:
#
eeprom console=ttya On a SPARC machine, the preceding command would be sufficient for
assigning the console to an auxiliary device. For an x86 machine, you
might, in addition, need to set the characteristics of the serial
line, for which you would have to consult the BIOS documentation for
that machine. Also, on some x86 machines, you might use a device
other than device
a, as shown above. For example, you could set
console to
ttyb if the second serial port is present.
Example 5: Changing segkpsize.
The following example demonstrates the method for changing the number
of bytes that will be used for kernel pageable memory. Running the
following command will set segkpsize to 3GiB.
#
eeprom segkpsize=0xC0000000FILES
/boot/solaris/bootenv.rc File storing
eeprom values on x86 machines.
/dev/openprom Device file
/usr/platform/platform-name/sbin/eeprom Platform-specific version of
eeprom. Use
uname -i to obtain
platform-name.
SEE ALSO
passwd(1),
sh(1),
svcs(1),
tip(1),
uname(1),
attributes(7),
smf(7),
boot(8),
init(8),
kadb(8),
kernel(8),
svcadm(8) OpenBoot 3.x Command Reference Manual June 13, 2019 EEPROM(8)