C H A P T E R 2 |
Command Line Interface |
The following procedures are discussed in this chapter:
Note - There is no need to enable dynamic reconfiguration explicitly on Sun Fire 6800, 4810, 4800, nor 3800 systems. DR is enabled by default. |
The cfgadm(1M) command provides configuration administration operations on dynamically reconfigurable hardware resources. The following table lists the DR board states.
The cfgadm program displays information about boards and slots. Refer to the cfgadm(1) man page for options to this command.
Many operations require that you specify the system board names. To obtain these system names, type:
# cfgadm |
When used without options, cfgadm displays information about all known attachment points, including board slots, SCSI buses, and cPCI slots. The following display shows a typical output.
For a more detailed status report, use the command cfgadm -av. The -a option lists attachment points and the -v option turns on expanded (verbose) descriptions.
CODE EXAMPLE 2-2 is a partial display produced by the cfgadm -av command. The output appears complicated because the lines wrap around in this display. (This status report is for the same system shown on "Invalid Cross-Reference" , and provides details of each display item.)
Here are some details of the previous display:
The options to the cfgadm -c command are listed below:
The options provided by the cfgadm -x command are listed below.
The cfgadm_sbd man page provides additional information on the cfgadm -c and cfgadm -x options. The sbd library provides the functionality for hot-plugging system boards of the class sbd, through the cfgadm framework.
Before you can test a CPU/Memory board, it must first be assigned to a domain, powered-on, and disconnected. If all these conditions are not met, the board test fails.
You can use the Solaris cfgadm command to test CPU/memory boards. As superuser type:
# cfgadm -t ap-id |
To change the level of diagnostics that cfgadm runs, supply a diagnostic level for the cfgadm command as follows.
# cfgadm -o platform=diag=<level> -t ap-id |
where level is a diagnostic level, and ap-id is an attachment point identifier.
If you do not supply level , the default diagnostic level is set by the setupdomain command, which is described in both the Sun Fire 6800/4810/4800/3800 Systems Platform Administration Manual and the Sun Fire 6800/4810/4800/3800 Systems Controller Command Reference Manual. The diagnostic levels are:
An I/O assembly should be tested before it is added to a domain.
In order to test an I/O assembly you must have a spare domain that is not running the Solaris operating environment.
1. Enter the domain shell of a spare domain (A-D) that is NOT running the Solaris operating environment and that has at least one CPU/Memory board.
2. Press and hold the CTRL key while pressing the ] key to bring up the telnet> prompt. Type send break to display the system controller domain shell.
Note - In this example, domain A is the current, active domain; and domain B is the spare domain. |
3. In the spare domain (B) shell, add the I/O assembly to the domain with the addboard command.
schostname:B> addboard IBx |
4. Set the virtual keyswitch in the spare domain to on.
schostname:B> setkeyswitch on . . {x} ok |
where x represents the CPU. POST is run on the domain when you turn the virtual keyswitch to on. If you see the ok prompt, the I/O assembly is functioning properly.
schostname:B> setkeyswitch standby |
6. Delete the board by entering:
schostname:B> deleteboard ibx |
7. On the active domain (A) add the board using the following command:
# cfgadm -c configure N0.IBx |
If you are unfamiliar with how to insert a board into the system, get a copy of the Sun Fire 6800/4810/4800/3800 Systems Service Manual before you begin this procedure.
1. Identify an empty slot available to the domain by typing the following as superuser:
# cfgadm -l -s "select=class(sbd)" |
2. Make sure you are properly grounded with a wrist strap.
3. After locating the empty slot, remove the system board filler panel from the slot.
4. Insert the board into the slot within one minute to prevent system overheating.
Refer to the Sun Fire 6800/4810/4800/3800 Systems Service Manual for complete step-by-step board insertion procedures.
5. Power on, test, and configure the board using the cfgadm -c configure command.
# cfgadm -c configure ap_id |
where
ap_id
is the attachment point ID returned by
cfgadm -l -s "select=class(sbd)"
.
1. If the board is being used by the Solaris operating environment, as superuser identify the board to be removed.
You must know the slot number (attachment point ID).
# cfgadm -l -s "select=class(sbd)" |
2. Make sure you are properly grounded using a wrist strap.
3. Detach the board from the domain and power off the board with cfgadm .
# cfgadm -c disconnect ap_id |
where ap_id is the attachment point ID.
This command removes the resources from the Solaris operating environment and the OpenBoot PROM, detaches the board from the domain, and powers off the board.
4. Verify the state of the Power and Hotplug OK LEDs.
The green Power LED will flash shortly as the CPU/Memory board is cooling down. In order to safely remove the board from the systems the green Power LED
must be off and the amber Hotplug OK LED
must be on.
5. Complete the hardware removal and installation of the board. For more information refer to the Sun Fire 6800/4810/4800/3800 Systems Service Manual.
6. After removing and installing board, bring the board back to the Solaris operating environment with the Solaris dynamic reconfiguration cfgadm command .
# cfgadm -c configure ap_id |
where ap_id is the attachment point ID.
This command assigns the board to the domain, powers it on, tests it, attaches the board, and brings all of its resources back to the Solaris operating environment.
7. Verify that the green Power LED is lit.
There are two types of I/O assemblies: CompactPCI (cPCI) and standard PCI. These instructions apply to both types. Note, however, that while cPCI cards can be hot-swapped, hot-plugged, and dynamically re-configured, PCI cards and standard I/O assemblies cannot be hot-swapped, hot-plugged, nor dynamically reconfigured.
Hot-swapping is initiated by the user by pressing the card's ejector lever fully while the card is inserted; or by disengaging the ejector lever partially before the card is removed. The operator does not need to issue any commands to perform a hot swap. Hot-plugging, on the other hand, is accomplished using the cfgadm command.
1. If the I/O assembly is being used by the Solaris operating environment, as superuser in the Solaris operating environment, identify the I/O assembly to be removed.
You must know the slot number (attachment point ID).
# cfgadm -l -s "select=class(sbd)" |
2. Detach the board from the domain and power off the board with cfgadm :
# cfgadm -c disconnect ap_id |
Where: ap_id is the attachment point ID.
This command removes the resources from the Solaris operating environment and the OpenBoot PROM, detaches the board from the domain, and powers off the I/O assembly.
3. Remove the board from the domain with cfgadm :
# cfgadm -x unassign ap_id |
4. Verify the state of the status LEDs on the I/O assembly.
In order to safely remove the I/O assembly from the system, the green Power LED on the I/O assembly must be in the deactivated state (off) and the amber Hotplug OK LED must be lit.
5. Complete the hardware removal and installation of the I/O assembly. For more information see the Sun Fire 6800/4810/4800/3800 Systems Service Manual .
Note - Be sure you are properly grounded before you begin the hardware removal and installation of the I/O assembly. |
Before you bring the board back to the Solaris operating environment, you need to enter a spare domain that is NOT running the Solaris operating environment and that has at least one CPU/Memory board in order test the I/O assembly.
Enter the domain shell of a spare domain (A-D) that is NOT running the Solaris operating environment and that has at least one CPU/Memory board.
6. Press and hold the CTRL key while pressing the ] key to bring up the telnet> prompt. Type send break to display the system controller domain shell.
Note - In this example, domain A is the current, active domain; and domain B is used as a spare domain. |
7. In the spare domain shell, add the I/O assembly to the domain with the addboard command.
schostname:B> addboard ibx |
8. Set the virtual keyswitch in the spare domain to on.
POST is run on the domain when you turn the virtual keyswitch to on.
schostname:B> setkeyswitch on . . {x} ok |
where x represents the CPU. If you see the ok prompt, the I/O assembly is functioning properly.
9. Press and hold the CTRL key while pressing the ] key to bring up the telnet> prompt. Type send break to connect to the system controller domain shell.
Depending on the type of telnet connection, you may need to type send esc followed by send break to connect to the system controller domain shell.
schostname:B> setk standby |
11. Delete the board by entering:
schostname:B> deleteboard ibx |
12. At the Solaris prompt in domain A configure the I/O assembly:
# cfgadm -c configure N0.IBx |
You can initiate hot-swapping by pressing the card's ejector lever fully while the card is inserted; or by disengaging the ejector lever partially before the card is removed. You do not need to issue any commands to perform a hot swap. To perform a hot-plug operation, on the other hand, use the cfgadm command.
In order to hot-swap a CompactPCI (cPCI) card, you must boot the Solaris software in the domain where the cPCI card I/O assembly resides. When the Solaris software is booted in the domain, all cPCI cards are in the autoconfigure mode, and all configuring and unconfiguring can be performed without the cfgadm command.
When you insert a cPCI card using hot-swap, the card is automatically powered on and configured. When you remove a cPCI card using hot-swap, the card is automatically unconfigured and powered off.
1. As superuser, identify the slot into which the card will be inserted.
2. Insert the card and push down on the ejector lever fully to engage it reliably. The card will be automatically powered-on and configured. The blue Hotswap OK LED on the card should be off, the green Power LED on the I/O assembly should be lit, and the amber Hotplug OK LED should be off. Insertion using hot-swap is equivalent to typing the following command: cfgadm -c configure ap_id.
Note - Before you hot-swap the CompactPCI (cPCI) card, make sure that there is no I/O activity on that card. |
1. Disengage the ejector lever slightly to deactivate the card.
2. Make sure the blue Hotswap OK LED on the card is lit, the amber Hotplug OK LED on the I/O assembly is lit, and the green Power LED on the assembly is off.
If the domain console is available, a message confirms that the card has been unconfigured.
Hot-plugging is accomplished by using the cfgadm command. You perform a hot-swap operation, on the other hand, by pressing the card's ejector lever fully while the card is inserted; or by disengaging the ejector lever partially before the card is removed. You never need to issue any commands to perform a hot swap.
1. As superuser, identify the cPCI card to be removed.
You must know the slot number (attachment point ID).
# cfgadm -s "select=class(pci)" |
2. Detach (unconfigure) the cPCI card to be removed:
# cfgadm -c unconfigure ap_id |
where ap_id is the attachment point ID. The card is automatically unconfigured and powered-off.
3. Confirm that the card is detached.
# cfgadm -s "select=class(pci)" ap_id |
4. Inspect the green Power LED and the amber Hotplug OK LED on the I/O assembly and the blue Hotswap OK LED on the cPCI card.
When the green Power LED on the I/O assembly is off, the amber Hotplug OK LED on the I/O assembly is lit, and the blue Hotswap OK LED on the cPCI card if lit, it is safe to remove the cPCI card.
5. After ensuring that you are properly grounded using a wrist strap, remove and replace the cPCI card.
6. After installing the card, attach (configure) the card:
# cfgadm -c configure ap_id |
When Solaris boots in a domain, all cPCI slots in that domain are in the autoconfigure mode by default. In autoconfigure mode hot-swap is enabled for each slot.
7. Inspect the green Power LED.
The green Power LED on the I/O assembly will be lit and the blue Hotswap OK LED on the cPCI card should be off.
8. Verify that the card is attached.
# cfgadm -s "select=class(pci)" ap_id |
1. Identify the board to be removed.
You must know the slot number.
# cfgadm -l -s "select=class(sbd)" |
2. Detach and power off the board from the domain by using the cfgadm -c disconnect command.
# cfgadm -c disconnect ap_id |
where
ap_id
is the attachment point ID returned by
cfgadm -al -s select=class(sbd)
.
3. Remove the board from the system.
Refer to the Sun Fire 6800/4810/4800/3800 Systems Service Manual for complete step-by-step board removal procedures.
4. Insert a system board filler panel into the slot within one minute of removing the board to prevent system overheating.
1. Identify the slot number of the board to be removed.
# cfgadm -l -s "select=class(sbd)" |
2. Unconfigure the board but leave the power on to preserve the test status:
# cfgadm -o unassign,nopoweroff -c disconnect ap_id |
where
ap_id
is the attachment point ID returned by
cfgadm -l -s "select=class(sbd)"
.
At this point, the slot is not assigned to any domain, and the slot is visible to all domains.
3. In the domain to which you are moving the board, check to see if the board is now visible as disconnected.
# cfgadm -al -s select=class(sbd) |
4. Configure the board in the new domain using the cfgadm -c configure command, which implies an assignment operation.
# cfgadm -c configure ap_id |
You can use DR to power down the board and leave it in place. For example, you might want to do this if the board fails and a replacement board or a system board filler panel is not available.
1. Identify the board to be removed.
You must know the slot number.
# cfgadm -l -s "select=class(sbd)" |
2. Detach and power off the board from the domain by using the cfgadm -c disconnect command.
Copyright © 2002, Sun Microsystems, Inc. All rights reserved.