---
name: "nvme_mi_admin_identify_primary_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_admin_identify_primary_ctrl"
---

# nvme\_mi\_admin\_identify\_primary\_ctrl(2)

Perform an Admin identify for primary controller capabilities data structure.

## NAME

nvme\_mi\_admin\_identify\_primary\_ctrl - Perform an Admin identify for primary controller capabilities data structure.

## SYNOPSIS

**int nvme\_mi\_admin\_identify\_primary\_ctrl** **(nvme\_mi\_ctrl\_t ctrl** *,* **\_\_u16 cntid** *,* **struct nvme\_primary\_ctrl\_cap \*cap** *);*

## ARGUMENTS

- ctrl

  Controller to process identify command

- cntid

  Controller ID to specify

- cap

  Primary Controller Capabilities data structure to populate

## DESCRIPTION

Perform an Identify command to get the Primary Controller Capabilities data for the controller specified by *cntid*

Will return an error if the length of the response data (from the controller) is not a full *NVME\_IDENTIFY\_DATA\_SIZE*, so *cap* will be be fully populated on success.

See: *struct nvme\_primary\_ctrl\_cap*

## RETURN

0 on success, non-zero on failure
