.TH "libnvme_mi_mi_pda_read" 9 "libnvme_mi_mi_pda_read" "September 2026" "libnvme API manual" LINUX .SH NAME libnvme_mi_mi_pda_read \- Read the NVMe-MI Persistent Data Area (PDA) .SH SYNOPSIS .B "int" libnvme_mi_mi_pda_read .BI "(struct libnvme_mi_ep *ep " "," .BI "enum nvme_mi_pda_dformat dformat " "," .BI "__u32 dofst " "," .BI "__u32 dlen " "," .BI "void *data " "," .BI "size_t *data_len " ");" .SH ARGUMENTS .IP "ep" 12 endpoint for MI communication .IP "dformat" 12 data format to use for \fIdofst\fP and \fIdlen\fP, see \fIenum nvme_mi_pda_dformat\fP .IP "dofst" 12 starting offset, in units of \fIdformat\fP, into the PDA to read .IP "dlen" 12 length, in units of \fIdformat\fP, to read from the PDA starting at \fIdofst\fP .IP "data" 12 buffer to receive the PDA contents .IP "data_len" 12 in: size of \fIdata\fP; out: length of data actually returned .SH "DESCRIPTION" Performs an NVMe-MI PDA Read command. See the PDA Size (PDAS) and Supported Data Format (SDFORMAT) fields of \fIstruct nvme_mi_port_smb\fP for the size and supported \fIdformat\fP values of the PDA on a given port. .SH "RETURN" The nvme command status if a response was received (see \fIenum nvme_status_field\fP) or negative error code otherwise.