Changeset View
Changeset View
Standalone View
Standalone View
head/sys/dev/nvme/nvme_ns.c
Show First 20 Lines • Show All 508 Lines • ▼ Show 20 Lines | nvme_ns_construct(struct nvme_namespace *ns, uint32_t id, | ||||
* Older Intel devices advertise in vendor specific space an alignment | * Older Intel devices advertise in vendor specific space an alignment | ||||
* that improves performance. If present use for the stripe size. NVMe | * that improves performance. If present use for the stripe size. NVMe | ||||
* 1.3 standardized this as NOIOB, and newer Intel drives use that. | * 1.3 standardized this as NOIOB, and newer Intel drives use that. | ||||
*/ | */ | ||||
switch (pci_get_devid(ctrlr->dev)) { | switch (pci_get_devid(ctrlr->dev)) { | ||||
case 0x09538086: /* Intel DC PC3500 */ | case 0x09538086: /* Intel DC PC3500 */ | ||||
case 0x0a538086: /* Intel DC PC3520 */ | case 0x0a538086: /* Intel DC PC3520 */ | ||||
case 0x0a548086: /* Intel DC PC4500 */ | case 0x0a548086: /* Intel DC PC4500 */ | ||||
case 0x0a558086: /* Dell Intel P4600 */ | |||||
if (ctrlr->cdata.vs[3] != 0) | if (ctrlr->cdata.vs[3] != 0) | ||||
ns->stripesize = | ns->stripesize = | ||||
(1 << ctrlr->cdata.vs[3]) * ctrlr->min_page_size; | (1 << ctrlr->cdata.vs[3]) * ctrlr->min_page_size; | ||||
break; | break; | ||||
default: | default: | ||||
break; | break; | ||||
} | } | ||||
▲ Show 20 Lines • Show All 89 Lines • Show Last 20 Lines |