diff options
Diffstat (limited to 'Documentation/nvme-fw-download.txt')
-rw-r--r-- | Documentation/nvme-fw-download.txt | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/Documentation/nvme-fw-download.txt b/Documentation/nvme-fw-download.txt new file mode 100644 index 0000000..6b11d05 --- /dev/null +++ b/Documentation/nvme-fw-download.txt @@ -0,0 +1,68 @@ +nvme-fw-download(1) +=================== + +NAME +---- +nvme-fw-download - Download all or a portion of an nvme firmware image. + +SYNOPSIS +-------- +[verse] +'nvme fw-download' <device> [--fw=<firmware-file> | -f <firmware-file>] + [--xfer=<transfer-size> | -x <transfer-size>] + [--offset=<offset> | -o <offset>] + +DESCRIPTION +----------- +The Firmware Image Download command is used to download all or a portion +of the firmware image for a future update to the controller. The Firmware +Image Download command may be submitted while other commands on the Admin +Submission Queue or I/O Submission Queues are outstanding. The Firmware +Image Download command copies the new firmware image (in whole or in part) +to the controller. + +The firmware image may be constructed of multiple pieces that +are individually downloaded with separate Firmware Image Download +commands. Each Firmware Image Download command includes a Dword +Offset and Number of Dwords that specify a Dword range. The host +software shall ensure that firmware pieces do not have Dword ranges +that overlap. Firmware portions may be submitted out of order to the +controller. + +The new firmware image is not applied as part of the Firmware Image +Download command. It is applied following a reset, where the image to +apply and the firmware slot it should be committed to is specified with +the Firmware Commit command (nvme fw-commit <args>). + +OPTIONS +------- +-f <firmware-file>:: +--fw=<firmeware-file>:: + Required argument. This specifies the path to the device's + firmware file on your system that will be read by the program + and sent to the device. + +-x <transfer-size>:: +--xfer=<transfer-size>:: + This specifies the size to split each transfer. This is useful if + the device has a max transfer size requirement for firmware. It + defaults to 4k. + +-o <offset>:: +--offset=<offset>:: + This specifies the starting offset in dwords. This is really only + useful if your firmware is split in multiple files; otherwise + the offset starts at zero and automatically adjusts based on the + 'xfer' size given. + +EXAMPLES +-------- +* Transfer a firmware size 128KiB at a time: ++ +------------ +# nvme fw-download /dev/nvme0 --fw=/path/to/nvme.fw --xfer=0x20000 +------------ + +NVME +---- +Part of the nvme-user suite |