Modifications in PLDM T5 flow to support SPI staged update
Bills, Jason M
jason.m.bills at linux.intel.com
Thu Aug 28 04:03:59 AEST 2025
On 8/15/2025 7:25 AM, Patrick Williams wrote:
> Are there Redfish methods of initiating this now? I recall a workgroup
> at OCP was trying to get this done there.
>
> — Patrick Williams
>
>> On Aug 15, 2025, at 8:15 AM, Tom Joseph <rushtotom at gmail.com> wrote:
>>
>>
>>
>> Hello All,
>>
>> SPI Staged Update enables pre-downloading firmware component images
>> for supported devices, significantly reducing downtime during firmware
>> updates and activation. This requires devices to support at least two
>> slots — one for the running firmware and another for staging the new
>> image.
>>
>> The update process occurs in two iterations:
>>
>> 1.
>>
>> First Iteration:
>>
>> *
>>
>> The PLDM UA initiates the PLDM T5 flow with the PLDM FD
>> supporting staged updates.
>>
>> *
>>
>> All stages (Transfer, Verify, Apply) are completed
>> except activation. This is achieved by PLDM UA skipping the
>> PLDM T5 ActivateFirmware command.
>>
>> *
>>
>> Upon state machine timeout, the PLDM FD marks the new image
>> as /staged/ (not failed update). Since it’s staged, it remains
>> inactive until explicitly activated later.
>>
>> 2.
>>
>> Second Iteration:
>>
>> *
>>
>> The same PLDM package is used. Since the image is already
>> staged, the PLDM FD skips most of the Transfer stage, reducing
>> downtime.
>>
>> *
>>
>> This iteration is typically scheduled during a maintenance window.
>>
>> *
>>
>> Devices that do not support SPI staging are updated in this
>> iteration.
>>
>> *
>>
>> All firmware is activated after this iteration.
>>
>> To enable this, we propose introducing a new OEM parameter in the
>> MultiPart API to instruct the PLDM UA to skip sending the |
>> ActivateFirmware|command, along with necessary PLDM UA modifications
>> to support the SPI staged flow.
>>
>> If there is interest within the OpenBMC community to adopt and
>> collaborate on this feature, please feel free to reach out.
>>
Intel has interest in being part of an OpenBMC community collaboration
on this feature.
>> [1] https://docs.nvidia.com/multi-node-nvlink-systems/nvfupd-guide/
>> appendix/spi-staged.html <https://docs.nvidia.com/multi-node-nvlink-
>> systems/nvfupd-guide/appendix/spi-staged.html>
>>
>> Regards,
>> Tom
More information about the openbmc
mailing list