eeprom - EEPROM display and load utility
/usr/sbin/eeprom [-] [-f device] [parameter[=value]]
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 based systems implement firmware password protection with
eeprom, using the
security-mode,
security-password and
security-#badlogins properties.
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.
-f device
Use device as the EEPROM device.
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.
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(1M),
kadb(1M) and kernel(1M).
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.
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.
/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.
passwd(1),
sh(1),
svcs(1),
tip(1),
uname(1),
boot(1M),
kadb(1M),
kernel(1M),
init(1M),
svcadm(1M),
attributes(5),
smf(5)
OpenBoot 3.x Command Reference Manual