From 84812653be3e37eb060b215e3375593659946261 Mon Sep 17 00:00:00 2001 From: Daniel Verkamp Date: Wed, 24 Aug 2016 14:08:38 -0700 Subject: [PATCH] nvme/identify: interpret CMIC bitfields Print out the multi-path I/O features in a human-readable way. Change-Id: If1302933eff7649c31e21188f71cc361cc90ff01 Signed-off-by: Daniel Verkamp --- examples/nvme/identify/identify.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/examples/nvme/identify/identify.c b/examples/nvme/identify/identify.c index a5e0012d5..aff5dd7c0 100644 --- a/examples/nvme/identify/identify.c +++ b/examples/nvme/identify/identify.c @@ -482,7 +482,10 @@ print_controller(struct spdk_nvme_ctrlr *ctrlr, struct spdk_pci_device *pci_dev) printf("Recommended Arb Burst: %d\n", cdata->rab); printf("IEEE OUI Identifier: %02x %02x %02x\n", cdata->ieee[0], cdata->ieee[1], cdata->ieee[2]); - printf("Multi-path I/O: %02x\n", *(int *)&cdata->cmic); + printf("Multi-path I/O\n"); + printf(" May have multiple subsystem ports: %s\n", cdata->cmic.multi_port ? "Yes" : "No"); + printf(" May be connected to multiple hosts: %s\n", cdata->cmic.multi_host ? "Yes" : "No"); + printf(" Associated with SR-IOV VF: %s\n", cdata->cmic.sr_iov ? "Yes" : "No"); printf("Max Data Transfer Size: "); if (cdata->mdts == 0) printf("Unlimited\n");