Skip to content

Enable nvme-mi-send/recv admin command support unconditionally and add Windows support - #3788

Open
brgoing wants to merge 2 commits into
linux-nvme:masterfrom
Micron-TPG-OSS:bgoing/windows-nvme-mi-send-recv-support
Open

Enable nvme-mi-send/recv admin command support unconditionally and add Windows support#3788
brgoing wants to merge 2 commits into
linux-nvme:masterfrom
Micron-TPG-OSS:bgoing/windows-nvme-mi-send-recv-support

Conversation

@brgoing

@brgoing brgoing commented Aug 7, 2026

Copy link
Copy Markdown
Contributor

Makes the in-band nvme-mi-send / nvme-mi-recv CLI commands available regardless of CONFIG_MI (since they’re NVMe admin passthrough commands, not out-of-band MI transport), adds Windows (WinPE-only) passthrough support for those opcodes, and relocates the MI status string helper into the core libnvme utilities so it’s available without MI transport support.

Changes:

  • Remove CONFIG_MI gating for nvme-mi-send / nvme-mi-recv command registration and implementation in the CLI.
  • Move libnvme_mi_status_to_string() implementation into libnvme/src/nvme/util.c and export it from the base version script.
  • Add WinPE handling for NVMe-MI Send/Recv admin opcodes in the Windows ioctl backend.

brgoing added 2 commits August 7, 2026 15:48
nvme-mi-send and nvme-mi-recv just implement the in-band MI admin
command calls. They don't rely on the rest of the out-of-band MI support,
and dont need to be gated by MI_CONFIG.  Remove MI_CONFIG
condition, making nvme-mi-send/nvme-mi-recv always supported.
Move libnvme_mi_status_to_string out of out-of-band MI headers into
util next to similar libnvme_status_to_string.

Signed-off-by: Broc Going <bgoing@micron.com>
MI send/receive commands are supported by the Windows driver on
WinPE.  Add win-ioctl routing of the MI send/receive to the appropriate
Windows IOCTL if on WinPE.

Signed-off-by: Broc Going <bgoing@micron.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant