tree 5524f5c4a2061435e606dbd1f3d5632add533ab3
parent c9ab1d509ec70f895f852532f6c5b3314cb4fe65
author Santosh Puranik <santosh.puranik@in.ibm.com> 1549462616 +0530
committer Ed Tanous <ed.tanous@intel.com> 1552318083 +0000

Support for boot properties

This commit adds support for DBUS properties BootMode and BootSource
in the Redfish ComputerSystems schema. These properties reside on the
BMC in two DBUS objects:

/xyz/openbmc_project/control/host0/boot contains settings that apply
on each boot
/xyz/openbmc_project/control/host0/boot/one_time contains settings
that apply for one boot only

The interface definition can be looked up in
phosphor-dbus-interfaces/tree/master/xyz/openbmc_project/Control/Boot

BootMode and BootSource are together mapped into the Redfish property
BootSourceOverrideTarget. Specifically, we only support the following
BootSource's: None (default source), Pxe, Hdd, Cd, Diags and BiosSetup

Diags and BiosSetup get mapped to the BootMode property, whereas the
other values get mapped to the BootSource property.

In addition, we map the BootSourceOverrideEnabled redfish property
to the Enabled property in
/xyz/openbmc_project/control/host0/boot/one_time to indicate if the
override applies for just this boot or all future boots.

Tested:
-- Ran the Redfish schema validator - no errors.
-- Ran GET and PATCH requets on the ComputerSystem node to test
   setting of each property individually as well as together.

Ex:
curl -k -H "X-Auth-Token: $bmc_token" -XGET
https://${bmc}:${port}/redfish/v1/Systems/system
....
....
  "Boot": {
    "BootSourceOverrideEnabled": "Disabled",
    "BootSourceOverrideMode": "Legacy",
    "BootSourceOverrideTarget": "None",
    "BootSourceOverrideTarget@Redfish.AllowableValues": [
      "None",
      "Pxe",
      "Hdd",
      "Cd",
      "Diags",
      "BiosSetup"
    ]
  }
....

curl -k -H "X-Auth-Token: $bmc_token" -X PATCH
https://${bmc}:${port}/redfish/v1/Systems/system -d '{"Boot":
{"BootSourceOverrideEnabled": "Once",
"BootSourceOverrideTarget": "Diags"}}'

curl -k -H "X-Auth-Token: $bmc_token" -XGET
https://${bmc}:${port}/redfish/v1/Systems/system
....
....
  "Boot": {
    "BootSourceOverrideEnabled": "Once",
    "BootSourceOverrideMode": "Legacy",
    "BootSourceOverrideTarget": "Diags",
    "BootSourceOverrideTarget@Redfish.AllowableValues": [
      "None",
      "Pxe",
      "Hdd",
      "Cd",
      "Diags",
      "BiosSetup"
    ]
  }
....

curl -k -H "X-Auth-Token: $bmc_token" -X PATCH
https://${bmc}:${port}/redfish/v1/Systems/system -d '{"Boot":
{"BootSourceOverrideEnabled": "Disabled"}}'

curl -k -H "X-Auth-Token: $bmc_token" -XGET
https://${bmc}:${port}/redfish/v1/Systems/system'
....
....
  "Boot": {
    "BootSourceOverrideEnabled": "Disabled",
    "BootSourceOverrideMode": "Legacy",
    "BootSourceOverrideTarget": "None",
    "BootSourceOverrideTarget@Redfish.AllowableValues": [
      "None",
      "Pxe",
      "Hdd",
      "Cd",
      "Diags",
      "BiosSetup"
    ]
  }
....

Change-Id: If8850428422de822cd0e220ceaff4168f4b50391
Signed-off-by: Santosh Puranik <santosh.puranik@in.ibm.com>
