197730bbbSRuss WeightWhat: 		/sys/class/firmware/.../data
297730bbbSRuss WeightDate:		July 2022
397730bbbSRuss WeightKernelVersion:	5.19
4*53604854SRuss WeightContact:	Russ Weight <russ.weight@linux.dev>
597730bbbSRuss WeightDescription:	The data sysfs file is used for firmware-fallback and for
697730bbbSRuss Weight		firmware uploads. Cat a firmware image to this sysfs file
797730bbbSRuss Weight		after you echo 1 to the loading sysfs file. When the firmware
897730bbbSRuss Weight		image write is complete, echo 0 to the loading sysfs file. This
997730bbbSRuss Weight		sequence will signal the completion of the firmware write and
1097730bbbSRuss Weight		signal the lower-level driver that the firmware data is
1197730bbbSRuss Weight		available.
1297730bbbSRuss Weight
13536fd818SRuss WeightWhat: 		/sys/class/firmware/.../cancel
14536fd818SRuss WeightDate:		July 2022
15536fd818SRuss WeightKernelVersion:	5.19
16*53604854SRuss WeightContact:	Russ Weight <russ.weight@linux.dev>
17536fd818SRuss WeightDescription:	Write-only. For firmware uploads, write a "1" to this file to
18536fd818SRuss Weight		request that the transfer of firmware data to the lower-level
19536fd818SRuss Weight		device be canceled. This request will be rejected (EBUSY) if
20536fd818SRuss Weight		the update cannot be canceled (e.g. a FLASH write is in
21536fd818SRuss Weight		progress) or (ENODEV) if there is no firmware update in progress.
22536fd818SRuss Weight
23536fd818SRuss WeightWhat: 		/sys/class/firmware/.../error
24536fd818SRuss WeightDate:		July 2022
25536fd818SRuss WeightKernelVersion:	5.19
26*53604854SRuss WeightContact:	Russ Weight <russ.weight@linux.dev>
27536fd818SRuss WeightDescription:	Read-only. Returns a string describing a failed firmware
28536fd818SRuss Weight		upload. This string will be in the form of <STATUS>:<ERROR>,
29536fd818SRuss Weight		where <STATUS> will be one of the status strings described
30536fd818SRuss Weight		for the status sysfs file and <ERROR> will be one of the
31536fd818SRuss Weight		following: "hw-error", "timeout", "user-abort", "device-busy",
32536fd818SRuss Weight		"invalid-file-size", "read-write-error", "flash-wearout". The
33536fd818SRuss Weight		error sysfs file is only meaningful when the current firmware
34536fd818SRuss Weight		upload status is "idle". If this file is read while a firmware
35536fd818SRuss Weight		transfer is in progress, then the read will fail with EBUSY.
36536fd818SRuss Weight
3797730bbbSRuss WeightWhat: 		/sys/class/firmware/.../loading
3897730bbbSRuss WeightDate:		July 2022
3997730bbbSRuss WeightKernelVersion:	5.19
40*53604854SRuss WeightContact:	Russ Weight <russ.weight@linux.dev>
4197730bbbSRuss WeightDescription:	The loading sysfs file is used for both firmware-fallback and
4297730bbbSRuss Weight		for firmware uploads. Echo 1 onto the loading file to indicate
4397730bbbSRuss Weight		you are writing a firmware file to the data sysfs node. Echo
4497730bbbSRuss Weight		-1 onto this file to abort the data write or echo 0 onto this
4597730bbbSRuss Weight		file to indicate that the write is complete. For firmware
4697730bbbSRuss Weight		uploads, the zero value also triggers the transfer of the
4797730bbbSRuss Weight		firmware data to the lower-level device driver.
4897730bbbSRuss Weight
49536fd818SRuss WeightWhat: 		/sys/class/firmware/.../remaining_size
50536fd818SRuss WeightDate:		July 2022
51536fd818SRuss WeightKernelVersion:	5.19
52*53604854SRuss WeightContact:	Russ Weight <russ.weight@linux.dev>
53536fd818SRuss WeightDescription:	Read-only. For firmware upload, this file contains the size
54536fd818SRuss Weight		of the firmware data that remains to be transferred to the
55536fd818SRuss Weight		lower-level device driver. The size value is initialized to
56536fd818SRuss Weight		the full size of the firmware image that was previously
57536fd818SRuss Weight		written to the data sysfs file. This value is periodically
58536fd818SRuss Weight		updated during the "transferring" phase of the firmware
59536fd818SRuss Weight		upload.
60536fd818SRuss Weight		Format: "%u".
61536fd818SRuss Weight
62536fd818SRuss WeightWhat: 		/sys/class/firmware/.../status
63536fd818SRuss WeightDate:		July 2022
64536fd818SRuss WeightKernelVersion:	5.19
65*53604854SRuss WeightContact:	Russ Weight <russ.weight@linux.dev>
66536fd818SRuss WeightDescription:	Read-only. Returns a string describing the current status of
67536fd818SRuss Weight		a firmware upload. The string will be one of the following:
68536fd818SRuss Weight		idle, "receiving", "preparing", "transferring", "programming".
69536fd818SRuss Weight
7097730bbbSRuss WeightWhat: 		/sys/class/firmware/.../timeout
7197730bbbSRuss WeightDate:		July 2022
7297730bbbSRuss WeightKernelVersion:	5.19
73*53604854SRuss WeightContact:	Russ Weight <russ.weight@linux.dev>
7497730bbbSRuss WeightDescription:	This file supports the timeout mechanism for firmware
7597730bbbSRuss Weight		fallback.  This file has no affect on firmware uploads. For
7697730bbbSRuss Weight		more information on timeouts please see the documentation
7797730bbbSRuss Weight		for firmware fallback.
78