| Linux |
[IPMItool]
ipmitool raw 0x06 0x22
ipmitool mc watchdog reset
[ipmiutil]
ipmiutil cmd 00 20 18 22
ipmiutil wdt -r
iwdt -r
[FreeIPMI]
ipmi-raw 0x00 0x06 0x22
bmc-watchdog -r
bmc-watchdog --reset
| MS-DOS |
[ipmitool]
ipmitool 20 18 22
[ipmiutil]
ipmiutil cmd 00 20 18 22
ipmiutil wdt -r
iwdt -r
--Completion Code--
80h = Attempt to start un-initialized watchdog
For example
[IPMItool in Linux] Hint: hover over Place your mouse over the highlighted area in below
for Response Data description
$ ipmitool raw 0x06 0x22
Unable to send RAW command (channel=0x0 netfn=0x6 lun=0x0 cmd=0x22 rsp=0x80): Unknown (0x80 Byte 1
Completion Code
80h = Attempt to start un-initialized watchdog
)
$ ipmitoool raw 0x06 0x22
$ ipmitool mc watchdog reset
IPMI Watchdog Timber Reset - countdown restarted!
[ipmiutil in Linux]Unable to send RAW command (channel=0x0 netfn=0x6 lun=0x0 cmd=0x22 rsp=0x80): Unknown (0x80 Byte 1
Completion Code
80h = Attempt to start un-initialized watchdog
)
$ ipmitoool raw 0x06 0x22
$ ipmitool mc watchdog reset
IPMI Watchdog Timber Reset - countdown restarted!
$ icmd 00 20 18 22
ipmiutil ver 3.08
icmd ver 3.08
This is a test tool to compose IPMI commands.
Do not use without knowledge of the IPMI specification.
-- BMC version 1.7, IPMI version 2.0
ipmi_cmd: ret = 0, ccode 80 Byte 1
Completion Code
80h = Attempt to start un-initialized watchdog
Invalid Session Handle or Empty Buffer
send_icmd ret = 0
ipmiutil cmd, completed successfully
# icmd 00 20 18 22
ipmiutil ver 3.08
icmd ver 3.08
This is a test tool to compose IPMI commands.
Do not use without knowledge of the IPMI specification.
-- BMC version 1.7, IPMI version 2.0
send_icmd ret = 0
ipmiutil cmd, completed successfully
# ipmiutil wdt -r
# iwdt -r
ipmiutil ver 3.08
iwdt ver 3.08
-- BMC version 1.07, IPMI version 2.0
wdt data: 01 03 01 00 64 00 64 00
Watchdog timer is stopped for use with BIOS FRB2. Logging
pretimeout is 1 seconds, pre-action is None
timeout is 10 seconds, counter is 10 seconds
action is Power cycle
Resetting watchdog timer ...
reset_wdt: ret = 0
wdt data: 41 03 01 00 64 00 64 00
Watchdog timer is started for use with BIOS FRB2. Logging
pretimeout is 1 seconds, pre-action is None
timeout is 10 seconds, counter is 10 seconds
action is Power cycle
ipmiutil wdt, completed successfully
[FreeIPMI in Linux]ipmiutil ver 3.08
icmd ver 3.08
This is a test tool to compose IPMI commands.
Do not use without knowledge of the IPMI specification.
-- BMC version 1.7, IPMI version 2.0
ipmi_cmd: ret = 0, ccode 80 Byte 1
Completion Code
80h = Attempt to start un-initialized watchdog
Invalid Session Handle or Empty Buffer
send_icmd ret = 0
ipmiutil cmd, completed successfully
# icmd 00 20 18 22
ipmiutil ver 3.08
icmd ver 3.08
This is a test tool to compose IPMI commands.
Do not use without knowledge of the IPMI specification.
-- BMC version 1.7, IPMI version 2.0
send_icmd ret = 0
ipmiutil cmd, completed successfully
# ipmiutil wdt -r
# iwdt -r
ipmiutil ver 3.08
iwdt ver 3.08
-- BMC version 1.07, IPMI version 2.0
wdt data: 01 03 01 00 64 00 64 00
Watchdog timer is stopped for use with BIOS FRB2. Logging
pretimeout is 1 seconds, pre-action is None
timeout is 10 seconds, counter is 10 seconds
action is Power cycle
Resetting watchdog timer ...
reset_wdt: ret = 0
wdt data: 41 03 01 00 64 00 64 00
Watchdog timer is started for use with BIOS FRB2. Logging
pretimeout is 1 seconds, pre-action is None
timeout is 10 seconds, counter is 10 seconds
action is Power cycle
ipmiutil wdt, completed successfully
$ ipmi-raw 0x00 0x06 0x22
rcvd: 22 80 Byte 1
Completion Code
80h = Attempt to start un-initialized watchdog
$ ipmi-raw 0x0 0x6 0x22
rcvd: 22 00 Byte 1
Completion Code
00h = Command Completed Normally
$ bmc-watchdog -r
$ bmc-watchdog --reset
rcvd: 22 80 Byte 1
Completion Code
80h = Attempt to start un-initialized watchdog
$ ipmi-raw 0x0 0x6 0x22
rcvd: 22 00 Byte 1
Completion Code
00h = Command Completed Normally
$ bmc-watchdog -r
$ bmc-watchdog --reset
Set Watchdog Timer - NetFn = App (0x06h), CMD = 0x24h, Privilege Level = Operator, M/O = M
| Linux | Hint: hover over Place your mouse over the highlighted area in below
for Request Data description
[IPMItool]
ipmitool raw 0x06 0x24 D[1] Byte 1
Timer Use
[7] - 1b = don't log
[6] - 1b = don't stop timer on Set Watchdog Timer command
0b = timer stops automatically when Set Watchdog Timber command is received
[5:3] - reserved
[2:0] - timer use
000b = reserved
001b = BIOS FRB2
010b = BIOS/POST
011b = OS Load
100b = SMS/OS
101b = OEM
110b = reserved
111b = reserved
D[2] Byte 2
Timer Actions
[7] - reserved
[6:4] - pre-timeout interrupt
000b = none
001b = SMI
010b = NMI/Diagnostic Interrupt
011b = Messaging Interrupt
100b = reserved
111b = reserved
[3] - reserved
[2:0] - timeout action
000b = no action
001b = Hard Reset
010b = Power Down
011b = Power Cycle
100b = reserved
111b = reserved
D[3] Byte 3
Pre-timeout interval in seconds
'1' based
D[4] Byte 4
Timer Use Expiration flags clear
(0b = leave alone, 1b = clear timer use expiration bit)
[7] - reserved
[6] - reserved
[5] - OEM
[4] - SMS/OS
[3] - OS Load
[2] - BIOS/POST
[1] - BIOS FRB2
[0] - reserved
D[5] Byte 5
Initial countdown value
LS byte (100 ms/count)
D[6] Byte 6
Initial countdown value
MS byte (100 ms/count)
ipmitool mc watchdog off
[ipmiutil]
ipmiutil cmd 00 20 18 24 D[1] Byte 1
Timer Use
[7] - 1b = don't log
[6] - 1b = don't stop timer on Set Watchdog Timer command
0b = timer stops automatically when Set Watchdog Timber command is received
[5:3] - reserved
[2:0] - timer use
000b = reserved
001b = BIOS FRB2
010b = BIOS/POST
011b = OS Load
100b = SMS/OS
101b = OEM
110b = reserved
111b = reserved
D[2] Byte 2
Timer Actions
[7] - reserved
[6:4] - pre-timeout interrupt
000b = none
001b = SMI
010b = NMI/Diagnostic Interrupt
011b = Messaging Interrupt
100b = reserved
111b = reserved
[3] - reserved
[2:0] - timeout action
000b = no action
001b = Hard Reset
010b = Power Down
011b = Power Cycle
100b = reserved
111b = reserved
D[3] Byte 3
Pre-timeout interval in seconds
'1' based
D[4] Byte 4
Timer Use Expiration flags clear
(0b = leave alone, 1b = clear timer use expiration bit)
[7] - reserved
[6] - reserved
[5] - OEM
[4] - SMS/OS
[3] - OS Load
[2] - BIOS/POST
[1] - BIOS FRB2
[0] - reserved
D[5] Byte 5
Initial countdown value
LS byte (100 ms/count)
D[6] Byte 6
Initial countdown value
MS byte (100 ms/count)
icmd 00 20 18 24 Data[1:6]
ipmiutil wdt -e -e
enable watchdog timer
-a N -a
set watchdog Action
N = 0, No action
N = 1, Hard Reset
N = 2, Power down
N = 3, Power cycle
-t N -t
set timeout to N seconds
ipmiutil wdt -d -d
disable watchdog timer
iwdt -e -e
enable watchdog timer
-a N -a
set watchdog Action
N = 0, No action
N = 1, Hard Reset
N = 2, Power down
N = 3, Power cycle
-t N -t
set timeout to N seconds
iwdt -d -d
disable watchdog timer
[FreeIPMI]
ipmi-raw 0x00 0x06 0x24 D[1] Byte 1
Timer Use
[7] - 1b = don't log
[6] - 1b = don't stop timer on Set Watchdog Timer command
0b = timer stops automatically when Set Watchdog Timber command is received
[5:3] - reserved
[2:0] - timer use
000b = reserved
001b = BIOS FRB2
010b = BIOS/POST
011b = OS Load
100b = SMS/OS
101b = OEM
110b = reserved
111b = reserved
D[2] Byte 2
Timer Actions
[7] - reserved
[6:4] - pre-timeout interrupt
000b = none
001b = SMI
010b = NMI/Diagnostic Interrupt
011b = Messaging Interrupt
100b = reserved
111b = reserved
[3] - reserved
[2:0] - timeout action
000b = no action
001b = Hard Reset
010b = Power Down
011b = Power Cycle
100b = reserved
111b = reserved
D[3] Byte 3
Pre-timeout interval in seconds
'1' based
D[4] Byte 4
Timer Use Expiration flags clear
(0b = leave alone, 1b = clear timer use expiration bit)
[7] - reserved
[6] - reserved
[5] - OEM
[4] - SMS/OS
[3] - OS Load
[2] - BIOS/POST
[1] - BIOS FRB2
[0] - reserved
D[5] Byte 5
Initial countdown value
LS byte (100 ms/count)
D[6] Byte 6
Initial countdown value
MS byte (100 ms/count)
bmc-watchdog -s -s
Set BMC Watchdog Config
-u INT -u
Set timer use
1 = BIOS FRB2
2 = BIOS POST
3 = OS_LOAD
4 = SMS OS
5 = OEM
-a INT -a
Set timeout action
0 = No action
1 = Hard Reset
2 = Power Down
3 = Power Cycle
-z SECS -z
Set pre-timeout interval in seconds
-F -F Clear BIOS FRB2 Timer Use Flag
-P Clear BIOS POST Timer Use Flag
-L Clear OS Load Timer Use Flag
-S Clear SMS/OS Timer Use Flag
-O Clear OEM Timer Use Flag
-i SECS -i
Set initial countdown in seconds
bmc-watchdog --set --set
Set BMC Watchdog Config
--timer-use=INT --timer-use
Set timer use
1 = BIOS FRB2
2 = BIOS POST
3 = OS_LOAD
4 = SMS OS
5 = OEM
--timeout-action=INT --timeout-action
Set timeout action
0 = No action
1 = Hard Reset
2 = Power Down
3 = Power Cycle
--pre-timeout-interval=SECS --pre-timeout-interval
Set pre-timeout interval in seconds
--clear-bios-frb2 --clear-bios-frb2 Clear BIOS FRB2 Timer Use Flag
--clear-bios-post Clear BIOS POST Timer Use Flag
--clear-os-load Clear OS Load Timer Use Flag
--clear-sms-os Clear SMS/OS Timer Use Flag
--clear-oem Clear OEM Timer Use Flag
--initial-countdown=SECS --initial-countdown
Set initial countdown in seconds
| MS-DOS |
[ipmitool]
ipmitool 20 18 24 Data[1:6]
[ipmiutil]
ipmiutil cmd 00 20 18 24 Data[1:6]
ipmiutil wdt -e -a N -t N
ipmiutil wdt -d
iwdt -e -a N -t N
iwdt -d
For example
[IPMItool in Linux] Hint: hover over Place your mouse over the highlighted area in below
for Request/Response Data description
$ ipmitool raw 0x06 0x24
0x01
Byte 1
Timer Use
[7] - 1b = don't log
[6] - 1b = don't stop timer on Set Watchdog Timer command
0b = timer stops automatically when Set Watchdog Timber command is received
[5:3] - reserved
[2:0] - timer use
000b = reserved
001b = BIOS FRB2
010b = BIOS/POST
011b = OS Load
100b = SMS/OS
101b = OEM
110b = reserved
111b = reserved
0x03 Byte 2
Timer Actions
[7] - reserved
[6:4] - pre-timeout interrupt
000b = none
001b = SMI
010b = NMI/Diagnostic Interrupt
011b = Messaging Interrupt
100b = reserved
111b = reserved
[3] - reserved
[2:0] - timeout action
000b = no action
001b = Hard Reset
010b = Power Down
011b = Power Cycle
100b = reserved
111b = reserved
0x01 Byte 3
Pre-timeout interval in seconds
'1' based
0x02 Byte 4
Timer Use Expiration flags clear
(0b = leave alone, 1b = clear timer use expiration bit)
[7] - reserved
[6] - reserved
[5] - OEM
[4] - SMS/OS
[3] - OS Load
[2] - BIOS/POST
[1] - BIOS FRB2
[0] - reserved
0x64 Byte 5
Initial countdown value
LS byte (100 ms/count)
0x00 Byte 6
Initial countdown value
MS byte (100 ms/count)
$ ipmitool mc watchdog off
Watchdog Timer Shutoff successful -- timer stopped
[ipmiutil in Linux]Timer Use
[7] - 1b = don't log
[6] - 1b = don't stop timer on Set Watchdog Timer command
0b = timer stops automatically when Set Watchdog Timber command is received
[5:3] - reserved
[2:0] - timer use
000b = reserved
001b = BIOS FRB2
010b = BIOS/POST
011b = OS Load
100b = SMS/OS
101b = OEM
110b = reserved
111b = reserved
0x03 Byte 2
Timer Actions
[7] - reserved
[6:4] - pre-timeout interrupt
000b = none
001b = SMI
010b = NMI/Diagnostic Interrupt
011b = Messaging Interrupt
100b = reserved
111b = reserved
[3] - reserved
[2:0] - timeout action
000b = no action
001b = Hard Reset
010b = Power Down
011b = Power Cycle
100b = reserved
111b = reserved
0x01 Byte 3
Pre-timeout interval in seconds
'1' based
0x02 Byte 4
Timer Use Expiration flags clear
(0b = leave alone, 1b = clear timer use expiration bit)
[7] - reserved
[6] - reserved
[5] - OEM
[4] - SMS/OS
[3] - OS Load
[2] - BIOS/POST
[1] - BIOS FRB2
[0] - reserved
0x64 Byte 5
Initial countdown value
LS byte (100 ms/count)
0x00 Byte 6
Initial countdown value
MS byte (100 ms/count)
$ ipmitool mc watchdog off
Watchdog Timer Shutoff successful -- timer stopped
$ icmd 00 20 18 24
01
Byte 1
Timer Use
[7] - 1b = don't log
[6] - 1b = don't stop timer on Set Watchdog Timer command
0b = timer stops automatically when Set Watchdog Timber command is received
[5:3] - reserved
[2:0] - timer use
000b = reserved
001b = BIOS FRB2
010b = BIOS/POST
011b = OS Load
100b = SMS/OS
101b = OEM
110b = reserved
111b = reserved
03 Byte 2
Timer Actions
[7] - reserved
[6:4] - pre-timeout interrupt
000b = none
001b = SMI
010b = NMI/Diagnostic Interrupt
011b = Messaging Interrupt
100b = reserved
111b = reserved
[3] - reserved
[2:0] - timeout action
000b = no action
001b = Hard Reset
010b = Power Down
011b = Power Cycle
100b = reserved
111b = reserved
01 Byte 3
Pre-timeout interval in seconds
'1' based
02 Byte 4
Timer Use Expiration flags clear
(0b = leave alone, 1b = clear timer use expiration bit)
[7] - reserved
[6] - reserved
[5] - OEM
[4] - SMS/OS
[3] - OS Load
[2] - BIOS/POST
[1] - BIOS FRB2
[0] - reserved
64 Byte 5
Initial countdown value
LS byte (100 ms/count)
00 Byte 6
Initial countdown value
MS byte (100 ms/count)
ipmiutil ver 3.08
icmd ver 3.08
This is a test tool to compose IPMI commands.
Do not use without knowledge of the IPMI specification.
-- BMC version 1.7, IPMI version 2.0
send_icmd ret = 0
ipmiutil cmd, completed successfully
$ ipmiutil wdt -e -e
enable watchdog timer
-a 3 -a N
set watchdog Action
N = 0, No action
N = 1, Hard Reset
N = 2, Power down
N = 3, Power cycle
-t 10 -t N
set timeout to N seconds
ipmiutil ver 3.08
iwdt ver 3.08
-- BMC version 1.07, IPMI version 2.0
wdt data: 01 00 1e 00 b0 04 b0 04
Watchdog timer is stopped for use with BIOS FRB2. Logging
pretimeout is 30 seconds, pre-action is None
timeout is 120 seconds, counter is 120 seconds
action is No action
Setting watchdog timer to 10 seconds ...
wdt data: 04 03 00 00 64 00 64 00
Watchdog timer is stopped for use with SMS/OS. Logging
pretimeout is 0 seconds, pre-action is None
timeout is 10 seconds, counter is 10 seconds
action is Power cycle
ipmiutil wdt, completed successfully
$ iwdt -d -d
disable watchdog timer
ipmiutil ver 3.08
iwdt ver 3.08
-- BMC version 1.07, IPMI version 2.0
wdt data: 04 03 00 00 64 00 64 00
Watchdog timer is stopped for use with SMS/OS. Logging
pretimeout is 0 seconds, pre-action is None
timeout is 10 seconds, counter is 10 seconds
action is Power cycle
Disabling watchdog timer ...
wdt data: 01 00 1e 00 b0 04 b0 04
Watchdog timer is stopped for use with BIOS FRB2. Logging
pretimeout is 30 seconds, pre-action is None
timeout is 120 seconds, counter is 120 seconds
action is No action
ipmiutil wdt, completed successfully
[FreeIPMI in Linux]Timer Use
[7] - 1b = don't log
[6] - 1b = don't stop timer on Set Watchdog Timer command
0b = timer stops automatically when Set Watchdog Timber command is received
[5:3] - reserved
[2:0] - timer use
000b = reserved
001b = BIOS FRB2
010b = BIOS/POST
011b = OS Load
100b = SMS/OS
101b = OEM
110b = reserved
111b = reserved
03 Byte 2
Timer Actions
[7] - reserved
[6:4] - pre-timeout interrupt
000b = none
001b = SMI
010b = NMI/Diagnostic Interrupt
011b = Messaging Interrupt
100b = reserved
111b = reserved
[3] - reserved
[2:0] - timeout action
000b = no action
001b = Hard Reset
010b = Power Down
011b = Power Cycle
100b = reserved
111b = reserved
01 Byte 3
Pre-timeout interval in seconds
'1' based
02 Byte 4
Timer Use Expiration flags clear
(0b = leave alone, 1b = clear timer use expiration bit)
[7] - reserved
[6] - reserved
[5] - OEM
[4] - SMS/OS
[3] - OS Load
[2] - BIOS/POST
[1] - BIOS FRB2
[0] - reserved
64 Byte 5
Initial countdown value
LS byte (100 ms/count)
00 Byte 6
Initial countdown value
MS byte (100 ms/count)
ipmiutil ver 3.08
icmd ver 3.08
This is a test tool to compose IPMI commands.
Do not use without knowledge of the IPMI specification.
-- BMC version 1.7, IPMI version 2.0
send_icmd ret = 0
ipmiutil cmd, completed successfully
$ ipmiutil wdt -e -e
enable watchdog timer
-a 3 -a N
set watchdog Action
N = 0, No action
N = 1, Hard Reset
N = 2, Power down
N = 3, Power cycle
-t 10 -t N
set timeout to N seconds
ipmiutil ver 3.08
iwdt ver 3.08
-- BMC version 1.07, IPMI version 2.0
wdt data: 01 00 1e 00 b0 04 b0 04
Watchdog timer is stopped for use with BIOS FRB2. Logging
pretimeout is 30 seconds, pre-action is None
timeout is 120 seconds, counter is 120 seconds
action is No action
Setting watchdog timer to 10 seconds ...
wdt data: 04 03 00 00 64 00 64 00
Watchdog timer is stopped for use with SMS/OS. Logging
pretimeout is 0 seconds, pre-action is None
timeout is 10 seconds, counter is 10 seconds
action is Power cycle
ipmiutil wdt, completed successfully
$ iwdt -d -d
disable watchdog timer
ipmiutil ver 3.08
iwdt ver 3.08
-- BMC version 1.07, IPMI version 2.0
wdt data: 04 03 00 00 64 00 64 00
Watchdog timer is stopped for use with SMS/OS. Logging
pretimeout is 0 seconds, pre-action is None
timeout is 10 seconds, counter is 10 seconds
action is Power cycle
Disabling watchdog timer ...
wdt data: 01 00 1e 00 b0 04 b0 04
Watchdog timer is stopped for use with BIOS FRB2. Logging
pretimeout is 30 seconds, pre-action is None
timeout is 120 seconds, counter is 120 seconds
action is No action
ipmiutil wdt, completed successfully
$ ipmi-raw 0x0 0x6 0x24
0x01
Byte 1
Timer Use
[7] - 1b = don't log
[6] - 1b = don't stop timer on Set Watchdog Timer command
0b = timer stops automatically when Set Watchdog Timber command is received
[5:3] - reserved
[2:0] - timer use
000b = reserved
001b = BIOS FRB2
010b = BIOS/POST
011b = OS Load
100b = SMS/OS
101b = OEM
110b = reserved
111b = reserved
0x03 Byte 2
Timer Actions
[7] - reserved
[6:4] - pre-timeout interrupt
000b = none
001b = SMI
010b = NMI/Diagnostic Interrupt
011b = Messaging Interrupt
100b = reserved
111b = reserved
[3] - reserved
[2:0] - timeout action
000b = no action
001b = Hard Reset
010b = Power Down
011b = Power Cycle
100b = reserved
111b = reserved
0x01 Byte 3
Pre-timeout interval in seconds
'1' based
0x02 Byte 4
Timer Use Expiration flags clear
(0b = leave alone, 1b = clear timer use expiration bit)
[7] - reserved
[6] - reserved
[5] - OEM
[4] - SMS/OS
[3] - OS Load
[2] - BIOS/POST
[1] - BIOS FRB2
[0] - reserved
0x64 Byte 5
Initial countdown value
LS byte (100 ms/count)
0x00 Byte 6
Initial countdown value
MS byte (100 ms/count)
rcvd: 24 00 Byte 1
Completion Code
00h = Command Completed Normally
bmc-watchdog -s -s
Set BMC Watchdog Config
-u 1 -u INT
Set timer use
1 = BIOS FRB2
2 = BIOS POST
3 = OS_LOAD
4 = SMS OS
5 = OEM
-a 3 -a INT
Set timeout action
0 = No action
1 = Hard Reset
2 = Power Down
3 = Power Cycle
-z 1 -z SECS
Set pre-timeout interval in seconds
-F -F Clear BIOS FRB2 Timer Use Flag
-P Clear BIOS POST Timer Use Flag
-L Clear OS Load Timer Use Flag
-S Clear SMS/OS Timer Use Flag
-O Clear OEM Timer Use Flag
-i 10 -i SECS
Set initial countdown in seconds
bmc-watchdog --set --set
Set BMC Watchdog Config
--timer-use=1 --timer-use=INT
Set timer use
1 = BIOS FRB2
2 = BIOS POST
3 = OS_LOAD
4 = SMS OS
5 = OEM
--timeout-action=3 --timeout-action=INT
Set timeout action
0 = No action
1 = Hard Reset
2 = Power Down
3 = Power Cycle
--pre-timeout-interval=1 --pre-timeout-interval=SECS
Set pre-timeout interval in seconds
--clear-bios-frb2 --clear-bios-frb2 Clear BIOS FRB2 Timer Use Flag
--clear-bios-post Clear BIOS POST Timer Use Flag
--clear-os-load Clear OS Load Timer Use Flag
--clear-sms-os Clear SMS/OS Timer Use Flag
--clear-oem Clear OEM Timer Use Flag
--initial-countdown=10 --initial-countdown=SECS
Set initial countdown in seconds
Timer Use
[7] - 1b = don't log
[6] - 1b = don't stop timer on Set Watchdog Timer command
0b = timer stops automatically when Set Watchdog Timber command is received
[5:3] - reserved
[2:0] - timer use
000b = reserved
001b = BIOS FRB2
010b = BIOS/POST
011b = OS Load
100b = SMS/OS
101b = OEM
110b = reserved
111b = reserved
0x03 Byte 2
Timer Actions
[7] - reserved
[6:4] - pre-timeout interrupt
000b = none
001b = SMI
010b = NMI/Diagnostic Interrupt
011b = Messaging Interrupt
100b = reserved
111b = reserved
[3] - reserved
[2:0] - timeout action
000b = no action
001b = Hard Reset
010b = Power Down
011b = Power Cycle
100b = reserved
111b = reserved
0x01 Byte 3
Pre-timeout interval in seconds
'1' based
0x02 Byte 4
Timer Use Expiration flags clear
(0b = leave alone, 1b = clear timer use expiration bit)
[7] - reserved
[6] - reserved
[5] - OEM
[4] - SMS/OS
[3] - OS Load
[2] - BIOS/POST
[1] - BIOS FRB2
[0] - reserved
0x64 Byte 5
Initial countdown value
LS byte (100 ms/count)
0x00 Byte 6
Initial countdown value
MS byte (100 ms/count)
rcvd: 24 00 Byte 1
Completion Code
00h = Command Completed Normally
bmc-watchdog -s -s
Set BMC Watchdog Config
-u 1 -u INT
Set timer use
1 = BIOS FRB2
2 = BIOS POST
3 = OS_LOAD
4 = SMS OS
5 = OEM
-a 3 -a INT
Set timeout action
0 = No action
1 = Hard Reset
2 = Power Down
3 = Power Cycle
-z 1 -z SECS
Set pre-timeout interval in seconds
-F -F Clear BIOS FRB2 Timer Use Flag
-P Clear BIOS POST Timer Use Flag
-L Clear OS Load Timer Use Flag
-S Clear SMS/OS Timer Use Flag
-O Clear OEM Timer Use Flag
-i 10 -i SECS
Set initial countdown in seconds
bmc-watchdog --set --set
Set BMC Watchdog Config
--timer-use=1 --timer-use=INT
Set timer use
1 = BIOS FRB2
2 = BIOS POST
3 = OS_LOAD
4 = SMS OS
5 = OEM
--timeout-action=3 --timeout-action=INT
Set timeout action
0 = No action
1 = Hard Reset
2 = Power Down
3 = Power Cycle
--pre-timeout-interval=1 --pre-timeout-interval=SECS
Set pre-timeout interval in seconds
--clear-bios-frb2 --clear-bios-frb2 Clear BIOS FRB2 Timer Use Flag
--clear-bios-post Clear BIOS POST Timer Use Flag
--clear-os-load Clear OS Load Timer Use Flag
--clear-sms-os Clear SMS/OS Timer Use Flag
--clear-oem Clear OEM Timer Use Flag
--initial-countdown=10 --initial-countdown=SECS
Set initial countdown in seconds
Get Watchdog Timer - NetFn = App (0x06h), CMD = 0x25h, Privilege Level = User, M/O = M
| Linux |
[IPMItool]
ipmitool raw 0x06 0x25
ipmitool mc watchdog get
[ipmiutil]
ipmiutil cmd 00 20 18 25
ipmiutil wdt
ipmiutil wdt -c
iwdt
iwdt -c
[FreeIPMI]
ipmi-raw 0x00 0x06 0x25
bmc-watchdog -g
bmc-watchdog --get
| MS-DOS |
[ipmitool]
ipmitool 20 18 25
[ipmiutil]
ipmiutil cmd 00 20 18 25
ipmiutil wdt
ipmiutil wdt -c
iwdt
iwdt -c
For example
[IPMItool in Linux] Hint: hover over Place your mouse over the highlighted area in below
for Request/Response Data description
$ ipmitool raw 0x06 0x25
01 Byte 2
Timer Use
[7] - 1b = don't log
[6] - 1b = don't stop timer on Set Watchdog Timer command
0b = timer stops automatically when Set Watchdog Timber command is received
[5:3] - reserved
[2:0] - timer use
000b = reserved
001b = BIOS FRB2
010b = BIOS/POST
011b = OS Load
100b = SMS/OS
101b = OEM
110b = reserved
111b = reserved
03 Byte 3
Timer Actions
[7] - reserved
[6:4] - pre-timeout interrupt
000b = none
001b = SMI
010b = NMI/Diagnostic Interrupt
011b = Messaging Interrupt
100b = reserved
111b = reserved
[3] - reserved
[2:0] - timeout action
000b = no action
001b = Hard Reset
010b = Power Down
011b = Power Cycle
100b = reserved
111b = reserved
01 Byte 4
Pre-timeout interval in seconds
'1' based
00 Byte 5
Timer Use Expiration flags
(1b = timer expired while associated ‘use’ was selected)
[7] - reserved
[6] - reserved
[5] - OEM
[4] - SMS/OS
[3] - OS Load
[2] - BIOS/POST
[1] - BIOS FRB2
[0] - reserved
64 Byte 6
Initial countdown value
LS byte (100 ms/count)
00 Byte 7
Initial countdown value
MS byte (100 ms/count)
64 Byte 8
Present countdown value
LS byte (100 ms/count)
00 Byte 9
Present countdown value
MS byte (100 ms/count)
$ ipmitool mc watchdog get
Watchdog Timer Use: BIOS FRB2 (0x81)
Watchdog Timer Is: Stopped
Watchdog Timer Actions: Power Cycle (0x03)
Pre-timeout interval: 1 seconds
Timer Expiration Flags: 0x00
Initial Countdown: 10 sec
Present Countdown: 10 sec
[ipmiutil in Linux]01 Byte 2
Timer Use
[7] - 1b = don't log
[6] - 1b = don't stop timer on Set Watchdog Timer command
0b = timer stops automatically when Set Watchdog Timber command is received
[5:3] - reserved
[2:0] - timer use
000b = reserved
001b = BIOS FRB2
010b = BIOS/POST
011b = OS Load
100b = SMS/OS
101b = OEM
110b = reserved
111b = reserved
03 Byte 3
Timer Actions
[7] - reserved
[6:4] - pre-timeout interrupt
000b = none
001b = SMI
010b = NMI/Diagnostic Interrupt
011b = Messaging Interrupt
100b = reserved
111b = reserved
[3] - reserved
[2:0] - timeout action
000b = no action
001b = Hard Reset
010b = Power Down
011b = Power Cycle
100b = reserved
111b = reserved
01 Byte 4
Pre-timeout interval in seconds
'1' based
00 Byte 5
Timer Use Expiration flags
(1b = timer expired while associated ‘use’ was selected)
[7] - reserved
[6] - reserved
[5] - OEM
[4] - SMS/OS
[3] - OS Load
[2] - BIOS/POST
[1] - BIOS FRB2
[0] - reserved
64 Byte 6
Initial countdown value
LS byte (100 ms/count)
00 Byte 7
Initial countdown value
MS byte (100 ms/count)
64 Byte 8
Present countdown value
LS byte (100 ms/count)
00 Byte 9
Present countdown value
MS byte (100 ms/count)
$ ipmitool mc watchdog get
Watchdog Timer Use: BIOS FRB2 (0x81)
Watchdog Timer Is: Stopped
Watchdog Timer Actions: Power Cycle (0x03)
Pre-timeout interval: 1 seconds
Timer Expiration Flags: 0x00
Initial Countdown: 10 sec
Present Countdown: 10 sec
$ ipmiutil cmd 00 20 18 25
ipmiutil ver 3.08
icmd ver 3.08
This is a test tool to compose IPMI commands.
Do not use without knowledge of the IPMI specification.
-- BMC version 1.7, IPMI version 2.0
respData[len=8]: 01 Byte 2
Timer Use
[7] - 1b = don't log
[6] - 1b = don't stop timer on Set Watchdog Timer command
0b = timer stops automatically when Set Watchdog Timber command is received
[5:3] - reserved
[2:0] - timer use
000b = reserved
001b = BIOS FRB2
010b = BIOS/POST
011b = OS Load
100b = SMS/OS
101b = OEM
110b = reserved
111b = reserved
03 Byte 3
Timer Actions
[7] - reserved
[6:4] - pre-timeout interrupt
000b = none
001b = SMI
010b = NMI/Diagnostic Interrupt
011b = Messaging Interrupt
100b = reserved
111b = reserved
[3] - reserved
[2:0] - timeout action
000b = no action
001b = Hard Reset
010b = Power Down
011b = Power Cycle
100b = reserved
111b = reserved
01 Byte 4
Pre-timeout interval in seconds
'1' based
00 Byte 5
Timer Use Expiration flags
(1b = timer expired while associated ‘use’ was selected)
[7] - reserved
[6] - reserved
[5] - OEM
[4] - SMS/OS
[3] - OS Load
[2] - BIOS/POST
[1] - BIOS FRB2
[0] - reserved
64 Byte 6
Initial countdown value
LS byte (100 ms/count)
00 Byte 7
Initial countdown value
MS byte (100 ms/count)
64 Byte 8
Present countdown value
LS byte (100 ms/count)
00 Byte 9
Present countdown value
MS byte (100 ms/count)
send_icmd ret = 0
ipmiutil cmd, completed successfully
$ ipmiutil wdt
$ iwdt
ipmiutil ver 3.08
iwdt ver 3.08
-- BMC version 1.07, IPMI version 2.0
wdt data: 01 Byte 2
Timer Use
[7] - 1b = don't log
[6] - 1b = don't stop timer on Set Watchdog Timer command
0b = timer stops automatically when Set Watchdog Timber command is received
[5:3] - reserved
[2:0] - timer use
000b = reserved
001b = BIOS FRB2
010b = BIOS/POST
011b = OS Load
100b = SMS/OS
101b = OEM
110b = reserved
111b = reserved
03 Byte 3
Timer Actions
[7] - reserved
[6:4] - pre-timeout interrupt
000b = none
001b = SMI
010b = NMI/Diagnostic Interrupt
011b = Messaging Interrupt
100b = reserved
111b = reserved
[3] - reserved
[2:0] - timeout action
000b = no action
001b = Hard Reset
010b = Power Down
011b = Power Cycle
100b = reserved
111b = reserved
01 Byte 4
Pre-timeout interval in seconds
'1' based
00 Byte 5
Timer Use Expiration flags
(1b = timer expired while associated ‘use’ was selected)
[7] - reserved
[6] - reserved
[5] - OEM
[4] - SMS/OS
[3] - OS Load
[2] - BIOS/POST
[1] - BIOS FRB2
[0] - reserved
64 Byte 6
Initial countdown value
LS byte (100 ms/count)
00 Byte 7
Initial countdown value
MS byte (100 ms/count)
64 Byte 8
Present countdown value
LS byte (100 ms/count)
00 Byte 9
Present countdown value
MS byte (100 ms/count)
Watchdog timer is stopped for use with BIOS FRB2. Logging
pretimeout is 1 seconds, pre-action is None
timeout is 10 seconds, counter is 10 seconds
action is Power cycle
ipmiutil wdt, completed successfully
$ ipmiutil wdt -c
$ iwdt -c
ipmiutil ver 3.08
iwdt ver 3.08
-- BMC version 1.07, IPMI version 2.0
Watchdog timer state | stopped
Use with | BIOS FRB2
Log mode | Logging
Pretimeout | 1 seconds
Pre-action | None
Timeout | 10 seconds
Counter | 10 seconds
Action | Power cycle
ipmiutil wdt, completed successfully
[FreeIPMI in Linux]ipmiutil ver 3.08
icmd ver 3.08
This is a test tool to compose IPMI commands.
Do not use without knowledge of the IPMI specification.
-- BMC version 1.7, IPMI version 2.0
respData[len=8]: 01 Byte 2
Timer Use
[7] - 1b = don't log
[6] - 1b = don't stop timer on Set Watchdog Timer command
0b = timer stops automatically when Set Watchdog Timber command is received
[5:3] - reserved
[2:0] - timer use
000b = reserved
001b = BIOS FRB2
010b = BIOS/POST
011b = OS Load
100b = SMS/OS
101b = OEM
110b = reserved
111b = reserved
03 Byte 3
Timer Actions
[7] - reserved
[6:4] - pre-timeout interrupt
000b = none
001b = SMI
010b = NMI/Diagnostic Interrupt
011b = Messaging Interrupt
100b = reserved
111b = reserved
[3] - reserved
[2:0] - timeout action
000b = no action
001b = Hard Reset
010b = Power Down
011b = Power Cycle
100b = reserved
111b = reserved
01 Byte 4
Pre-timeout interval in seconds
'1' based
00 Byte 5
Timer Use Expiration flags
(1b = timer expired while associated ‘use’ was selected)
[7] - reserved
[6] - reserved
[5] - OEM
[4] - SMS/OS
[3] - OS Load
[2] - BIOS/POST
[1] - BIOS FRB2
[0] - reserved
64 Byte 6
Initial countdown value
LS byte (100 ms/count)
00 Byte 7
Initial countdown value
MS byte (100 ms/count)
64 Byte 8
Present countdown value
LS byte (100 ms/count)
00 Byte 9
Present countdown value
MS byte (100 ms/count)
send_icmd ret = 0
ipmiutil cmd, completed successfully
$ ipmiutil wdt
$ iwdt
ipmiutil ver 3.08
iwdt ver 3.08
-- BMC version 1.07, IPMI version 2.0
wdt data: 01 Byte 2
Timer Use
[7] - 1b = don't log
[6] - 1b = don't stop timer on Set Watchdog Timer command
0b = timer stops automatically when Set Watchdog Timber command is received
[5:3] - reserved
[2:0] - timer use
000b = reserved
001b = BIOS FRB2
010b = BIOS/POST
011b = OS Load
100b = SMS/OS
101b = OEM
110b = reserved
111b = reserved
03 Byte 3
Timer Actions
[7] - reserved
[6:4] - pre-timeout interrupt
000b = none
001b = SMI
010b = NMI/Diagnostic Interrupt
011b = Messaging Interrupt
100b = reserved
111b = reserved
[3] - reserved
[2:0] - timeout action
000b = no action
001b = Hard Reset
010b = Power Down
011b = Power Cycle
100b = reserved
111b = reserved
01 Byte 4
Pre-timeout interval in seconds
'1' based
00 Byte 5
Timer Use Expiration flags
(1b = timer expired while associated ‘use’ was selected)
[7] - reserved
[6] - reserved
[5] - OEM
[4] - SMS/OS
[3] - OS Load
[2] - BIOS/POST
[1] - BIOS FRB2
[0] - reserved
64 Byte 6
Initial countdown value
LS byte (100 ms/count)
00 Byte 7
Initial countdown value
MS byte (100 ms/count)
64 Byte 8
Present countdown value
LS byte (100 ms/count)
00 Byte 9
Present countdown value
MS byte (100 ms/count)
Watchdog timer is stopped for use with BIOS FRB2. Logging
pretimeout is 1 seconds, pre-action is None
timeout is 10 seconds, counter is 10 seconds
action is Power cycle
ipmiutil wdt, completed successfully
$ ipmiutil wdt -c
$ iwdt -c
ipmiutil ver 3.08
iwdt ver 3.08
-- BMC version 1.07, IPMI version 2.0
Watchdog timer state | stopped
Use with | BIOS FRB2
Log mode | Logging
Pretimeout | 1 seconds
Pre-action | None
Timeout | 10 seconds
Counter | 10 seconds
Action | Power cycle
ipmiutil wdt, completed successfully
$ ipmi-raw 0x00 0x06 0x25
rcvd: 25 00 Byte 1
Completion Code
00h = Command Completed Normally
01 Byte 2
Timer Use
[7] - 1b = don't log
[6] - 1b = don't stop timer on Set Watchdog Timer command
0b = timer stops automatically when Set Watchdog Timber command is received
[5:3] - reserved
[2:0] - timer use
000b = reserved
001b = BIOS FRB2
010b = BIOS/POST
011b = OS Load
100b = SMS/OS
101b = OEM
110b = reserved
111b = reserved
03 Byte 3
Timer Actions
[7] - reserved
[6:4] - pre-timeout interrupt
000b = none
001b = SMI
010b = NMI/Diagnostic Interrupt
011b = Messaging Interrupt
100b = reserved
111b = reserved
[3] - reserved
[2:0] - timeout action
000b = no action
001b = Hard Reset
010b = Power Down
011b = Power Cycle
100b = reserved
111b = reserved
01 Byte 4
Pre-timeout interval in seconds
'1' based
00 Byte 5
Timer Use Expiration flags
(1b = timer expired while associated ‘use’ was selected)
[7] - reserved
[6] - reserved
[5] - OEM
[4] - SMS/OS
[3] - OS Load
[2] - BIOS/POST
[1] - BIOS FRB2
[0] - reserved
64 Byte 6
Initial countdown value
LS byte (100 ms/count)
00 Byte 7
Initial countdown value
MS byte (100 ms/count)
64 Byte 8
Present countdown value
LS byte (100 ms/count)
00 Byte 9
Present countdown value
MS byte (100 ms/count)
$ bmc-watchdog -g
$ bmc-watchdog --get
Timer Use: BIOS FRB2
Timer: Stopped
Logging: Enabled
Timeout Action: Power Cycle
Pre-Timeout Interrupt: None
Pre-Timeout Interval: 1 seconds
Timer Use BIOS FRB2 Flag: Clear
Timer Use BIOS POST Flag: Clear
Timer Use BIOS OS Load Flag: Clear
Timer Use BIOS SMS/OS Flag: Clear
Timer Use BIOS OEM Flag: Clear
Initial Countdown: 10 seconds
Current Countdown: 10 seconds
rcvd: 25 00 Byte 1
Completion Code
00h = Command Completed Normally
01 Byte 2
Timer Use
[7] - 1b = don't log
[6] - 1b = don't stop timer on Set Watchdog Timer command
0b = timer stops automatically when Set Watchdog Timber command is received
[5:3] - reserved
[2:0] - timer use
000b = reserved
001b = BIOS FRB2
010b = BIOS/POST
011b = OS Load
100b = SMS/OS
101b = OEM
110b = reserved
111b = reserved
03 Byte 3
Timer Actions
[7] - reserved
[6:4] - pre-timeout interrupt
000b = none
001b = SMI
010b = NMI/Diagnostic Interrupt
011b = Messaging Interrupt
100b = reserved
111b = reserved
[3] - reserved
[2:0] - timeout action
000b = no action
001b = Hard Reset
010b = Power Down
011b = Power Cycle
100b = reserved
111b = reserved
01 Byte 4
Pre-timeout interval in seconds
'1' based
00 Byte 5
Timer Use Expiration flags
(1b = timer expired while associated ‘use’ was selected)
[7] - reserved
[6] - reserved
[5] - OEM
[4] - SMS/OS
[3] - OS Load
[2] - BIOS/POST
[1] - BIOS FRB2
[0] - reserved
64 Byte 6
Initial countdown value
LS byte (100 ms/count)
00 Byte 7
Initial countdown value
MS byte (100 ms/count)
64 Byte 8
Present countdown value
LS byte (100 ms/count)
00 Byte 9
Present countdown value
MS byte (100 ms/count)
$ bmc-watchdog -g
$ bmc-watchdog --get
Timer Use: BIOS FRB2
Timer: Stopped
Logging: Enabled
Timeout Action: Power Cycle
Pre-Timeout Interrupt: None
Pre-Timeout Interval: 1 seconds
Timer Use BIOS FRB2 Flag: Clear
Timer Use BIOS POST Flag: Clear
Timer Use BIOS OS Load Flag: Clear
Timer Use BIOS SMS/OS Flag: Clear
Timer Use BIOS OEM Flag: Clear
Initial Countdown: 10 seconds
Current Countdown: 10 seconds
Test Procedure
[IPMItool in Linux]
Step 1. Set Watchdog Timer
$ ipmitool raw 0x06 0x24 0x01 0x03 0x01 0x02 0x64 0x00
Step 2. Reset Watchdog Timer
$ ipmitool raw 0x06 0x22
Step 3. Get Watchdog Timer
$ ipmitool raw 0x06 0x25
Reference
[1] "Intelligent Platform Management Interface Specification Second Generation v2.0 Document Revision 1.1"
https://www.intel.com/content/dam/www/public/us/en/documents/product-briefs/ipmi-second-gen-interface-spec-v2-rev1-1.pdf
[2] "IPMItool" http://sourceforge.net/projects/ipmitool/
[3] "IPMI Command Test Tool" http://www.intel.com/design/servers/ipmi/ipmi_tool.htm
[4] "IPMIUTIL USER GUIDE" http://ipmiutil.sourceforge.net/
[5] "FreeIPMI Documentation" http://www.gnu.org/software/freeipmi/index.html
Last Updated: May 10, 2018
No comments:
Post a Comment