======================= dGPU firmware flashing
IFWI
Flashing the dGPU integrated firmware image (IFWI) is supported by GPUs that
use the PSP to orchestrate the update (Navi3x or newer GPUs).
For supported GPUs, amdgpu will export a series of sysfs files that can be
used for the flash process.
The IFWI flash process is:
- Ensure the IFWI image is intended for the dGPU on the system.
- "Write" the IFWI image to the sysfs file
psp_vbflash. This will stage the IFWI in memory. - "Read" from the
psp_vbflashsysfs file to initiate the flash process. - Poll the
psp_vbflash_statussysfs file to determine when the flash process completes.
USB-C PD F/W
On GPUs that support flashing an updated USB-C PD firmware image, the process
is done using the usbc_pd_fw sysfs file.
- Reading the file will provide the current firmware version.
- Writing the name of a firmware payload stored in
/lib/firmware/amdgputo the sysfs file will initiate the flash process.
The firmware payload stored in /lib/firmware/amdgpu can be named any name
as long as it doesn't conflict with other existing binaries that are used by
amdgpu.
sysfs files
.. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c