From 9372d2e34e25c02b45c5b780e95b62b1a0589c4a Mon Sep 17 00:00:00 2001 From: Jim Mankovich Date: Mon, 11 Aug 2014 11:21:23 -0600 Subject: [PATCH] ID: 328 HPM.2 fixes Fix commited for Dmitry Bazhenov --- include/ipmitool/hpm2.h | 5 +++++ lib/hpm2.c | 4 +++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/include/ipmitool/hpm2.h b/include/ipmitool/hpm2.h index 1c0a612..9e2a3a6 100644 --- a/include/ipmitool/hpm2.h +++ b/include/ipmitool/hpm2.h @@ -39,6 +39,11 @@ #define HPM2_LAN_PARAMS_REV 0x01 #define HPM2_SOL_PARAMS_REV 0x01 #define HPM3_LAN_PARAMS_REV 0x01 +/* IPMI defines parameter revision as + * MSN = present revision, + * LSN = oldest revision parameter is + * backward compatible with. */ +#define LAN_PARAM_REV(x, y) ((x) << 4 | (y) & 0xF) /* HPM.2 capabilities */ #define HPM2_CAPS_SOL_EXTENSION 0x01 diff --git a/lib/hpm2.c b/lib/hpm2.c index e7d6c03..6cb2f80 100644 --- a/lib/hpm2.c +++ b/lib/hpm2.c @@ -30,6 +30,7 @@ * EVEN IF PPS HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. */ +#include #include #include #include @@ -233,7 +234,8 @@ int hpm2_get_lan_channel_capabilities(struct ipmi_intf * intf, } /* check parameter revision */ - if (rsp->data[0] != HPM2_LAN_PARAMS_REV) { + if (rsp->data[0] != + LAN_PARAM_REV(HPM2_LAN_PARAMS_REV, HPM2_LAN_PARAMS_REV)) { lprintf(LOG_NOTICE, "Bad HPM.2 LAN parameter revision, rev=%d", rsp->data[0]); return -1;