Sun Enterprise 250 Server Owner's Guide

About OpenBoot Diagnostics (OBDiag)

OpenBoot Diagnostics (OBDiag) reside in flash PROM on the main logic board. OBDiag can isolate errors in the following system components:

On the main logic board, OBDiag tests not only the main logic board but also its interfaces:

OBDiag reports test results via the LEDs located on the system front panel. See "Error Indications" for more information about LEDs and error messages.

OBDiag displays detailed diagnostic and error messages on a local console or terminal, if one is attached to system. Alternatively, you can display OBDiag output remotely on a Remote System Control (RSC) console. For more information about RSC, see "About Remote System Control (RSC)".

OBDiag tests run automatically under certain conditions. You can also run OBDiag interactively from the system ok prompt. For information about running OBDiag, see "How to Use OpenBoot Diagnostics (OBDiag)".

When you run OBDiag interactively from the ok prompt, you invoke the OBDiag menu, which lets you select which tests you want to perform. For information about the OBDiag menu, see "OBDiag Menu".

The system also provides configuration variables that you can set to affect the operation of the OBDiag tests. For information about the configuration variables, see "OBDiag Configuration Variables".

OBDiag Menu

The OBDiag menu is created dynamically whenever you invoke OBDiag in interactive mode. OBDiag determines whether any optional devices are installed in the system. If the device has an on-board self-test, OBDiag incorporates the test name into the list of menu entries. It sorts the menu entries in alphabetical order and numbers them accordingly. Therefore, the menu entries may vary from system to system, depending on the system configuration.

The OBDiag menu always displays the core tests that exercise parts of the basic system. These tests include envctrltwo, ebus, ecpp, eeprom, fdthree, network, scsi@3, scsi@3,1, se, su, and rsc. For information about each test, see "OBDiag Test Descriptions". For a description of the interactive commands for running OBDiag, see "OBDiag Commands".

Once you invoke OBDiag as described in "How to Use OpenBoot Diagnostics (OBDiag)", the OBDiag menu is displayed.

Figure 12-2  

Graphic

OBDiag Commands

The following table provides information about the OBDiag interactive commands that are available at the OBDiag command prompt:

Table 12-1  

Command 

Description 

exit

Exits the OBDiag tool and returns to the ok prompt.

help

Displays a brief description of each command and OpenBoot PROM variable used to run OBDiag. 

printenvs

Displays the value of all of the OBDiag variables. (See "OBDiag Configuration Variables" for information about settings.)

setenv variable value

Sets the value for an OpenBoot PROM configuration variable. (See "OBDiag Configuration Variables" for information about settings.)

test-all

Runs all of the tests displayed in the menu. 

test #,#,

Runs only the test(s) identified by menu entry number (#) in the command line.

except #,#,

Run all test(s) except those identified by menu entry number (#) in the command line.

what #,#,

Displays selected properties of the device(s) identified by menu entry number (#) in the command line. The exact information provided varies according to device type.

OBDiag Configuration Variables

The following table provides information about OpenBoot PROM configuration variables that affect the operation of OBDiag. Use the printenvs command to show current values and the setenv command to set or change a value. Both commands are described in "OBDiag Commands".

Table 12-2  

Variable 

Setting 

Description 

Default 

diag-level

off

No tests are run at power up. 

 

 

min

Performs minimal testing of core functionality. 

min

 

med

Performs functional tests for all system functions. 

 

 

max

Runs exhaustive tests for all functions except external loopbacks. External loopback tests are run only if diag-targets is set to loopback, loopback3, device&loopback, or device&loopback,3.

 

diag-continue?

false

Stops testing within a test routine and prints a message as soon as an error is detected. OBDiag then skips to the next test routine in the sequence. 

false

 

true

Causes OBDiag to run all subtests within a test, even if an error is detected. 

 

diag-passes

n

Repeats each test the number of times specified by n. Works with the test, except, and test-all commands.

1

diag-targets

none

Runs internal tests only, no I/O testing. 

none

 

iopath

Extends testing to external device interfaces (connectors/cables). 

 

 

media

Extends testing to external devices and media, if present. 

 

 

device

Invokes built-in self-test (BIST) on PCI cards and external devices. 

 

 

loopback

Runs external loopback tests on the parallel, serial, keyboard, mouse, TPE, and RSC serial ports. 

 

 

loopbacks

Not for use on Enterprise 250 servers. 

 

 

loopback2

Not for use on Enterprise 250 servers. 

 

 

loopback3

Runs external loopback tests on the RSC Ethernet port 

 

 

nomem

Performs tests without testing system memory. 

 

 

device&loopback

Runs built-in self-test (BIST) on PCI cards and external devices, then runs external loopback tests on the parallel, serial, keyboard, mouse, TPE, and RSC serial ports. 

 

 

device&loopbacks

Not for use on Enterprise 250 servers. 

 

 

device&loopback,3

Runs built-in self-test (BIST) on PCI cards and external devices, then runs external loopback tests on the parallel, serial, keyboard, mouse, TPE, RSC serial, and RSC Ethernet ports. 

 

diag-trigger

power-reset

Runs diagnostics only on power-on resets. 

power-reset

 

error-reset

Runs diagnostics only on power-on resets, fatal hardware errors, and watchdog reset events. 

 

 

soft-reset

Runs diagnostics on all resets (except XIR). 

 

diag-verbosity

0

Prints one line that indicates the device being tested and its pass/fail status. 

0

 

1

Prints more detailed test status, which varies in content from test to test. 

 

 

2

Prints subtest names. 

 

 

4

Prints debug messages. 

 

 

8

Prints back trace of callers on error. 

 

OBDiag Test Descriptions

The following table provides information about the tests available through OBDiag. It provides the test name, a brief description of the test, and any special considerations involved in running the test.

Table 12-3  

Test Name 

Description 

Special Considerations 

SUNW,envctrltwo

@14,60000

Verifies that the fans are operational. Checks that the temperature in the enclosure and at the CPUs does not exceed the maximum allowable range. Also tests the disk and front panel LEDs. 

 

ebus@1

Tests the on-board ASIC that interfaces the following devices with the PCI bus: parallel port, serial port, keyboard, mouse, diskette drive, NVRAM, and the environmental monitoring and control system. 

 

ecpp

@14,3043bc

Tests parallel port I/O logic, including internal and external loopback tests. 

To run external loopback tests, you must have a special passive loopback connector attached to the parallel port. The variable diag-targets must be set to loopback, device&loopback, or device&loopback,3.

 

The Sun part number for the parallel port loopback connector is 501-2965-01. 

eeprom@14,0

Tests the NVRAM functionality. 

 

fdthree

@14,3023f0

Tests diskette drive control logic and the operation of the drive. The test does not differentiate among a drive, media, or main logic board error; if any of these fail, it reports the diskette drive as the FRU. 

A formatted diskette must be inserted into the drive. 

 

network@1,1

Tests the on-board Ethernet logic, including internal and external loopback tests. 

To run external loopback tests on the TPE port, you must have a TPE loopback connector attached to the TPE port. The variable diag-targets must be set to loopback, device&loopback, or device&loopback,3.

 

The Sun part number for the TPE loopback connector is 501-4689-01. 

scsi@3 [Depending on your system configuration, the OBDiag menu may include tests for additional SCSI interfaces, such as scsi@4, scsi@4,1, scsi@5, scsi@5,1, etc.]

Tests the on-board SCSI controller and SCSI bus subsystem for internal disk drives and removable media devices. Checks associated registers and performs a DMA transfer. 

 

scsi@3,1

Tests the main logic board external SCSI interface. Checks associated registers and performs a DMA transfer. 

 

se@14,40000

Tests serial port control and I/O logic, including internal and external loopback tests. The test checks I/O logic only if the external loopback test is enabled. 

Port A tests are not run if ttya is being used as the input/output device. 

 

To run external loopback tests, you must have a special passive loopback connector attached to each serial port, and the variable diag-targets must be set to loopback, device&loopback, or device&loopback,3.

 

There is one passive connector available for this test: Sun part number 501-4205-01. Use 501-4205-01 when ports A and B are not attached to external devices.  

su@14,3062f8

Tests keyboard control and input logic, including internal and external loopback tests. 

Keyboard tests run only when a keyboard is used as the input device. 

 

To run external loopback tests, you must have a special passive loopback connector attached to the keyboard/mouse port. The variable diag-targets must be set to loopback, device&loopback, or device&loopback,3.

 

The Sun part number for the loopback connector is 501-4690-01. 

su@14,3083f8

Tests mouse control and input logic, including internal and external loopback tests. 

Mouse tests are not run if a keyboard is used as an input device. 

 

To run external loopback tests, you must have a special passive loopback connector attached to the keyboard/mouse port, the variable diag-targets must be set to loopback, device&loopback, or device&loopback,3.

 

The Sun part number for the loopback connector is 501-4690-01. 

rsc

Tests RSC (SSP) hardware, including RSC serial and Ethernet ports. For additional details, see "About Remote System Control (RSC)".

This test is not run if RSC is being used as the console device. 

 

To run external loopback tests on the RSC Ethernet port, the port must be connected to a 10-Mbps Ethernet network. The variable diag-targets must also be set to loopback3 or device&loopback,3.

 

To run external loopback tests on the RSC serial port, a special passive serial loopback connector must be attached to the port. The variable diag-targets must also be set to loopback, device&loopback, or device&loopback,3.

 

The Sun part number for the passive serial loopback connector is 501-4205-01.