summaryrefslogtreecommitdiffstats
path: root/sys
diff options
context:
space:
mode:
authorjimharris <jimharris@FreeBSD.org>2012-09-19 18:25:25 +0000
committerjimharris <jimharris@FreeBSD.org>2012-09-19 18:25:25 +0000
commit1991e08ef172b50ad0a05784506936ea04c01688 (patch)
treee34bfa329ee304b0c4f59dfc39c0b98fe2639ee6 /sys
parent7d7784d2dd59796dcf595d04a3539d94f2a2482d (diff)
downloadFreeBSD-src-1991e08ef172b50ad0a05784506936ea04c01688.zip
FreeBSD-src-1991e08ef172b50ad0a05784506936ea04c01688.tar.gz
In nvme(4), set device description for BUS_PROBE_GENERIC case.
Reported by: jhb
Diffstat (limited to 'sys')
-rw-r--r--sys/dev/nvme/nvme.c21
1 files changed, 11 insertions, 10 deletions
diff --git a/sys/dev/nvme/nvme.c b/sys/dev/nvme/nvme.c
index d17056e..edc536e 100644
--- a/sys/dev/nvme/nvme.c
+++ b/sys/dev/nvme/nvme.c
@@ -84,28 +84,29 @@ static int
nvme_probe (device_t device)
{
struct _pcsid *ep;
- int probe_val = ENXIO;
u_int32_t type;
type = pci_get_devid(device);
ep = pci_ids;
-#if defined(PCIS_STORAGE_NVM)
- if (pci_get_class(device) == PCIC_STORAGE &&
- pci_get_subclass(device) == PCIS_STORAGE_NVM &&
- pci_get_progif(device) == PCIP_STORAGE_NVM_ENTERPRISE_NVMHCI_1_0)
- probe_val = BUS_PROBE_GENERIC;
-#endif
-
while (ep->type && ep->type != type)
++ep;
if (ep->desc) {
device_set_desc(device, ep->desc);
- probe_val = BUS_PROBE_DEFAULT;
+ return (BUS_PROBE_DEFAULT);
}
- return (probe_val);
+#if defined(PCIS_STORAGE_NVM)
+ if (pci_get_class(device) == PCIC_STORAGE &&
+ pci_get_subclass(device) == PCIS_STORAGE_NVM &&
+ pci_get_progif(device) == PCIP_STORAGE_NVM_ENTERPRISE_NVMHCI_1_0) {
+ device_set_desc(device, "Generic NVMe Device");
+ return (BUS_PROBE_GENERIC);
+ }
+#endif
+
+ return (ENXIO);
}
static void
OpenPOWER on IntegriCloud