aboutsummaryrefslogtreecommitdiff
path: root/hw/ipmi
diff options
context:
space:
mode:
authorCorey Minyard <cminyard@mvista.com>2016-10-24 15:10:18 -0500
committerMichael S. Tsirkin <mst@redhat.com>2016-11-01 19:21:09 +0200
commit9c22c1c347af736ce86b7ecea8afa3a366f987c3 (patch)
treec1bca905b0276b46463435f801c824c8fde92e31 /hw/ipmi
parent2b7812d303a477d70c3cf62eaf3b1545babe05e1 (diff)
downloadqemu-9c22c1c347af736ce86b7ecea8afa3a366f987c3.zip
qemu-9c22c1c347af736ce86b7ecea8afa3a366f987c3.tar.gz
qemu-9c22c1c347af736ce86b7ecea8afa3a366f987c3.tar.bz2
ipmi: Implement shutdown via ACPI overtemp
This is allowed by the IPMI specification for graceful shutdown, so implement it. Signed-off-by: Corey Minyard <cminyard@mvista.com> Reviewed-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Diffstat (limited to 'hw/ipmi')
-rw-r--r--hw/ipmi/ipmi.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/hw/ipmi/ipmi.c b/hw/ipmi/ipmi.c
index f91c7b7..5cf1caa 100644
--- a/hw/ipmi/ipmi.c
+++ b/hw/ipmi/ipmi.c
@@ -61,9 +61,15 @@ static int ipmi_do_hw_op(IPMIInterface *s, enum ipmi_op op, int checkonly)
qmp_inject_nmi(NULL);
return 0;
+ case IPMI_SHUTDOWN_VIA_ACPI_OVERTEMP:
+ if (checkonly) {
+ return 0;
+ }
+ qemu_system_powerdown_request();
+ return 0;
+
case IPMI_POWERCYCLE_CHASSIS:
case IPMI_PULSE_DIAG_IRQ:
- case IPMI_SHUTDOWN_VIA_ACPI_OVERTEMP:
case IPMI_POWERON_CHASSIS:
default:
return IPMI_CC_COMMAND_NOT_SUPPORTED;