======================= dGPU firmware flashing=======================IFWI----Flashing the dGPU integrated firmware image (IFWI) is supported by GPUs thatuse the PSP to orchestrate the update (Navi3x or newer GPUs).For supported GPUs, `amdgpu` will export a series of sysfs files that can beused for the flash process.The IFWI flash process is:1. Ensure the IFWI image is intended for the dGPU on the system.2. "Write" the IFWI image to the sysfs file `psp_vbflash`. This will stage the IFWI in memory.3. "Read" from the `psp_vbflash` sysfs file to initiate the flash process.4. Poll the `psp_vbflash_status` sysfs 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 processis 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/amdgpu` to the sysfs file will initiate the flash process.The firmware payload stored in `/lib/firmware/amdgpu` can be named any nameas 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
=======================
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:
1. Ensure the IFWI image is intended for the dGPU on the system.
2. "Write" the IFWI image to the sysfs file `psp_vbflash`. This will stage the IFWI in memory.
3. "Read" from the `psp_vbflash` sysfs file to initiate the flash process.
4. Poll the `psp_vbflash_status` sysfs 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/amdgpu` to 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