Boot Order Configuration

BMC supports boot option selection commands using the Redfish or IPMI interfaces. UEFI on NVIDIA® BlueField® can query for the boot options through an IPMI/Redfish command. The BMC IPMI command only supports the option to change the boot device selector flag with the following supported options: PXE boot or the default boot device as selected in the boot menu on BlueField. While the Redfish interface supports all available boot options.

  • Get current setting:

    Copy
    Copied!
                

    ipmitool chassis bootparam get 5

  • Force PXE boot:

    Copy
    Copied!
                

    ipmitool chassis bootdev pxe options=efiboot

  • Default boot device:

    Copy
    Copied!
                

    ipmitool chassis bootparam set bootflag none

Warning

If Redfish is enabled on UEFI, force PXE from IPMI is ignored.

The DPU boot override setting from BMC is persistent until it is set to none or the BFB image is updated again.

To retrieve the active boot configuration, run:

Copy
Copied!
            

curl -k -H "X-Auth-Token: <token>" -X GET https://<bmc_ip>/redfish/v1/Systems/Bluefield

Note

The relevant configurations would be under "Boot".

To retrieve the pending boot order settings:

Copy
Copied!
            

curl -k -H "X-Auth-Token: <token>" -X GET https://<bmc_ip>/redfish/v1/Systems/Bluefield/Settings

To set the pending boot order settings:

Copy
Copied!
            

curl -k -H "X-Auth-Token: <token>" -X PATCH https://<bmc_ip>/redfish/v1/Systems/Bluefield/Settings -d '{"Boot":{ "BootOrder": ["Boot0001", "Boot0040","Boot0000","Boot0002","Boot0003", "Boot0004","Boot0005", "Boot0007","Boot0008","Boot0009","Boot000A","Boot000B", "Boot000C", "Boot000D", "Boot000E", "Boot0013", "Boot0014", "Boot0015","Boot0016", "Boot0017","Boot0018", "Boot0019", "Boot001A","Boot000F","Boot0010","Boot0011", "Boot0012", "Boot0006"] }}'

Note

All active boot options in the active BootOrder list should be included in this list.

Warning

Power cycle is necessary for the changes to take effect.

To set boot configuration, it is necessary to post to settings. For example:

Copy
Copied!
            

curl -k -H "X-Auth-Token: <token>" -X PATCH https://<bmc_ip>/redfish/v1/Systems/Bluefield/Settings -d '{   "Boot":{ "BootSourceOverrideEnabled": "Once", "BootSourceOverrideMode": "UEFI", "BootSourceOverrideTarget": "UefiHttp", "UefiTargetBootSourceOverride": "None", "BootNext": "", "AutomaticRetryConfig": "Disabled", } }'

  • BootSourceOverrideEnabled – should be set according to the values under redfish/v1/Systems/Bluefield -> Boot/BootSourceOverrideEnabled@Redfish.AllowableValues

  • BootSourceOverrideMode – should be set according to the values under redfish/v1/Systems/Bluefield -> Boot/BootSourceOverrideMode@Redfish.AllowableValues

  • BootSourceOverrideTarget – should be set according to the values under redfish/v1/Systems/Bluefield -> Boot/BootSourceOverrideTarget@Redfish.AllowableValues

  • UefiTargetBootSourceOverride – this option would be available in the RF JSON if BootSourceOverrideTarget is set to UefiTarget.

  • BootNext – this option would be in the RF JSON if BootSourceOverrideTarget is set to UefiBootnext.

  • AutomaticRetryConfig – only Disabled is supported

© Copyright 2023, NVIDIA. Last updated on Nov 13, 2023.