HP Management Base Installation and User's Guide (May 2009)
The final complexity in addressing an IPMI responder or target device is the IPMI Bus, or IPMB.
IPMB is an address-based I2C bus that passes IPMI commands back and forth between intelligent
controllers.
Some HP Integrity Servers do have IPMB, but its use is hidden by hpbmc and not directly exposed.
However, on the HP ATCA platform, this functionality is of immense interest. Consult ATCA
documentation for details.
The IPMI Send Message command is used to bridge data from external sources (System Interface
or RMCP) to and from an IPMB behind the BMC. The -b argument to hpbmc takes a hexadecimal
IPMB address to specify the target. For example, to issue Get Device ID command to IPMB
address 0x82 behind an RMCP responder at atca.xx.hp.com with password please, the syntax
is:
# hpbmc -d please@atca.xx.hp.com -b 82 IPMIraw 18 1
Decoding Events with hpbmc
HP Management Base libraries and utilities generate extensive decoding of SEL entries. HP
Integrity servers support several event types in the SEL. The first is type 02 events, which are
mostly documented and described in the IPMI specification. It is possible to synthesize a complete
textual description of any type 02 event by successively decoding the bitfields and looking at
various tables in the IPMI specification. These tables and resolution algorithms are coded into
libezbmc and thus accessible to hpbmc.
Type 02 events have an OEM extension subclass, which is used for some events. The hpbmc
utility decodes those events as well (obviously a feature not found in the any open source tools).
For various historical and technical reasons, the coverage of type 02 events is insufficient for the
entire HP Integrity server line. This fact is especially true across multiple operating systems and
the cellular platforms. HP Integrity servers also generate full OEM events; for that purpose, HP
has chosen type E0 and E1 events. These events consume two SEL entries, one for the primary
data set and the second for a timestamp.
Internally, HP maintains an event database that contains all these events along with additional
information about each event:
• Platforms on which the event can be generated
• Severity
• Summary/Description/Cause/Action text (ranging from a few words to entire paragraphs)
• SNMP trap OID or WBEM indication to be sent on event occurrence
• Trend analysis limits
This database tends to grow over time as new platforms are added to the server families. A static
snapshot of this database called the event dictionary ships with HP Management Base and is
crucial to the decoding and handling of all events. This snapshot is updated with each release
of HP Management Base.
There are several hpbmc directives concerned with event decoding. The first is SELprint which
gives the decoded text for all contents of the SEL. Similar to SELprint is FPLprint. HP Integrity
servers have a custom log called the Forward Progress Log, or FPL. This is where all status and
transactions are logged, along with errors and more serious events found only in the SEL. The
FPL can be considered a superset of the SEL. The FPL is not part of the IPMI specification.
The SELprintraw and FPLprintraw directives can print the same decoded event data with
the actual bytes of the SEL entry.
Another useful directive is SELdecode. The MP/iLO cards of Integrity Servers and some EFI
utilities report a SEL event in its raw 16-byte form as two large 8-byte numbers. The SELdecode
directive takes those numbers as input arguments and provides a textual decode.
The final event directive is EventLookup, used to generate decodes for partial event information.
Entry-level servers (non- cellular) type 02 events can be categorized by an event triplet, three of
Decoding Events with hpbmc 13