Package org.metricshub.ipmi.client
Class DeviceId
java.lang.Object
org.metricshub.ipmi.client.DeviceId
The identity of the BMC: its manufacturer and product IDs, its firmware revision, the IPMI version it implements
and the functions it provides (Get Device ID, IPMI 2.0 section 20.1). The manufacturer ID is the IANA enterprise
number of the vendor (2 for IBM, 343 for Intel, 674 for Dell, 10876 for Supermicro, 19046 for Lenovo...), which
tells which OEM records and commands to expect.
-
Method Summary
Modifier and TypeMethodDescriptionbyte[]Returns the auxiliary firmware revision, four bytes whose meaning the manufacturer defines (a build number, a boot block version).booleanTells whether the BMC is in normal operation, rather than updating its firmware or its SDR repository.data()Returns the reply of the BMC, as the protocol core decodes it.Returns the firmware revision asipmitoolprints it: the major revision, a dot and the two digits of the minor revision (1.44,2.05).Returns the functions the BMC provides: sensors, SDR repository, SEL, FRU inventory, chassis...intid()Returns the device ID the manufacturer gives the controller, 0 when unspecified.Returns the version of IPMI the BMC implements:2.0, or1.5for a BMC that does not implement RMCP+.intReturns the manufacturer ID: the IANA enterprise number of the vendor of the BMC.intReturns the product ID, as the manufacturer numbers its products.booleanTells whether the device provides Device SDRs, as a satellite controller does.intrevision()Returns the revision of the device, as the manufacturer numbers it.toString()
-
Method Details
-
id
public int id()Returns the device ID the manufacturer gives the controller, 0 when unspecified.- Returns:
- the device ID
-
revision
public int revision()Returns the revision of the device, as the manufacturer numbers it.- Returns:
- the device revision
-
firmwareRevision
Returns the firmware revision asipmitoolprints it: the major revision, a dot and the two digits of the minor revision (1.44,2.05).- Returns:
- the firmware revision
-
auxiliaryFirmwareRevision
public byte[] auxiliaryFirmwareRevision()Returns the auxiliary firmware revision, four bytes whose meaning the manufacturer defines (a build number, a boot block version).- Returns:
- the four bytes, or an empty array when the BMC does not send them
-
ipmiVersion
Returns the version of IPMI the BMC implements:2.0, or1.5for a BMC that does not implement RMCP+.- Returns:
- the IPMI version
-
manufacturerId
public int manufacturerId()Returns the manufacturer ID: the IANA enterprise number of the vendor of the BMC.- Returns:
- the manufacturer ID, 0 when unspecified
-
productId
public int productId()Returns the product ID, as the manufacturer numbers its products.- Returns:
- the product ID
-
available
public boolean available()Tells whether the BMC is in normal operation, rather than updating its firmware or its SDR repository.- Returns:
- true when the device is available
-
providesDeviceSdrs
public boolean providesDeviceSdrs()Tells whether the device provides Device SDRs, as a satellite controller does.- Returns:
- true when the device provides Device SDRs
-
functions
Returns the functions the BMC provides: sensors, SDR repository, SEL, FRU inventory, chassis...- Returns:
- the functions, empty when the BMC flags none
-
data
Returns the reply of the BMC, as the protocol core decodes it.- Returns:
- the reply to Get Device ID
-
toString
-