Hardware location codes provide a method for mapping connectors or logical functions to their physical locations in the system’s enclosure. For example, it allows you to easily identify the physical port on the system that corresponds with
eth0, or to identify which of the fans on the system is failing. Besides hardware inventory and diagnostics, location codes are also used on HMCs (hardware management consoles) and IVMs (integrated virtualization managers) to identify the devices to be assigned to (or moved between) logical partitions.
Starting with POWER5, both System p and System i started using the same format for location codes. The POWER4 (and POWER3 and JS20) location codes are much shorter (and differ between pSeries and iSeries), but you’ll be able to deal with them once you get the hang of POWER5 (and later) location codes.
In case it matters, location codes are limited to 80 characters in length (to fit on the display on the operator’s panel on the front of the system). They are composed only of uppercase characters, digits, periods, and dashes. They consist of labels separated by dashes. This is an example of a location code representing a PCI slot:
The initial U indicates that the label represents a “unit” (like a CEC, central electronics complex, or an I/O drawer). The DNZ00Z5 at the end of the label is the serial number of the unit. The “
P1” indicates the first planar on the system (i.e. the motherboard). The “
C3” indicates the third PCI slot on that planar. Looking for labels on the system chassis will help you find the
C3 slot, or the slot might also include an LED that can be turned on to identify the slot (with the
usysident command, to be detailed in a near-future article).
Some of the other labels you may run into with location codes:
An: the nth air handler (fan, blower, etc.)
En: the nth electrical unit (power supply)
Dn: the nth device (hard drive, SES device, etc.)
Ln: the nth logical path (IDE address, SCSI target, fibre channel LUN, etc.)
Tn: the nth port (on a multi-port ethernet adapter, for example)
In other articles on this site, I explain how you can obtain and use location codes using hardware inventory and diagnostic tools. Quick preview: you can use the
lscfg command to view a list of devices with their location codes, and several diagnostic tools will provide the location codes of failing components.
[Edit 2007-10-13: Updated with pointer to article about lsvpd for hardware inventory.]