ID: 3587318 - "dcmi discover" is not DCMI 1.5 compatible

Command "dcmi discover" fails with ``ERROR! This command is not available on this
platform'' unless the DCMI implementation advertises DCMI 1.0 or 1.1 conformance.
This means command will fail DCMI 1.5 capable hardware. Commit fixes this issue.

Commit for Rob Swindell
This commit is contained in:
Zdenek Styblik 2013-06-02 13:19:57 +00:00
parent 384618d1bc
commit 63ba1cc610
2 changed files with 5 additions and 2 deletions

View File

@ -44,6 +44,7 @@
#define IPMI_DCMI_CONFORM 0x0001
#define IPMI_DCMI_1_1_CONFORM 0x0101
#define IPMI_DCMI_1_5_CONFORM 0x0501
#define DCMI_MAX_BYTE_SIZE 0x10
#define DCMI_MAX_BYTE_TEMP_READ_SIZE 0x08

View File

@ -546,8 +546,10 @@ ipmi_dcmi_prnt_getcapabilities(struct ipmi_intf * intf, uint8_t selector) {
struct capabilities cape;
memcpy(&cape, rsp->data, sizeof (cape));
/* check to make sure that this is a 1.0 and 1.1 command */
if ((cape.conformance != IPMI_DCMI_CONFORM) && (cape.conformance != IPMI_DCMI_1_1_CONFORM)) {
/* check to make sure that this is a 1.0/1.1/1.5 command */
if ((cape.conformance != IPMI_DCMI_CONFORM)
&& (cape.conformance != IPMI_DCMI_1_1_CONFORM)
&& (cape.conformance != IPMI_DCMI_1_5_CONFORM)) {
printf("ERROR! This command is not available on this platform\n");
return -1;
}