---
name: "nvme_mi_mi_read_mi_data_ctrl"
section: "2"
platform: "linux"
package: "libnvme-dev"
version: "1.13-2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/nvme_mi_mi_read_mi_data_ctrl"
---

# nvme\_mi\_mi\_read\_mi\_data\_ctrl(2)

Perform a Read MI Data Structure command, retrieving controller information

## NAME

nvme\_mi\_mi\_read\_mi\_data\_ctrl - Perform a Read MI Data Structure command, retrieving controller information

## SYNOPSIS

**int nvme\_mi\_mi\_read\_mi\_data\_ctrl** **(nvme\_mi\_ep\_t ep** *,* **\_\_u16 ctrl\_id** *,* **struct nvme\_mi\_read\_ctrl\_info \*ctrl** *);*

## ARGUMENTS

- ep

  endpoint for MI communication

- ctrl\_id

  ID of controller to query

- ctrl

  controller data to populate

## DESCRIPTION

Retrieves the Controller Information Data Structure for the attached controller with ID *ctrlid*.

See *struct nvme\_mi\_read\_ctrl\_info*.

## RETURN

The nvme command status if a response was received (see *enum nvme\_status\_field*) or -1 with errno set otherwise..
