GNU Linux-libre 6.9.1-gnu
[releases.git] / Documentation / gpu / amdgpu / flashing.rst
1 =======================
2  dGPU firmware flashing
3 =======================
4
5 IFWI
6 ----
7 Flashing the dGPU integrated firmware image (IFWI) is supported by GPUs that
8 use the PSP to orchestrate the update (Navi3x or newer GPUs).
9 For supported GPUs, `amdgpu` will export a series of sysfs files that can be
10 used for the flash process.
11
12 The IFWI flash process is:
13
14 1. Ensure the IFWI image is intended for the dGPU on the system.
15 2. "Write" the IFWI image to the sysfs file `psp_vbflash`. This will stage the IFWI in memory.
16 3. "Read" from the `psp_vbflash` sysfs file to initiate the flash process.
17 4. Poll the `psp_vbflash_status` sysfs file to determine when the flash process completes.
18
19 USB-C PD F/W
20 ------------
21 On GPUs that support flashing an updated USB-C PD firmware image, the process
22 is done using the `usbc_pd_fw` sysfs file.
23
24 * Reading the file will provide the current firmware version.
25 * Writing the name of a firmware payload stored in `/lib/firmware/amdgpu` to the sysfs file will initiate the flash process.
26
27 The firmware payload stored in `/lib/firmware/amdgpu` can be named any name
28 as long as it doesn't conflict with other existing binaries that are used by
29 `amdgpu`.
30
31 sysfs files
32 -----------
33 .. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c