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