CERN-IPMC OEM Implementation Question

Hi,

I would like to implement an OEM command for the CERN-IPMC. I am having trouble initializing a command with code 0x44 for use from the shelf: the CERN-IPMC does not recognize the command exists.

I have copied the file user_oem.c from the “ep-ese-be-xtca/ipmc-project/ipmc_user” repository from gitlab into my personal ipmc_user directory within ipmc_project.
I have made no changes to this file and am able to compile & flash the code.

From the shelf, I call either

clia sendcmd 98 2e 44

  • 98 = Addr of the board with the CERN-IPMC within the shelf
  • 2e = NetFunc. I logged the output of IPMI_NETFN_OEM_GROUP to obtain this number
  • 44 = Command code, initialized on line 25 as #define OEM_USER_I2CEXAMPLE 44
    ``or

clia sendcmd board 13 2e 44
clia sendcmd board 0D 2e 44 (In case 13 was read as HEX)

clia sendcmd 98 2e 44 01 01 01 01 (I’ve sent 4 params of 01 as the code expects 4 arguments.)

``For any of the cases, I obtain the completion code: Completion Code 0xC1

From the IPMI specification on page 66 of the PDF, this implies the command is not recognized.

To test that OEM commands work in general, I attempted to obtain the Device ID
clia sendcmd board 13 6 1

This command returns the ID with the completion code: Completion Code 0x00 (Command Completed Normally)
So it seems the CERN-IPMC is able to obtain OEM commands from the shelf.

Is there something else I need to do within the CERN-IPMC codebase other than copying the user_oem.c file for an OEM command to be initialized?

Kind Regards,

Mars Lyukova

Dear Mars,

When you send an OEM command, your data requires the IANA code on the 3 first bytes. It is the manufacturer ID set in the XML file. Therefore, if you did not change it, your command’s data have to start with 0x60 0x00 0x00.

I hope it will help,

Kind regards,
Julian

Dear Julian,

Thank you for your response, not having the IANA code was the issue. The OEM command works as expected now using clia sendcmd board 13 2e 44 60 00 00 <params> !

Kind Regards,
Mars Lyukova

Dear Julian,

Thank you for your response, not having the IANA code was the issue. The OEM command works as expected now using clia sendcmd board 13 2e 44 60 00 00 !

Kind Regards,

Mars Lyukova