1 EEPROM(1M) Maintenance Commands EEPROM(1M) 2 3 4 5 NAME 6 eeprom - EEPROM display and load utility 7 8 SYNOPSIS 9 /usr/sbin/eeprom [-] [-f device] [parameter[=value]] 10 11 12 DESCRIPTION 13 eeprom displays or changes the values of parameters in the EEPROM. It 14 processes parameters in the order given. When processing a parameter 15 accompanied by a value, eeprom makes the indicated alteration to the 16 EEPROM; otherwise, it displays the parameter's value. When given no 17 parameter specifiers, eeprom displays the values of all EEPROM 18 parameters. A `-' (hyphen) flag specifies that parameters and values 19 are to be read from the standard input (one parameter or 20 parameter=value per line). 21 22 23 Only the super-user may alter the EEPROM contents. 24 25 26 eeprom verifies the EEPROM checksums and complains if they are 27 incorrect. 28 29 30 platform-name is the name of the platform implementation and can be 31 found using the -i option of uname(1). 32 33 SPARC 34 SPARC based systems implement firmware password protection with eeprom, 35 using the security-mode, security-password and security-#badlogins 36 properties. 37 38 x86 39 EEPROM storage is simulated using a file residing in the platform- 40 specific boot area. The /boot/solaris/bootenv.rc file simulates EEPROM 41 storage. 42 43 44 Because x86 based systems typically implement password protection in 45 the system BIOS, there is no support for password protection in the 46 eeprom program. While it is possible to set the security-mode, 47 security-password and security-#badlogins properties on x86 based 48 systems, these properties have no special meaning or behavior on x86 49 based systems. 50 51 OPTIONS 52 -f device 53 54 Use device as the EEPROM device. 55 56 57 OPERANDS 58 x86 Only 59 acpi-user-options 60 61 A configuration variable that controls the use of Advanced 62 Configuration and Power Interface (ACPI), a power management 63 specification. The acceptable values for this variable depend on 64 the release of the Solaris operating system you are using. 65 66 For all releases of Solaris 10 and Solaris 11, a value of of 0x0 67 means that there will be an attempt to use ACPI if it is available 68 on the system. A value of 0x2 disables the use of ACPI. 69 70 For the Solaris 10 1/06 release, a value of 0x8 means that there 71 will be an attempt to use ACPI in a mode compatible with previous 72 releases of Solaris 10 if it is available on the system. The 73 default for Solaris 10 1/06 is 0x8. 74 75 For releases of Solaris 10 after the 1/06 release and for Solaris 76 11, the default is 0x0. 77 78 Most users can safely accept the default value, which enables ACPI 79 if available. If issues related to the use of ACPI are suspected on 80 releases of Solaris after Solaris 1/06, it is suggested to first 81 try a value of 0x8 and then, if you do not obtain satisfactory 82 results, 0x02. 83 84 85 console 86 87 Specifies the console device. Possible values are ttya, ttyb, 88 ttyc, ttyd, and text. In text mode, console output goes to the 89 frame buffer and input comes from the keyboard. For SPARC, when 90 this property is not present, the console device falls back to the 91 device specified by input-device and output-device. When neither 92 the console property or the input-device and output-device property 93 pair are present, the console defaults to the frame buffer and 94 keyboard. 95 96 os_console 97 98 While console controls both boot loader and kernel console, setting 99 os_console allows setting console device only for kernel. Values 100 are the same as for console. 101 102 diag-device 103 104 The diag-device is currently implemented to support serial port as 105 output for system early boot diagnostic messages and input and 106 output for kmdb debugger. For early boot, all the console messages 107 are mirrored to diag-device, until the console drivers are loaded. 108 After that, only kmdb will continue to use the diag-device. 109 110 111 NVRAM CONFIGURATION PARAMETERS 112 Not all OpenBoot systems support all parameters. Defaults vary 113 depending on the system and the PROM revision. See the output in the 114 "Default Value" column of the printenv command, as entered at the ok 115 (OpenBoot) prompt, to determine the default for your system. 116 117 auto-boot? 118 119 If true, boots automatically after power-on or reset. Defaults to 120 true. 121 122 123 ansi-terminal? 124 125 Configuration variable used to control the behavior of the terminal 126 emulator. The value false makes the terminal emulator stop 127 interpreting ANSI escape sequences; instead, echoes them to the 128 output device. Defaults to true. 129 130 131 boot-args 132 133 Holds a string of arguments that are passed to the boot subsystem. 134 For example, you can use boot-args=' - install dhcp' to request a 135 customer jumpstart installation. See boot(1M), kadb(1M) and 136 kernel(1M). 137 138 139 boot-command 140 141 Command executed if auto-boot? is true. Defaults to boot. 142 143 144 boot-device 145 146 Device from which to boot. boot-device may contain 0 or more device 147 specifiers separated by spaces. Each device specifier may be either 148 a prom device alias or a prom device path. The boot prom will 149 attempt to open each successive device specifier in the list 150 beginning with the first device specifier. The first device 151 specifier that opens successfully will be used as the device to 152 boot from. Defaults to disk net. 153 154 155 boot-file 156 157 File to boot (an empty string lets the secondary booter choose 158 default). Defaults to empty string. 159 160 161 boot-from 162 163 Boot device and file (OpenBoot PROM version 1.x only). Defaults to 164 vmunix. 165 166 167 boot-from-diag 168 169 Diagnostic boot device and file (OpenBoot PROM version 1.x only). 170 Defaults to le()unix. 171 172 173 boot-ncpus 174 175 Configuration variable that controls the number of processors with 176 which the system should boot. By default, the system boots with 177 maximum supported number of processors. 178 179 180 comX-noprobe 181 182 Where X is the number of the serial port, prevents device probe on 183 serial port X. 184 185 186 diag-device 187 188 Diagnostic boot source device. Defaults to net. 189 190 191 diag-file 192 193 File from which to boot in diagnostic mode. Defaults to empty 194 string. 195 196 197 diag-level 198 199 Diagnostics level. Values include off, min, max and menus. There 200 may be additional platform-specific values. When set to off, POST 201 is not called. If POST is called, the value is made available as an 202 argument to, and is interpreted by POST. Defaults to platform- 203 dependent. 204 205 206 diag-switch? 207 208 If true, run in diagnostic mode. Defaults to false on most desktop 209 systems, true on most servers. 210 211 212 error-reset-recovery 213 214 Recover after an error reset trap. Defaults to platform-specific 215 setting. 216 217 On platforms supporting this variable, it replaces the watchdog- 218 reboot?, watchdog-sync?, redmode-reboot?, redmode-sync?, sir-sync?, 219 and xir-sync? parameters. 220 221 The options are: 222 223 none 224 225 Print a message describing the reset trap and go to OpenBoot 226 PROM's user interface, aka OK prompt. 227 228 229 sync 230 231 Invoke OpenBoot PROM's sync word after the reset trap. Some 232 platforms may treat this as none after an externally initiated 233 reset (XIR) trap. 234 235 236 boot 237 238 Reboot after the reset trap. Some platforms may treat this as 239 none after an XIR trap. 240 241 242 243 fcode-debug? 244 245 If true, include name parameter for plug-in device FCodes. Defaults 246 to false. 247 248 249 hardware-revision 250 251 System version information. 252 253 254 input-device 255 256 Input device used at power-on (usually keyboard, ttya, ttyb, ttyc, 257 or ttyd). Defaults to keyboard. 258 259 260 keyboard-click? 261 262 If true, enable keyboard click. Defaults to false. 263 264 265 keyboard-layout 266 267 A string that specifies the layout name for non-self-identifying 268 keyboards (type 7c). Invoke kbd -s to obtain a list of acceptable 269 layout names. See kbd(1). 270 271 272 keymap 273 274 Keymap for custom keyboard. 275 276 277 last-hardware-update 278 279 System update information. 280 281 282 load-base 283 284 Default load address for client programs. Default value is 16384. 285 286 287 local-mac-address? 288 289 If true, network drivers use their own MAC address, not the 290 system's. Defaults to false. 291 292 293 mfg-mode 294 295 Manufacturing mode argument for POST. Possible values include off 296 or chamber. The value is passed as an argument to POST. Defaults to 297 off. 298 299 300 mfg-switch? 301 302 If true, repeat system self-tests until interrupted with STOP-A. 303 Defaults to false. 304 305 306 nvramrc 307 308 Contents of NVRAMRC. Defaults to empty. 309 310 311 network-boot-arguments 312 313 Arguments to be used by the PROM for network booting. Defaults to 314 an empty string. network-boot-arguments can be used to specify the 315 boot protocol (RARP/DHCP) to be used and a range of system 316 knowledge to be used in the process. 317 318 The syntax for arguments supported for network booting is: 319 320 [protocol,] [key=value,]* 321 322 323 All arguments are optional and can appear in any order. Commas are 324 required unless the argument is at the end of the list. If 325 specified, an argument takes precedence over any default values, 326 or, if booting using DHCP, over configuration information provided 327 by a DHCP server for those parameters. 328 329 protocol, above, specifies the address discovery protocol to be 330 used. 331 332 Configuration parameters, listed below, are specified as key=value 333 attribute pairs. 334 335 tftp-server 336 337 IP address of the TFTP server 338 339 340 file 341 342 file to download using TFTP or URL for WAN boot 343 344 345 host-ip 346 347 IP address of the client (in dotted-decimal notation) 348 349 350 router-ip 351 352 IP address of the default router (in dotted-decimal notation) 353 354 355 subnet-mask 356 357 subnet mask (in dotted-decimal notation) 358 359 360 client-id 361 362 DHCP client identifier 363 364 365 hostname 366 367 hostname to use in DHCP transactions 368 369 370 http-proxy 371 372 HTTP proxy server specification (IPADDR[:PORT]) 373 374 375 tftp-retries 376 377 maximum number of TFTP retries 378 379 380 dhcp-retries 381 382 maximum number of DHCP retries 383 384 If no parameters are specified (that is, network-boot-arguments is 385 an empty string), the PROM will use the platform-specific default 386 address discovery protocol. 387 388 Absence of the protocol parameter when other configuration 389 parameters are specified implies manual configuration. 390 391 Manual configuration requires that the client be provided with all 392 the information necessary for boot. If using manual configuration, 393 information required by the PROM to load the second-stage boot 394 program must be provided in network-boot-arguments while 395 information required for the second-stage boot program can be 396 specified either as arguments to the boot program or by means of 397 the boot program's interactive command interpreter. 398 399 Information required by the PROM when using manual configuration 400 includes the booting client's IP address, name of the boot file, 401 and the address of the server providing the boot file image. 402 Depending on network configuration, it might be required that the 403 subnet mask and address of the default router to use also be 404 specified. 405 406 407 oem-banner 408 409 Custom OEM banner (enabled by setting oem-banner? to true). 410 Defaults to empty string. 411 412 413 oem-banner? 414 415 If true, use custom OEM banner. Defaults to false. 416 417 418 oem-logo 419 420 Byte array custom OEM logo (enabled by setting oem-logo? to true). 421 Displayed in hexadecimal. 422 423 424 oem-logo? 425 426 If true, use custom OEM logo (else, use Sun logo). Defaults to 427 false. 428 429 430 pci-mem64? 431 432 If true, the OpenBoot PROM allocates 64-bit PCI memory addresses to 433 a PCI device that can support 64-bit addresses. 434 435 This variable is available on SPARC platforms only and is optional. 436 Some versions of SunOS do not support PCI MEM64 addresses and will 437 fail in unexpected ways if the OpenBoot PROM allocates PCI MEM64 438 addresses. 439 440 The default value is system-dependent. If the variable exists, the 441 default value is appropriate to the lowest version of the SunOS 442 that shipped with a specific platform. 443 444 445 output-device 446 447 Output device used at power-on (usually screen, ttya, ttyb, ttyc, 448 or ttyd). Defaults to screen. 449 450 451 rootpath 452 453 Specifies the root device of the operating system. 454 455 456 sbus-probe-list 457 458 Designate which SBus slots are probed and in what order. Defaults 459 to 0123. 460 461 462 screen-#columns 463 464 Number of on-screen columns (characters/line). Defaults to 80. 465 466 467 screen-#rows 468 469 Number of on-screen rows (lines). Defaults to 34. 470 471 472 scsi-initiator-id 473 474 SCSI bus address of host adapter, range 0-7. Defaults to 7. 475 476 477 sd-targets 478 479 Map SCSI disk units (OpenBoot PROM version 1.x only). Defaults to 480 31204567, which means that unit 0 maps to target 3, unit 1 maps to 481 target 1, and so on. 482 483 484 security-#badlogins 485 486 Number of incorrect security password attempts.This property has no 487 special meaning or behavior on x86 based systems. 488 489 490 security-mode 491 492 Firmware security level (options: none, command, or full). If set 493 to command or full, system will prompt for PROM security password. 494 Defaults to none.This property has no special meaning or behavior 495 on x86 based systems. 496 497 498 security-password 499 500 Firmware security password (never displayed). Can be set only when 501 security-mode is set to command or full.This property has no 502 special meaning or behavior on x86 based systems. 503 504 example# eeprom security-password= 505 Changing PROM password: 506 New password: 507 Retype new password: 508 509 510 511 512 selftest-#megs 513 514 Megabytes of RAM to test. Ignored if diag-switch? is true. 515 Defaults to 1. 516 517 518 skip-vme-loopback? 519 520 If true, POST does not do VMEbus loopback tests. Defaults to false. 521 522 523 st-targets 524 525 Map SCSI tape units (OpenBoot PROM version 1.x only). Defaults to 526 45670123, which means that unit 0 maps to target 4, unit 1 maps to 527 target 5, and so on. 528 529 530 sunmon-compat? 531 532 If true, display Restricted Monitor prompt (>). Defaults to false. 533 534 535 testarea 536 537 One-byte scratch field, available for read/write test. Defaults to 538 0. 539 540 541 tpe-link-test? 542 543 Enable 10baseT link test for built-in twisted pair Ethernet. 544 Defaults to true. 545 546 547 ttya-mode 548 549 TTYA (baud rate, #bits, parity, #stop, handshake). Defaults to 550 9600,8,n,1,-. 551 552 Fields, in left-to-right order, are: 553 554 Baud rate: 555 556 110, 300, 1200, 4800, 9600... 557 558 559 Data bits: 560 561 5, 6, 7, 8 562 563 564 Parity: 565 566 n(none), e(even), o(odd), m(mark), s(space) 567 568 569 Stop bits: 570 571 1, 1.5, 2 572 573 574 Handshake: 575 576 -(none), h(hardware:rts/cts), s(software:xon/xoff) 577 578 579 580 ttyX-mode 581 582 TTYB, TTYC, or TTYD (baud rate, #bits, parity, #stop, handshake). 583 Defaults to 9600,8,n,1,-. 584 585 Fields, in left-to-right order, are: 586 587 Baud rate: 588 589 110, 300, 1200, 4800, 9600... 590 591 592 Data bits: 593 594 5, 6, 7, 8 595 596 597 Stop bits: 598 599 1, 1.5, 2 600 601 602 Parity: 603 604 n(none), e(even), o(odd), m(mark), s(space) 605 606 607 Handshake: 608 609 -(none), h(hardware:rts/cts), s(software:xon/xoff) 610 611 612 613 ttya-ignore-cd 614 615 If true, operating system ignores carrier-detect on TTYA. Defaults 616 to true. 617 618 619 ttyX-ignore-cd 620 621 If true, operating system ignores carrier-detect on TTYB, TTYC, or 622 TTYD. Defaults to true. 623 624 625 ttya-rts-dtr-off 626 627 If true, operating system does not assert DTR and RTS on TTYA. 628 Defaults to false. 629 630 631 ttyX-rts-dtr-off 632 633 If true, operating system does not assert DTR and RTS on TTYB, 634 TTYC, or TTYD. Defaults to false. 635 636 637 use-nvramrc? 638 639 If true, execute commands in NVRAMRC during system start-up. 640 Defaults to false. 641 642 643 verbosity 644 645 Controls the level of verbosity of PROM messages. Can be one of 646 debug, max, normal, min, or none. Defaults to normal. 647 648 649 version2? 650 651 If true, hybrid (1.x/2.x) PROM comes up in version 2.x. Defaults 652 to true. 653 654 655 watchdog-reboot? 656 657 If true, reboot after watchdog reset. Defaults to false. 658 659 660 EXAMPLES 661 Example 1 Changing the Number of Megabytes of RAM. 662 663 664 The following example demonstrates the method for changing from one to 665 two the number of megabytes of RAM that the system will test. 666 667 668 example# eeprom selftest-#megs 669 selftest-#megs=1 670 671 example# eeprom selftest-#megs=2 672 673 example# eeprom selftest-#megs 674 selftest-#megs=2 675 676 677 678 Example 2 Setting the auto-boot? Parameter to true. 679 680 681 The following example demonstrates the method for setting the auto- 682 boot? parameter to true. 683 684 685 example# eeprom auto-boot?=true 686 687 688 689 690 When the eeprom command is executed in user mode, the parameters with a 691 trailing question mark (?) need to be enclosed in double quotation 692 marks (" ") to prevent the shell from interpreting the question mark. 693 Preceding the question mark with an escape character (\) will also 694 prevent the shell from interpreting the question mark. 695 696 697 example% eeprom "auto-boot?"=true 698 699 700 701 Example 3 Using network-boot-arguments 702 703 704 To use DHCP as the boot protocol and a hostname of abcd.example.com for 705 network booting, set these values in network-boot-arguments as: 706 707 708 example# eeprom network-boot-arguments="dhcp,hostname=abcd.example.com" 709 710 711 712 713 ...then boot using the command: 714 715 716 ok boot net 717 718 719 720 721 Note that network boot arguments specified from the PROM command line 722 cause the contents of network-boot-arguments to be ignored. For 723 example, with network-boot-arguments set as shown above, the boot 724 command: 725 726 727 ok boot net:dhcp 728 729 730 731 732 ...causes DHCP to be used, but the hostname specified in network-boot- 733 arguments will not be used during network boot. 734 735 736 Example 4 Setting System Console to Auxiliary Device 737 738 739 The command below assigns the device /dev/term/a as the system console 740 device. You would make such an assignment prior to using tip(1) to 741 establish a tip connection to a host. 742 743 744 745 On a SPARC machine: 746 747 748 # eeprom output-device=/dev/term/a 749 750 751 752 753 On an x86 machine: 754 755 756 # eeprom console=ttya 757 758 759 760 761 On a SPARC machine, the preceding command would be sufficient for 762 assigning the console to an auxiliary device. For an x86 machine, you 763 might, in addition, need to set the characteristics of the serial line, 764 for which you would have to consult the BIOS documentation for that 765 machine. Also, on some x86 machines, you might use a device other than 766 device a, as shown above. For example, you could set console to ttyb if 767 the second serial port is present. 768 769 770 FILES 771 /boot/solaris/bootenv.rc 772 773 File storing eeprom values on x86 machines. 774 775 776 /dev/openprom 777 778 Device file 779 780 781 /usr/platform/platform-name/sbin/eeprom 782 783 Platform-specific version of eeprom. Use uname -i to obtain 784 platform-name. 785 786 787 SEE ALSO 788 passwd(1), sh(1), svcs(1), tip(1), uname(1), boot(1M), kadb(1M), 789 kernel(1M), init(1M), svcadm(1M), attributes(5), smf(5) 790 791 792 OpenBoot 3.x Command Reference Manual 793 794 795 796 797 798 June 13, 2019 EEPROM(1M)