smbiosmdrv2handler:Fix for MDRV2 get data info

Issue: Mdrv2 get data set info response giving as 0xce which is
incorrect.

Fix: Update MDRiiGetDataInfoResponse structure definition as per IPMI
OEM commands documentation and provided fix to get correct response
as provided in test results.

Tested:
Verified using ipmitool raw commands.
Before:
Command: ipmitool raw 0x3e 0x39 0x01 0x01 //SMMDR Data Set Info Offer
Response: 28 29 2a 2b 2c 2d 2e 2f 30 31 32 33 34 35 36 42
//SMMDR Get Data Set Info command
Command: ipmitool raw 0x3e 0x32 0x01 0x01 0x28 0x29 0x2a 0x2b 0x2c 0x2d
         0x2e 0x2f 0x30 0x31 0x32 0x33 0x34 0x35 0x36 0x42
Response: Unable to send RAW command (channel=0x0 netfn=0x3e lun=0x0
          cmd=0x32 rsp=0xce): Command response could not be provided

After:
Command:  ipmitool raw 0x3e 0x39 0x01 0x01 //SMMDR Data Set Info Offer
Response: 28 29 2a 2b 2c 2d 2e 2f 30 31 32 33 34 35 36 42
//SMMDR Get Data Set Info command
Command:  ipmitool raw 0x3e 0x32 0x01 0x01 0x28 0x29 0x2a 0x2b 0x2c 0x2d
          0x2e 0x2f 0x30 0x31 0x32 0x33 0x34 0x35 0x36 0x42
Response: 02 28 29 2a 2b 2c 2d 2e 2f 30 31 32 33 34 35 36
          42 01 00 00 11 45 0f 00 00 7a 1b

Signed-off-by: jayaprakash Mutyala <mutyalax.jayaprakash@intel.com>
Change-Id: Ia23f1cf19608281dc98e971f9c5e84c7dde4ba61
2 files changed
tree: 7152ad68c890bc38c5df14849f3b10199e2b6555
  1. docs/
  2. include/
  3. non-yocto/
  4. src/
  5. tests/
  6. .clang-format
  7. .gitignore
  8. cmake-format.json
  9. CMakeLists.txt
  10. CMakeLists.txt.in
  11. generate-whitelist.py
  12. ipmi-whitelist.conf
  13. LICENSE
  14. MAINTAINERS
  15. README.md
README.md

Intel IPMI OEM support library

This component is intended to provide Intel-specific IPMI[3] command handlers for OpenBMC. These handlers are intended to integrate BMC with servers based on Intel architecture.

Overview

intel-ipmi-oem serves as an extension[1] to OpenBMC IPMI daemon[2]. It is compiled as a shared library and intended to both:

  • override existing implementation of standard IPMI commands to comply with Intel-specific solutions,
  • provide implementation for non-standard OEM extensions.

Capabilities

Related features provided by the library are grouped in separate source files. Main extensions to vanilla OpenBMC IPMI stack are the following:

  • Acquiring SMBIOS data over IPMI
  • Commands for better integration with Intel hardware
  • Firmware update extensions
  • Extended parsing of IPMI Platform Events[4]

References

  1. OpenBMC IPMI Architecture
  2. Phosphor IPMI Host
  3. IPMI Specification v2.0
  4. Intel Platform Events parsing