| commit | 5277179a1544e07f52e7441a1ca0a8623848a571 | [log] [tgz] |
|---|---|---|
| author | Jayaprakash Mutyala <mutyalax.jayaprakash@intel.com> | Mon May 30 14:51:01 2022 +0000 |
| committer | AppaRao Puli <apparao.puli@intel.com> | Mon Jun 20 03:23:18 2022 +0000 |
| tree | 552d3e34f4f154c7268a80753703a97590a8d7b0 | |
| parent | 7599bcf9bbd9ba2ca4a7d4e6528ecbe7309769ae [diff] |
Conditionally clear watchdog pre-timeout interrupt
"Clear Message Flags" IPMI command is used to clear the Event Message
buffer, Receive Message queue and Watchdog pre-timeout interrupt flag
if that specific BIT is set.
Existing code is setting the "Watchdog Pre-timeout interrupt" flag to
True when user (host/end user) tries to clear other bits like Message
Buffer or Receive Message Queue which is not correct. So correct the
condition to clear "watchdog Pre-timeout interrupt" flag only if BIT 3
is set.
Tested:
Verified using cmdtool utility and clear linux OS.
On Cmdtool-
Case 1: When "PreTimeoutInterruptOccurFlag" flag is enable and clear
other flags
Command: > cmdtool.efi 20 18 31 //Get Message Flags
Response: 00 08
Command: > cmdtool.efi 20 18 30 2 //Clear Message Flags
Response: 00
Command: > cmdtool.efi 20 18 31 //Get Message Flags
Response: 00 08 //watchdog "PreTimeoutInterruptOccurFlag" is not
//cleared
Case 2: When "PreTimeoutInterruptOccurFlag" flag is enable and clear
PreTimeoutInterruptOccurFlag
Command: > cmdtool.efi 20 18 30 8 //Clear Message Flags
Response: 00
Command: > cmdtool.efi 20 18 31 //Get Message Flags
Response: 00 02 //watchdog "PreTimeoutInterruptOccurFlag" is not
//cleared
On Linux OS-
Case 1: When "PreTimeoutInterruptOccurFlag" flag is enable and clear
other flags
Command: ipmitool raw 0x06 0x31 //get message flags
Response: 08
Command: ipmitool raw 0x06 0x30 0x02 // clear message flags
Response: //Success
Command: ipmitool raw 0x06 0x31 //get message flags
Response: 08
Case 2: When "PreTimeoutInterruptOccurFlag" flag is enable and clear
PreTimeoutInterruptOccurFlag
Command: ipmitool raw 0x06 0x30 0x08 // clear message flags
Response: //Success
Command: ipmitool raw 0x06 0x31 //get message flags
Response: 02
Signed-off-by: JitendraKumar Tripathy
<jitendra.kumarx.tripathy@intel.com>
Signed-off-by: Jayaprakash Mutyala <mutyalax.jayaprakash@intel.com>
Change-Id: I85a742c6d5799fe31b4c0a64b3d4f62256772be6
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.
intel-ipmi-oem serves as an extension[1] to OpenBMC IPMI daemon[2]. It is compiled as a shared library and intended to both:
Related features provided by the library are grouped in separate source files. Main extensions to vanilla OpenBMC IPMI stack are the following:
[4]