DR Operations on I/O Assemblies
An I/O assembly (PCI or cPCI) is an attachment point on the . You can configure, unconfigure, connect, or disconnect them. Use the DR module in the Sun MC software to view the assigned status and the condition of the I/O attachment points. FIGURE 10 shows the status and condition of the I/O attachment points on a Sun Fire 6800 server.
FIGURE 10 I/O Attachment Points on a Sun Fire 6800 Server
Connecting and Configuring I/O Assemblies
An I/O assembly must be tested and pass the POST operation before it can be connected and configured into a running domain. The I/O assembly does not have the capability to perform the POST operation on its own. To test an I/O assembly, you need an available domain and a CPU/Memory board.
Certain requirements must be considered before disconnecting an I/O assembly and during the initial configuration phase of the server. For PCI assemblies, each PCI card change requires powering off the PCI assembly and perform a retest using the following procedure. Servers with cPCI assemblies do not require powering off to change the cPCI card. You must verify the need for a power-off because, only then, a retest is required.
To Connect an I/O Assembly to a Running Domain
Log in to the domain as superuser.
Assign the I/O assembly and a CPU/Memory board to an unused domain by using the addboard command on the Sun Fire SSC.
Verify that the boards have the same firmware level as the boards in the target domain.
Use the setkeyswitch command to run the POST operation.
The level of the POST operation can be set by using the setupdomain command. A high POST level must be used to ensure that only known good components are connected or configured into a domain.
After the POST operation completes successfully, use the setkeyswitch command to set the assembly to standby.
The standby position preserves the test state so that the I/O assembly keeps its OK state.
Use the deleteboard command to unassign the I/O assembly from the domain.
Optionally, use the addboard command on the Sun Fire SSC, the cfgadm(1M) command on the domain, or the Sun MC DR module to assign the I/O assembly to the final domain.
Connect and configure the I/O assembly into the domain.
Disconnecting and Unconfiguring an I/O Assembly
An I/O assembly looses its POST state whenever it is powered off. For cases when an I/O assembly has to be replaced during a service action, or when a PCI card is removed or added to a PCI assembly, use the previous procedure above to connect and configure the assembly back into the domain. Unconfiguring an I/O device, it must be in an inactive state.
When no hardware changes on the I/O assembly occur or when the I/O assembly is moved from one domain to another, use the nopoweroff option during the disconnect process. This option preserves the POST state of the I/O assembly. If an I/O assembly is not powered off, it retains its POST state; it can be connected and configured into a domain without being retested.
You must unconfigure all of the cPCI cards in an assembly before unconfiguring or disconnecting a cPCI assembly. For PCI assemblies, the individual PCI cards are unconfigured as part of the unconfigure-disconnect operation of the assembly.
DR Operations on cPCI Cards
cPCI cards are base attachment points. They support DR operations on individual cards and the high-availability hot-swap model. These features enhance the DR capabilities of cPCI assemblies.
FIGURE 11 shows the base attachment points for cPCI assemblies on.
FIGURE 11 cPCI Base Attachment Points for Sun Fire 3800-6800 Domains
The hot-plug and high-availability hot-swap models are supported. Both models are defined in the PCI specifications.
In the high-availability hot swap model, which is the default for , DR operations are triggered by the insertion or removal of the cPCI card and by the engaging or ejecting of the lever on the cPCI card. This action enables the DR operations on cPCI cards without a system login. A cPCI card can be configured by engaging the lever and can be unconfigured by ejecting the lever. The status of the cPCI card can be seen in the LEDs on the card and the LEDs on the slot. The following tables and code examples show the change in LED status when a card is inserted or removed, and the corresponding cfgadm(1M) command output.
TABLE 4 Led status for an Empty Slot and the cfgadm(1M) Output
Event |
Action |
Power LED (Slot) |
Failed LED (Slot) |
Safe to Remove LED (Slot) |
Safe to Remove LED (Card) |
Slot empty |
None |
Off |
Off |
On |
N/A |
Ap ID Type Receptacle Occupant Condition pcisch1:sg9slot0 unknown empty unconfigured unknown
TABLE 5 LED States for an Inserted Card and the cfgadm(1M) Output
Event |
Action |
Power LED (Slot) |
Failed LED (Slot) |
Safe to Remove LED (Slot) |
Safe to Remove LED (Card) |
Card inserted |
Power on and connect |
On |
Off |
Off |
On |
Ap ID Type Receptacle Occupant Condition pcisch1:sg9slot0 unknown connected unconfigured unknown
TABLE 6 LED States for Lever Engagement and the cfgadm(1M) Output
Event |
Action |
Power LED (Slot) |
Failed LED (Slot) |
Safe to Remove LED (Slot) |
Safe to Remove LED (Card) |
Lever engaged |
Configure |
On |
Off |
Off |
Off |
Ap ID Type Receptacle Occupant Condition pcisch1:sg9slot0 stpcipci/fhs connected configured ok
TABLE 7 LED States When the Red Button Is Pressed and the cfgadm(1M) Output
Event |
Action |
Power LED (Slot) |
Failed LED (Slot) |
Safe to Remove LED (Slot) |
Safe to Remove LED (Card) |
Red button pressed |
Disconnected |
On |
Off |
Off |
Off |
Ap ID Type Receptacle Occupant Condition pcisch1:sg9slot0 unknown disconnected unconfigured unknown
The following code example shows the console output when the red button is pressed.
# Jan 9 20:06:55 # sghsc: NOTICE: sghsco: node 0 / board 9 slot 0 unconfigured
TABLE 8 LED States for Card Removal and the cfgadm(1M) Output
Event |
Action |
Power LED (Slot) |
Failed LED (Slot) |
Safe to Remove LED (Slot) |
Safe to Remove LED (Card) |
Card removed |
None |
Off |
Off |
On |
N/A |
Ap ID Type Receptacle Occupant Condition pcisch1:sg9slot0 unknown empty unconfigured unknown
In the hot-plug model, DR operations are not triggered by the lever on the cPCI card; instead, the cfgadm(1M) command or the Sun MC DR module are used. The following code box lists the usage message for the cfgadm(1M) command for cPCI assemblies.
# cfgadm -h pci Usage: cfgadm [-f] [-y|-n] [-v] [-o hardware_options] -c function ap_id [ap_id...] cfgadm [-f] [-y|-n] [-v] [-o hardware_options] -x function ap_id [ap_id...] cfgadm [-v] [-s listing_options] [-o hardware_options] [-a] [-l [ap_id|ap_type...]] cfgadm [-v] [-o hardware_options] -t ap_id [ap_type...] cfgadm [-v] [-o hardware_options] -h [ap_id |ap_type...] PCI hotplug specific commands: -c [connect|disconnect|configure|unconfigure|insert|remove] ap_id [ap_type...] -x enable_slot ap_id [ap_type...] -x disable_slot ap_id [ap_type...] -x enable_autoconfig ap_id [ap_type...] -x disable_autoconfig ap_id [ap_type...] -x led[=[fault|power|active|attn],mode=[on|off|blink]] ap_id [ap_type...]
The Sun MC DR module automatically displays the options that are applicable. Using the enable_autoconfig or the disable_autoconfig commands, you can configure the hot-plug or the high-availability hot-swap model for each cPCI card slot. This technique is useful for debugging or if automatic configuring or unconfiguring cPCI cards is not desired.
Using cPCI versus PCI cards increases the flexibility for changing or servicing I/O paths on the . With the constraints on connecting an I/O assembly to a domain, you must decide before you set up your server if the PCI or cPCI cards fulfill your requirements.