summaryrefslogtreecommitdiffstats
path: root/chassishandler.h
diff options
context:
space:
mode:
authorshgoupf <shgoupf@cn.ibm.com>2015-12-17 10:05:51 +0800
committershgoupf <shgoupf@cn.ibm.com>2016-01-30 15:37:17 +0800
commitd84fbbf38443950d8f902e1868eef0b4a8566549 (patch)
tree2e11be5eab34380c3318e51ca7b2266ed1a373da /chassishandler.h
parent903327c4e9f901a692939338b0b4651aa815cedd (diff)
downloadphosphor-host-ipmid-d84fbbf38443950d8f902e1868eef0b4a8566549.tar.gz
phosphor-host-ipmid-d84fbbf38443950d8f902e1868eef0b4a8566549.zip
Add get/set boot option ipmid command support with correct DBUS property handling.
1) Add support for IPMI get/set boot option command. a) boot options stored in dbus property. b) IPMI get boot option command get boot option from the dbus property. c) IPMI set boot option coomand set boot option to the dbus property. 2) Two methods to handle the dbus property set and get: a) dbus_set_property() b) dbus_get_property() 3) The property is stored as a 10 character strings which representsd 5-byte information. 4) ipmid set method is registered and implemented since petitboot will use it to clear the boot options. 5) Get service name via object mapper a) The connection name is got via objectmapper. b) The method used to get the connection name is object_mapper_get_connection(). c) dbus_get_property/dbus_set_property will get the connection name via the above method instead of hard coding. 6) The boot option is made human readable (done by Chris).
Diffstat (limited to 'chassishandler.h')
-rw-r--r--chassishandler.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/chassishandler.h b/chassishandler.h
index 1a26411..b6f7d93 100644
--- a/chassishandler.h
+++ b/chassishandler.h
@@ -9,15 +9,24 @@ enum ipmi_netfn_app_cmds
// Chassis Control
IPMI_CMD_CHASSIS_CONTROL = 0x02,
// Get capability bits
+ IPMI_CMD_SET_SYS_BOOT_OPTIONS = 0x08,
IPMI_CMD_GET_SYS_BOOT_OPTIONS = 0x09,
};
// Command specific completion codes
enum ipmi_chassis_return_codes
{
+ IPMI_OK = 0x0,
IPMI_CC_PARM_NOT_SUPPORTED = 0x80,
};
+// Generic completion codes,
+// see IPMI doc section 5.2
+enum ipmi_generic_return_codes
+{
+ IPMI_OUT_OF_SPACE = 0xC4,
+};
+
// Various Chassis operations under a single command.
enum ipmi_chassis_control_cmds : uint8_t
{
OpenPOWER on IntegriCloud