C H A P T E R  4

 


Firmware and Blade Server Management

This chapter contains the following sections:


4.1 System Firmware

The Netra CP3260 blade server contains a modular firmware architecture that gives you latitude in controlling boot initialization. You can customize the initialization, test the firmware, and even enable the installation of a custom operating system.

This platform also employs the Intelligent Platform Management Controller (IPMC)--described in Section 5.2.8, Intelligent Platform Management Controller--which controls the system management, hot-swap control, and some board hardware. The IPMC configuration is controlled by separate firmware.

The Netra CP3260 blade server boots from the 4-Mbyte system flash PROM device that includes the power-on self-test (POST) and OpenBoottrademark firmware.

A systems firmware progress sensor (SFPS) is available on the Sun Netra CP3260 blade server. The purpose of the sensor is to model the firmware running on the payload and provide various states to the external management software (ShMM on Netra CT 900 servers). This occurs via a standard IPMI event mechanism.

The firmware states are Progress, Hang, and Error, with various substates. The sensor generates an IPMI event message for each state. You can verify the messages by using clia sel command on the ShMM, through HPI event and SNMP traps for each state of a sensor event.

For more information, see Section B.4, Send Sensor State Command.

For detailed sensor command syntax and options, refer to the Netra CT 900 Software Developer’s Guide (819-1178). (Even if you are using a third-party chassis, the SFPS commands and options apply, and this document is available online.)

http://docs.sun.com/app/docs/prod/n900.srvr#hic


4.2 Power-On Self-Test Diagnostics

Power-on self-test (POST) is a firmware program that helps determine whether a portion of the system has failed. POST verifies the core functionality of the system, including the CPU modules, motherboard, memory, and some on-board I/O devices. The software then generates messages that can be useful in determining the nature of a hardware failure. POST can run even if the system is unable to boot.

If POST detects a faulty component, it is disabled automatically, preventing faulty hardware from potentially harming any software. If the system is capable of running without the disabled component, the system boots when POST is complete. For example, if one of the processor cores is deemed faulty by POST, the core is disabled, and the system boots and runs using the remaining cores.

POST diagnostic and error message reports are displayed on a console.

4.2.1 POST Test Coverage

The POST diagnostics include the following tests:


CPU Basic Test
CPU Functional Test
CPU D-Cache RAM
CPU D-Cache Tags
CPU I-Cache RAM Test
CPU I-Cache Tag RAM
CPU L2 Cache UA Array Test
CPU L2 Cache UA Array Test
CPU Interrupt Handler
CPU IMMU Memory Management Unit
CPU DMMU Memory Management Unit
FPU (Data movement and functionality)
I/O Controller register access
I/O Controller PCI configuration access
Block Memory Test
Network Interfaces (register access and basic funtionality)
Modular Arithemetic Memory parity errors Test
SPU (Security Processing Unit) Tests

4.2.2 POST Diagnostic and Error Message Format

POST diagnostic and error messages are displayed on a console. The format of the these messages is the following:


Core-ID:Strand-ID ERROR:  TEST = test-name
Core-ID:Strand-ID H/W under test = description
Core-ID:Strand-ID Repair Instruction
Core-ID:Strand-ID MSG = error-message-body
Core-ID:Strand-ID END_ERROR

The following is an example of a POST error message


3:2>ERROR: TEST = L2-Cache Functional
3:2>H/W under test = Core l2 Cache
3:2>Repair Instructions: Replace items in order listed by ’H/W under test’ above.
3:2>MSG = No way found to match tag address 00000000.00600000, state 3
3:2>END_ERROR


4.3 OpenBoot Firmware

The Solaris OS installed operates at different run levels. For a full description of run levels, refer to the Solaris system administration documentation.

Most of the time, the OS operates at run level 2 or run level 3, which are multiuser states with access to full system and network resources. Occasionally, you might operate the system at run level 1, which is a single-user administrative state. However, the lowest operational state is run level 0.

When the OS is at run level 0, the ok prompt appears. This prompt indicates that the OpenBoot firmware is in control of the system.

There are a number of scenarios under which OpenBoot firmware control can occur.

By default, before the operating system is installed, the system comes up under OpenBoot firmware control.

4.3.1 Getting to the ok Prompt

There are different ways of reaching the ok prompt. The methods are not equally desirable. See TABLE 4-1 for details.


TABLE 4-1 Ways of Accessing the ok Prompt

Access Method

What to Do

Graceful shutdown of the Solaris OS

From a shell or command tool window, issue an appropriate command (for example, the shutdown or init command) as described in Solaris system administration documentation.

Manual system reset

Setting the OBP auto-boot variable to false causes the system to stop at the ok? prompt the next time the blade server is reset.




caution icon Caution - Obtaining the okprompt suspends all application and operating system software. After you issue firmware commands and run firmware-based tests from the okprompt, the system might not be able to resume where it left off.


If possible, back up system data before starting to access the ok prompt. Also exit or stop all applications, and warn users of the impending loss of service. For information about the appropriate backup and shutdown procedures, see Solaris system administration documentation.

4.3.2 Auto-Boot Options

The system firmware stores a configuration variable called auto-boot?, which controls whether the firmware will automatically boot the operating system after each reset. The default setting for Sun platforms is true.

Normally, if a system fails power-on diagnostics, auto-boot? is ignored and the system does not boot unless an operator boots the system manually. An automatic boot is generally not acceptable for booting a system in a degraded state. Therefore, the Netra CP3260 server OpenBoot firmware provides a second setting, auto-boot-on-error?. This setting controls whether the system will attempt a degraded boot when a subsystem failure is detected. Both the auto-boot? and auto-boot-on-error? switches must be set to true to enable an automatic degraded boot. To set the switches, type:


{0} ok setenv auto-boot? true
{0} ok setenv auto-boot-on-error? true



Note - The default setting for auto-boot-on-error? is false. The system will not attempt a degraded boot unless you change this setting to true. In addition, the system will not attempt a degraded boot in response to any fatal nonrecoverable error, even if degraded booting is enabled. For examples of fatal nonrecoverable errors, see Section 4.3.4, OpenBoot Configuration Variables.


4.3.3 OpenBoot Commands

You type the OpenBoot commands at the ok prompt. The OpenBoot commands that can provide useful diagnostic information include:

For a complete list of OpenBoot commands and more information about the OpenBoot firmware, refer to the OpenBoot 4.x Command Reference Manual. An online version of the manual is included with the OpenBoot Collection AnswerBook that ships with Solaris software.

4.3.3.1 probe-scsi and probe-scsi-all Commands

The probe-scsi and probe-scsi-all commands diagnose problems with the SCSI devices.



caution icon Caution - If you used the haltcommand or the Stop-A key sequence to reach the okprompt, issuing the probe-scsior probe-scsi-allcommand can hang the system.


The probe-scsi command communicates with all SCSI devices connected to on-board SCSI controllers. The probe-scsi-all command also accesses devices connected to any host adapters installed in PCI slots.

For any SCSI device that is connected and active, the probe-scsi and probe-scsi-all commands display its loop ID, host adapter, logical unit number, unique worldwide name (WWN), and a device description that includes type and manufacturer.

The following sample output is from the probe-scsi-all command with a Netra CP32x0 ARTM connected to the Netra CP3260 blade server.


CODE EXAMPLE 4-1 probe-scsi-all Command Output
{0} ok probe-scsi-all
This command may hang the system if a Stop-A or halt command
has been executed.  Please type reset-all to reset the system
before executing this command.
Do you wish to continue? (y/n) y
/pci@0/pci@0/pci@a/pci@0/usb@4,2/storage@2
  Unit 0   Disk     TUSB6250USB20 DISK DRIVE
 
/pci@0/pci@0/pci@8/scsi@0
 
MPT Version 1.05, Firmware Version 1.22.01.00
 
Target 2
Unit 0   Disk     SEAGATE ST914602SSUN146G0400    286739329 Blocks, 146 GB
  SASAddress 5000c5000576b0e5  PhyNum 7
Target 3
Unit 0   Disk     SEAGATE ST914602SSUN146G0400    286739329 Blocks, 146 GB
  SASAddress 5000c50005d16415  PhyNum 6
 
{0} ok 

4.3.3.2 probe-ide Command

The probe-ide command communicates with all Integrated Drive Electronics (IDE) devices connected to the IDE bus. This is the internal system bus for media devices such as the DVD drive.



caution icon Caution - If you used the haltcommand or the Stop-A key sequence to reach the okprompt, issuing the probe-idecommand can hang the system.


The following shows sample output from the probe-ide command.


CODE EXAMPLE 4-2 probe-ide Command Output
{0} ok probe-ide
   Device 0  ( Primary Master )
           ATA Model: FUJITSU MHV2040BH
 
   Device 1  ( Primary Slave )
           ATA Model: 
 
   Device 2  ( Secondary Master )
          Not Present
 
   Device 3  ( Secondary Slave )
          Not Present 

4.3.3.3 show-devs Command

The show-devs command lists the hardware device paths for each device in the firmware device tree. The following shows some sample output.


CODE EXAMPLE 4-3 show-devs Command Output
{0} ok show-devs
/pci-performance-counters@0
/ebus@c0
/pci@0
/niu@80
/cpu@3f
/cpu@3e
/cpu@3d
/cpu@3c
/cpu@3b
/cpu@3a
/cpu@39
/cpu@38
/cpu@37
/cpu@36
/cpu@35
/cpu@34
/cpu@33
/cpu@32
/cpu@31
/cpu@30
/cpu@2f
/cpu@2e
/cpu@2d
/cpu@2c
/cpu@2b
/cpu@2a
/cpu@29
/cpu@28
/cpu@27
/cpu@26
/cpu@25
/cpu@24
/cpu@23
/cpu@22
/cpu@21
/cpu@20
/cpu@1f
/cpu@1e
/cpu@1d
/cpu@1c
/cpu@1b
/cpu@1a
/cpu@19
/cpu@18
/cpu@17
/cpu@16
/cpu@15
/cpu@14
/cpu@13
/cpu@12
/cpu@11
/cpu@10
/cpu@f
/cpu@e
/cpu@d
/cpu@c
/cpu@b
/cpu@a
/cpu@9
/cpu@8
/cpu@7
/cpu@6
/cpu@5
/cpu@4
/cpu@3
/cpu@2
/cpu@1
/cpu@0
/virtual-devices@100
/virtual-memory
/memory@m0,8000000
/aliases
/options
/openprom
/chosen
/packages
/ebus@c0/serial@0,ca0000
/pci@0/pci@0
/pci@0/pci@0/pci@a
/pci@0/pci@0/pci@9
/pci@0/pci@0/pci@8
/pci@0/pci@0/pci@2
/pci@0/pci@0/pci@1
/pci@0/pci@0/pci@a/pci@0
/pci@0/pci@0/pci@a/pci@0/usb@4,2
/pci@0/pci@0/pci@a/pci@0/usb@4,1
/pci@0/pci@0/pci@a/pci@0/usb@4
/pci@0/pci@0/pci@a/pci@0/usb@4,2/storage@2
/pci@0/pci@0/pci@a/pci@0/usb@4,2/storage@2/disk
/pci@0/pci@0/pci@9/network@0,1
/pci@0/pci@0/pci@9/network@0
/pci@0/pci@0/pci@8/scsi@0
/pci@0/pci@0/pci@8/scsi@0/disk
/pci@0/pci@0/pci@8/scsi@0/tape
/pci@0/pci@0/pci@2/network@0,1
/pci@0/pci@0/pci@2/network@0
/pci@0/pci@0/pci@1/network@0,1
/pci@0/pci@0/pci@1/network@0
/niu@80/network@1
/niu@80/network@0
/virtual-devices@100/rtc@5
/virtual-devices@100/console@1
/virtual-devices@100/flashprom@0
/virtual-devices@100/random-number-generator@e
/virtual-devices@100/ncp@6
/virtual-devices@100/n2cp@7
/virtual-devices@100/channel-devices@200
/virtual-devices@100/channel-devices@200/virtual-channel-client@1
/virtual-devices@100/channel-devices@200/virtual-channel@0
/virtual-devices@100/channel-devices@200/virtual-channel-client@2
/virtual-devices@100/channel-devices@200/virtual-channel@3
/openprom/client-services
/packages/obp-tftp
/packages/kbd-translator
/packages/SUNW,asr
/packages/dropins
/packages/terminal-emulator
/packages/disk-label
/packages/deblocker
/packages/SUNW,builtin-drivers 

4.3.3.4 Using watch-net and watch-net-all Commands to Check the Network

The watch-net diagnostics test monitors Ethernet packets on the primary network interface. The watch-net-all diagnostics test monitors Ethernet packets on the primary network interface and on any additional network interfaces connected to the system board. Good packets received by the system are indicated by a period (.). Errors such as the framing error and the cyclic redundancy check (CRC) error are indicated with an X and an associated error description.

single-step bullet  To start the watch-net diagnostic test, type the watch-net command at the ok prompt.


{0} ok watch-net
1000 Mbps full duplex Link up
Looking for Ethernet Packets.
‘.’ is a Good Packet. ‘X’ is a Bad Packet.
Type any key to stop.................................
 

single-step bullet  To start the watch-net-all diagnostic test, type watch-net-all at the ok prompt.


{0} ok watch-net-all
/pci@0/pci@0/pci@1/network@0,1
1000 Mbps full duplex Link up
Looking for Ethernet Packets.
‘.’ is a Good Packet. ‘X’ is a Bad Packet.
Type any key to stop.
..... 
/pci@0/pci@0/pci@1/network@0
1000 Mbps full duplex  Link up 
Looking for Ethernet Packets. 
’.’ is a Good Packet.  ’X’ is a Bad Packet.
Type any key to stop.
.....
{0} ok

4.3.4 OpenBoot Configuration Variables

The OpenBoot configuration variables are stored in the OBP flash PROM and determine how and when OpenBoot tests are performed. This section explains how to access and modify OpenBoot configuration variables. For a list of important OpenBoot configuration variables, see TABLE 4-2.

Changes to OpenBoot configuration variables take effect at the next reboot.


TABLE 4-2 OpenBoot Configuration Variables

Variable

Possible Values

Default Value

Description

ansi-terminal?
true, false
true

If true, enable ANSI terminal emulation.

auto-boot?
true, false
true

If true, boots automatically after power on or reset.

auto-boot-on-error?
true, false
false

If true, boot automatically after system error.

boot-command
variable-name
boot

Action following a boot command.

boot-file

variable-name

none

File from which to boot if diag-switch? is false.

boot-device

variable-name

disk net

Device(s) from which to boot if diag-switch? is false.

diag-switch?
true, false
false

If true:

  • After a boot request, boot diag-file from diag-device

If false:

  • After a boot request, boot boot-file from boot-device
error-reset-recovery
boot, none, sync
boot

Specifies recovery action after an error reset. Default is boot.

  • none - No recovery action.
  • boot - System attempts to boot.
  • sync - Firmware attempts to execute a Solaris sync callback routine.
fcode-debug?
true, false
false

If true, include name fields for plug-in device FCodes.

input-device
keyboard, virtual-console 
virtual-console

Power-on input device.

load-base
0-n
16384

Address.

local-mac-address?
true, false
true

If true, network drivers use their own MAC address, not the server MAC address.

network-boot-arguments
[protocol, ] [key=value, ]
none

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. For further information, see the eeprom (1M) man page or your Solaris Reference Manual.

nvramrc
variable-name
none

Command script to execute if use-nvramrc? is true.

oem-banner?
true, false	
false

If true, use custom OEM banner.

oem-logo?
true, false	
false

If true, use custom OEM logo; otherwise, use Sun logo.

output-device
screen, virtual-console
virtual-console

Power-on output device.

screen-#columns
0-n
80

Sets number of columns on screen.

screen-#rows
0-n
34

Sets number of rows on screen.

scsi-initiator-id
0-15
7

SCSI ID of the Serial Attached SCSI controller.

security-#badlogins
variable-name
none

Number of incorrect security password attempts.

security-mode
none, command, full
none

Firmware security level.

security-password
variable-name
none

Firmware security password if security-mode is not none (never displayed). Do not set this directly.

ttya-mode
9600,8,n,1,-
9600,8,n,1,-

Serial management port (baud rate, bits, parity, stop, handshake). The serial management port only works at the default values.

use-nvramrc?
true, false
false

If true, execute commands in NVRAMRC during server startup.

verbosity
max, min, none, normal
min

Controls the amount and detail of OpenBoot output.
Default is min.

  • none - Only error and fatal messages are displayed on the system console.
  • min - Notice, error, warning, and fatal messages are displayed on the system console.
  • normal - Summary progress and operational messages are displayed on the system console in addition to the messages displayed by the min setting.
  • max - Detailed progress and operational messages are displayed on the system console.

4.3.4.1 Viewing and Setting OpenBoot Configuration Variables

single-step bullet  Halt the server to display the ok prompt.

The following example shows a short excerpt of this command’s output.


{0} ok printenv
Variable Name         Value                          Default Value
 
local-mac-address?      true                           true
fcode-debug?            false                          false
scsi-initiator-id       7                              7
oem-logo?               false                          false
auto-boot?              true                           true 
boot-command            boot                           boot
boot-file
boot-device             disk net                       disk net
use-nvramrc?            false                          false
error-reset-recovery    boot                           boot
{0} ok


4.4 Error Handling Summary

Error handling during the power-on sequence falls into one of the following three cases:



Note - If POST or OpenBoot firmware detects a nonfatal error associated with the normal boot device, the OpenBoot firmware automatically unconfigures the failed device and tries the next-in-line boot device, as specified by the boot-device configuration variable.



4.5 Automatic System Recovery

Automatic system recovery (ASR) consists of self-test features and an autoconfiguration capability to detect failed hardware components and unconfigure them. By enabling ASR, the server is able to resume operating after certain nonfatal hardware faults or failures have occurred.

If a component is monitored by ASR and the server is capable of operating without it, the server automatically reboots if that component develops a fault or fails. This capability prevents a faulty hardware component from stopping operation of the entire system or causing the system to fail repeatedly.

If a fault is detected during the power-on sequence, the faulty component is disabled. If the system remains capable of functioning, the boot sequence continues.

To support this degraded boot capability, the OpenBoot firmware uses the 1275 client interface (by means of the device tree) to mark a device as either failed or disabled, creating an appropriate status property in the device tree node. The Solaris OS does not activate a driver for any subsystem marked in this way.

As long as a failed component is electrically dormant (not causing random bus errors or signal noise, for example), the system reboots automatically and resumes operation while a service call is made.

Once a failed or disabled device is replaced with a new one, the OpenBoot firmware automatically modifies the status of the device upon reboot.



Note - ASR is not enabled until you activate it (see Section 4.5.1.1, To Enable Automatic System Recovery).


4.5.1 Enabling and Disabling Automatic System Recovery

The automatic system recovery (ASR) feature is not activated until you enable it. Enabling ASR requires changing configuration variables in OpenBoot.

4.5.1.1 To Enable Automatic System Recovery

1. At the ok prompt, type:


ok setenv auto-boot true
ok setenv auto-boot-on-error? true

2. To cause the parameter changes to take effect, type:


ok reset-all

The system permanently stores the parameter changes and boots automatically when the OpenBoot configuration variable auto-boot? is set to true (its default value).



Note - To store parameter changes, you can also power cycle the system using the front panel Power button.


4.5.1.2 To Disable Automatic System Recovery

1. At the ok prompt, type:


ok setenv auto-boot-on-error? false

2. To cause the parameter changes to take effect, type:


ok reset-all

The system permanently stores the parameter change.



Note - To store parameter changes, you can also power cycle the system using the front panel Power button.


After you disable the automatic system recovery (ASR) feature, it is not activated again until you re-enable it.


4.6 Network Device Aliases

A device alias is a shorthand representation of a device path. The Solaris OS provides some predefined device aliases for the network devices so that you do not need to type the full device path name. TABLE 4-3 lists the network device aliases, the default Solaris OS device names, and associated ports for the Netra CP3260 blade server. You can use the devalias command to display the device aliases.


TABLE 4-3 Network Device Aliases

Device Alias

Default Solaris 10 OS
Device Name

Port Description

net, net0

e1000g0

Base Interface Ethernet 0

net1

e1000g1

Base Interface Ethernet 1

net2

e1000g4

Management Ethernet (Ethernet port on front panel)

net3

e1000g5

Management Ethernet Rear Access (Ethernet port on ARTM)

net4

e1000g2

Rear Access (ARTM) Ethernet 0

net5

e1000g3

Rear Access (ARTM) Ethernet 1



4.7 Retrieving Device Information

You can use the Solaris platform information and control library (PICL) framework for obtaining the state and condition of the Netra CP3260 blade server.

The PICL framework provides information about the system configuration that it maintains in the PICL tree. Within this PICL tree is a subtree named frutree, which represents the hierarchy of system field-replaceable units (FRUs) with respect to a root node in the tree called chassis. The frutree represents physical resources of the system. The PICL tree is updated whenever a change occurs in a device’s status.

TABLE 4-4 shows the frutree entries and properties that describe the condition of the Netra CP3260 blade server.


TABLE 4-4 PICL Frutree Entries and Description for the Netra CP3260 Board

Frutree Entry:Property

Entry Description

Example of Condition

CPU (location) :State

State of the receptacle or slot

connected

CPU (fru) :Condition

Condition of the blade server or occupant

ok

CPU (fru) :State

State of the blade server or occupant

configured

CPU (fru) :FRUType

FRU type

bridge/fhs


The prtpicl -v command shows the condition of all devices in the PICL tree. Sample output from the prtpicl command on the Netra CP3260 blade server is shown in CODE EXAMPLE 4-4.


CODE EXAMPLE 4-4 prtpicl Command Output
# prtpicl
  / (picl, 6f00000001)
     platform (sun4v, 6f00000005)
         scsi_vhci (devctl, 6f00000022)
         memory (memory, 6f000000cd)
             memory-segment (memory-segment, 6f00000c10)
                 memory-bank (memory-bank, 6f00000c13)
                 memory-bank (memory-bank, 6f00000c1c)
                 memory-bank (memory-bank, 6f00000c25)
                 memory-bank (memory-bank, 6f00000c2e)
         virtual-devices (virtual-devices, 6f000000df)
             channel-devices (channel-devices, 6f000000f2)
                 virtual-channel (obp-device, 6f000000ff)
                 virtual-channel-client (obp-device, 6f00000109)
                 virtual-channel (obp-device, 6f00000113)
                 virtual-channel-client (obp-device, 6f0000011d)
             n2cp (obp-device, 6f00000127)
             ncp (obp-device, 6f00000134)
             random-number-generator (obp-device, 6f00000141)
             flashprom (flashprom, 6f0000014d)
             console (serial, 6f00000154)
             rtc (obp-device, 6f00000161)
         cpu (cpu, 6f00000169)
         cpu (cpu, 6f00000177)
         cpu (cpu, 6f00000185)
         cpu (cpu, 6f00000193)
         cpu (cpu, 6f000001a1)
         cpu (cpu, 6f000001af)
         cpu (cpu, 6f000001bd)
         cpu (cpu, 6f000001cb)
         cpu (cpu, 6f000001d9)
         cpu (cpu, 6f000001e7)
         cpu (cpu, 6f000001f5)
         cpu (cpu, 6f00000203)
         cpu (cpu, 6f00000211)
         cpu (cpu, 6f0000021f)
         cpu (cpu, 6f0000022d)
         cpu (cpu, 6f0000023b)
         cpu (cpu, 6f00000249)
         cpu (cpu, 6f00000257)
         cpu (cpu, 6f00000265)
         cpu (cpu, 6f00000273)
         cpu (cpu, 6f00000281)
         cpu (cpu, 6f0000028f)
         cpu (cpu, 6f0000029d)
         cpu (cpu, 6f000002ab)
         cpu (cpu, 6f000002b9)
         cpu (cpu, 6f000002c7)
         cpu (cpu, 6f000002d5)
         cpu (cpu, 6f000002e3)
         cpu (cpu, 6f000002f1)
         cpu (cpu, 6f000002ff)
         cpu (cpu, 6f0000030d)
         cpu (cpu, 6f0000031b)
         cpu (cpu, 6f00000329)
         cpu (cpu, 6f00000337)
         cpu (cpu, 6f00000345)
         cpu (cpu, 6f00000353)
         cpu (cpu, 6f00000361)
         cpu (cpu, 6f0000036f)
         cpu (cpu, 6f0000037d)
         cpu (cpu, 6f0000038b)
         cpu (cpu, 6f00000399)
         cpu (cpu, 6f000003a7)
         cpu (cpu, 6f000003b5)
         cpu (cpu, 6f000003c3)
         cpu (cpu, 6f000003d1)
         cpu (cpu, 6f000003df)
         cpu (cpu, 6f000003ed)
         cpu (cpu, 6f000003fb)
         cpu (cpu, 6f00000409)
         cpu (cpu, 6f00000417)
         cpu (cpu, 6f00000425)
         cpu (cpu, 6f00000433)
         cpu (cpu, 6f00000441)
         cpu (cpu, 6f0000044f)
         cpu (cpu, 6f0000045d)
         cpu (cpu, 6f0000046b)
         cpu (cpu, 6f00000479)
         cpu (cpu, 6f00000487)
         cpu (cpu, 6f00000495)
         cpu (cpu, 6f000004a3)
         cpu (cpu, 6f000004b1)
         cpu (cpu, 6f000004bf)
         cpu (cpu, 6f000004cd)
         cpu (cpu, 6f000004db)
         pci (pciex, 6f000004e9)
             pci (pciex, 6f0000050e)
                 pci (pciex, 6f00000533)
                     network (network, 6f0000055a)
                     network (network, 6f00000582)
                 pci (pciex, 6f000005aa)
                     network (network, 6f000005d1)
                     network (network, 6f000005f9)
                 pci (pciex, 6f00000621)
                 pci (pciex, 6f00000647)
                     network (network, 6f0000066e)
                     network (network, 6f00000696)
                 pci (pciex, 6f000006be)
                     pci (pci, 6f000006e4)
                         usb (ohci, 6f0000070e)
                         usb (ohci, 6f00000736)
                         usb (ehci, 6f0000075e)
                             storage (obp-device, 6f00000786)
                                 disk (block, 6f000007b0)
         ebus (ebus, 6f000007ca)
             serial (serial, 6f000007db)
         pci-performance-counters (obp-device, 6f000007ea)
         niu (sun4v, 6f000007f5)
             network (network, 6f00000804)
             network (network, 6f00000814)
         os-io (console, 6f00000824)
         pseudo (devctl, 6f00000843)
             zconsnex (devctl, 6f0000084c)
     obp (picl, 6f0000001f)
         packages (packages, 6f00000034)
             SUNW,builtin-drivers (SUNW,builtin-drivers, 6f0000003a)
             deblocker (deblocker, 6f00000040)
             disk-label (disk-label, 6f00000047)
             terminal-emulator (terminal-emulator, 6f0000004d)
             dropins (dropins, 6f00000054)
             SUNW,asr (SUNW,asr, 6f0000005b)
             kbd-translator (kbd-translator, 6f00000061)
             obp-tftp (obp-tftp, 6f00000067)
             ufs-file-system (ufs-file-system, 6f0000006d)
         chosen (chosen, 6f00000074)
         openprom (openprom, 6f00000081)
             client-services (client-services, 6f0000008b)
         options (options, 6f00000091)
         aliases (aliases, 6f000000be)
         virtual-memory (virtual-memory, 6f000000d5)
         iscsi (iscsi, 6f0000082b)
     physical-platform (picl, 6f00000c44)
         SYS (chassis, 6f00000c47)
             MB (container, 6f00000c4d)
                 SEEPROM (other, 6f00000c58)
                 SCC_NVRAM (other, 6f00000c5e)
                 GBE0 (container, 6f00000c64)
                 GBE1 (container, 6f00000c6b)
                 PCIE (container, 6f00000c72)
                 PCIE-IO (container, 6f00000c79)
                 CMP0 (other, 6f00000c80)
                     NIU0 (other, 6f00000c86)
                     NIU1 (other, 6f00000c8c)
                     PIU0 (other, 6f00000c92)
                     MCU0 (other, 6f00000c98)
                     MCU1 (other, 6f00000c9e)
                     MCU2 (other, 6f00000ca4)
                     MCU3 (other, 6f00000caa)
                     L2_BANK0 (other, 6f00000cb0)
                     L2_BANK1 (other, 6f00000cb6)
                     L2_BANK2 (other, 6f00000cbc)
                     L2_BANK3 (other, 6f00000cc2)
                     L2_BANK4 (other, 6f00000cc8)
                     L2_BANK5 (other, 6f00000cce)
                     L2_BANK6 (other, 6f00000cd4)
                     L2_BANK7 (other, 6f00000cda)
                     BR0 (other, 6f00000ce0)
                         CH0 (other, 6f00000ce6)
                             D0 (module, 6f00000cec)
                                 R0 (unknown, 6f00000cf7)
                                 R1 (unknown, 6f00000cfc)
                                 SEEPROM (other, 6f00000d01)
                                 PRSNT (presence-indicator, 6f00000d07)
                                 T_AMB (temperature-sensor, 6f00000d0f)
                         CH1 (other, 6f00000d1f)
                             D0 (module, 6f00000d25)
                                 R0 (unknown, 6f00000d30)
                                 R1 (unknown, 6f00000d35)
                                 SEEPROM (other, 6f00000d3a)
                                 PRSNT (presence-indicator, 6f00000d40)
                                 T_AMB (temperature-sensor, 6f00000d48)
                     BR1 (other, 6f00000d58)
                         CH0 (other, 6f00000d5e)
                             D0 (module, 6f00000d64)
                                 R0 (unknown, 6f00000d6f)
                                 R1 (unknown, 6f00000d74)
                                 SEEPROM (other, 6f00000d79)
                                 PRSNT (presence-indicator, 6f00000d7f)
                                 T_AMB (temperature-sensor, 6f00000d87)
                         CH1 (other, 6f00000d97)
                             D0 (module, 6f00000d9d)
                                 R0 (unknown, 6f00000da8)
                                 R1 (unknown, 6f00000dad)
                                 SEEPROM (other, 6f00000db2)
                                 PRSNT (presence-indicator, 6f00000db8)
                                 T_AMB (temperature-sensor, 6f00000dc0)
                     BR2 (other, 6f00000dd0)
                         CH0 (other, 6f00000dd6)
                             D0 (module, 6f00000ddc)
                                 R0 (unknown, 6f00000de7)
                                 R1 (unknown, 6f00000dec)
                                 SEEPROM (other, 6f00000df1)
                                 PRSNT (presence-indicator, 6f00000df7)
                                 T_AMB (temperature-sensor, 6f00000dff)
                         CH1 (other, 6f00000e0f)
                             D0 (module, 6f00000e15)
                                 R0 (unknown, 6f00000e20)
                                 R1 (unknown, 6f00000e25)
                                 SEEPROM (other, 6f00000e2a)
                                 PRSNT (presence-indicator, 6f00000e30)
                                 T_AMB (temperature-sensor, 6f00000e38)
                     BR3 (other, 6f00000e48)
                         CH0 (other, 6f00000e4e)
                             D0 (module, 6f00000e54)
                                 R0 (unknown, 6f00000e5f)
                                 R1 (unknown, 6f00000e64)
                                 SEEPROM (other, 6f00000e69)
                                 PRSNT (presence-indicator, 6f00000e6f)
                                 T_AMB (temperature-sensor, 6f00000e77)
                         CH1 (other, 6f00000e87)
                             D0 (module, 6f00000e8d)
                                 R0 (unknown, 6f00000e98)
                                 R1 (unknown, 6f00000e9d)
                                 SEEPROM (other, 6f00000ea2)
                                 PRSNT (presence-indicator, 6f00000ea8)
                                 T_AMB (temperature-sensor, 6f00000eb0)
                     CORE0 (other, 6f00000ec0)
                         SPU (other, 6f00000ec6)
                         FPU (other, 6f00000ecc)
                         ICACHE (other, 6f00000ed2)
                         DCACHE (other, 6f00000ed8)
                         IMMU (other, 6f00000ede)
                         DMMU (other, 6f00000ee4)
                     CORE1 (other, 6f00000eea)
                         SPU (other, 6f00000ef0)
                         FPU (other, 6f00000ef6)
                         ICACHE (other, 6f00000efc)
                         DCACHE (other, 6f00000f02)
                         IMMU (other, 6f00000f08)
                         DMMU (other, 6f00000f0e)
                     CORE2 (other, 6f00000f14)
                         SPU (other, 6f00000f1a)
                         FPU (other, 6f00000f20)
                         ICACHE (other, 6f00000f26)
                         DCACHE (other, 6f00000f2c)
                         IMMU (other, 6f00000f32)
                         DMMU (other, 6f00000f38)
                     CORE3 (other, 6f00000f3e)
                         SPU (other, 6f00000f44)
                         FPU (other, 6f00000f4a)
                         ICACHE (other, 6f00000f50)
                         DCACHE (other, 6f00000f56)
                         IMMU (other, 6f00000f5c)
                         DMMU (other, 6f00000f62)
                     CORE4 (other, 6f00000f68)
                         SPU (other, 6f00000f6e)
                         FPU (other, 6f00000f74)
                         ICACHE (other, 6f00000f7a)
                         DCACHE (other, 6f00000f80)
                         IMMU (other, 6f00000f86)
                         DMMU (other, 6f00000f8c)
                     CORE5 (other, 6f00000f92)
                         SPU (other, 6f00000f98)
                         FPU (other, 6f00000f9e)
                         ICACHE (other, 6f00000fa4)
                         DCACHE (other, 6f00000faa)
                         IMMU (other, 6f00000fb0)
                         DMMU (other, 6f00000fb6)
                     CORE6 (other, 6f00000fbc)
                         SPU (other, 6f00000fc2)
                         FPU (other, 6f00000fc8)
                         ICACHE (other, 6f00000fce)
                         DCACHE (other, 6f00000fd4)
                         IMMU (other, 6f00000fda)
                         DMMU (other, 6f00000fe0)
                     CORE7 (other, 6f00000fe6)
                         SPU (other, 6f00000fec)
                         FPU (other, 6f00000ff2)
                         ICACHE (other, 6f00000ff8)
                         DCACHE (other, 6f00000ffe)
                         IMMU (other, 6f00001004)
                         DMMU (other, 6f0000100a)
                     P0 (other, 6f00001010)
                     P1 (other, 6f00001016)
                     P2 (other, 6f0000101c)
                     P3 (other, 6f00001022)
                     P4 (other, 6f00001028)
                     P5 (other, 6f0000102e)
                     P6 (other, 6f00001034)
                     P7 (other, 6f0000103a)
                     P8 (other, 6f00001040)
                     P9 (other, 6f00001046)
                     P10 (other, 6f0000104c)
                     P11 (other, 6f00001052)
                     P12 (other, 6f00001058)
                     P13 (other, 6f0000105e)
                     P14 (other, 6f00001064)
                     P15 (other, 6f0000106a)
                     P16 (other, 6f00001070)
                     P17 (other, 6f00001076)
                     P18 (other, 6f0000107c)
                     P19 (other, 6f00001082)
                     P20 (other, 6f00001088)
                     P21 (other, 6f0000108e)
                     P22 (other, 6f00001094)
                     P23 (other, 6f0000109a)
                     P24 (other, 6f000010a0)
                     P25 (other, 6f000010a6)
                     P26 (other, 6f000010ac)
                     P27 (other, 6f000010b2)
                     P28 (other, 6f000010b8)
                     P29 (other, 6f000010be)
                     P30 (other, 6f000010c4)
                     P31 (other, 6f000010ca)
                     P32 (other, 6f000010d0)
                     P33 (other, 6f000010d6)
                     P34 (other, 6f000010dc)
                     P35 (other, 6f000010e2)
                     P36 (other, 6f000010e8)
                     P37 (other, 6f000010ee)
                     P38 (other, 6f000010f4)
                     P39 (other, 6f000010fa)
                     P40 (other, 6f00001100)
                     P41 (other, 6f00001106)
                     P42 (other, 6f0000110c)
                     P43 (other, 6f00001112)
                     P44 (other, 6f00001118)
                     P45 (other, 6f0000111e)
                     P46 (other, 6f00001124)
                     P47 (other, 6f0000112a)
                     P48 (other, 6f00001130)
                     P49 (other, 6f00001136)
                     P50 (other, 6f0000113c)
                     P51 (other, 6f00001142)
                     P52 (other, 6f00001148)
                     P53 (other, 6f0000114e)
                     P54 (other, 6f00001154)
                     P55 (other, 6f0000115a)
                     P56 (other, 6f00001160)
                     P57 (other, 6f00001166)
                     P58 (other, 6f0000116c)
                     P59 (other, 6f00001172)
                     P60 (other, 6f00001178)
                     P61 (other, 6f0000117e)
                     P62 (other, 6f00001184)
                     P63 (other, 6f0000118a)
                 V_VMEML (voltage-sensor, 6f00001190)
                 V_VCORE (voltage-sensor, 6f00001197)
             TTYA (other, 6f0000119e)
# 

For more information on the PICL framework, refer to the picld(1M) man page.


4.8 Multiplexing to Zones 2 and 3

A multiplexer (MUX) controller and ShMM configuration is available for use on Netra CP3260 blade servers to multiplex 10GbE network interface unit (NIU) ports to Zone 2 (backplane) and/or to Zone 3 (ARTM).



Note - The host must be configured to match the MUX configuration.


For customers using blade servers in a Netra CT 900 chassis, a complete end-to-end solution is provided. The MUX feature is implemented through the ShMM firmware and IPMI commands on the IPMC. These commands extend MUX configuration access to the management software so that during blade server hot-swaps, the MUX configuration is persistent across blade server activations and deactivations.

Customers who use Sun Netra CP3260 blade servers in a third-party chassis, which does not have the Netra CT 900 chassis ShMM management software implemented, can save MUX configurations in a configuration file or in a persistent storage managed by system management software. When the system management software detects blade server activation, it sends the command to set MUX to the programmed state. Because management software sends the command during every blade server activation, the configuration is persistent across blade server deactivation and activation.

Refer to the following documentation:

Be aware of the following possible issues when multiplexing zones: