libnvme\_write\_reg32(9) libnvme API manual libnvme\_write\_reg32(9)

# [NAME](#NAME)

libnvme\_write\_reg32 - Write a 32-bit controller register of a PCIe controller

# [SYNOPSIS](#SYNOPSIS)

**int libnvme\_write\_reg32** **(struct libnvme\_transport\_handle \*hdl ,** **\_\_u32 offset ,** **\_\_u32 value );**

# [ARGUMENTS](#ARGUMENTS)

[hdl](#hdl)

Transport handle

[offset](#offset)

Offset of the register in bytes

[value](#value)

Value to write

# [DESCRIPTION](#DESCRIPTION)

This should only be sent to controller handles, not to namespaces.

# [RETURN](#RETURN)

0 on success or a negative error code otherwise. -ENOTSUP indicates that the transport has no memory-mapped registers.

libnvme\_write\_reg32 October 2026

---

Document: libnvme_write_reg32-libnvme3(2) from nvme-cli 3.2-r0 (Chainguard OS)
Source: https://github.com/linux-nvme/nvme-cli
