SYNOPSIS

nvme [<global-options>] set-reg <device>
                        [--register=<name> | -r <name>] [--offset=<offset> | -O <offset>]
                        [--value=<val> | -V <val>] [--mmio32 | -m]

DESCRIPTION

Writes a controller register: of an NVMe over PCIe controller in its PCI memory space, of an NVMe over Fabrics controller, which has no PCI memory space, the property with a Property Set command.

The <device> parameter is mandatory and must be the nvme admin character device (ex: /dev/nvme0).

OPTIONS

-r <name>
--register=<name>

The register to write, by name: one of the registers the host may write, intms, intmc, cc, csts, nssr, aqa, asq, acq, bprsel, bpmbl, cmbmsc, nssd, pmrctl, pmrmscl, pmrmscu.

-O <offset>
--offset=<offset>

The register to write, by offset or name, e.g. 0x14 or cc.

-V <val>
--value=<val>

The value to write. A 32 bit register refuses a larger value.

-m
--mmio32

Write a 64 bit register as two 32 bit accesses.

The options --cc=<val>, --aqa=<val> and so on of earlier versions, one for each register the host may write, still work, but are deprecated: use --register and --value.

GLOBAL OPTIONS

The following options are defined at the top-level nvme command and are available to this subcommand:

--dry-run

Print the command that would be executed, but do not actually execute it.

--no-ioctl-probing

Disable probing for 64-bit IOCTL support.

--no-retries

Disable retry logic on transient errors.

-o <fmt>
--output-format=<fmt>

Set the reporting format to normal, tabular, 'json, or binary. Only one output format may be used at a time.

--output-format-version=<version>

Select the output format version. Version 1 uses the original field naming, while version 2 (default) provides more consistent and script-friendly field names. Other versions are rejected.

--quiet

Suppress informational messages. Errors are still reported, and --quiet cancels any --verbose for the library log level.

--set-options=<key=value>[,<key=value>…]

Set libnvme library options for this invocation. Supported keys are force-4k, mi-probe-enabled, test-base-dir and test-sysfs-dir.

--timeout=<ms>

Set the timeout for the command in milliseconds. infinite or -1 waits without a time limit (0xffffffff).

-v
--verbose

Increase the level of detail in the output. May be specified multiple times to further increase verbosity.

These options can also be set as machine-wide defaults in nvme-cli.conf(5). A command-line flag always overrides the file.

EXAMPLES

  • Write 0x460000 to the Controller Configuration register

    # nvme set-reg /dev/nvme0 --register=cc --value=0x460000

NVME

Part of the nvme-user suite.