On Tue, Aug 16, 2022 at 10:11:03AM +0200, Andreas Bartelt wrote: > On 8/16/22 05:22, Jonathan Gray wrote: > > On Sun, Aug 14, 2022 at 04:03:59PM +0200, Andreas Bartelt wrote: > > > Hi, > > > > > > Intel Optane 905p NVMe devices were not yet recognized in CURRENT (e.g., > > > https://ark.intel.com/content/www/us/en/ark/products/148607/intel-optane-ssd-905p-series-380gb-m-2-110mm-pcie-x4-20nm-3d-xpoint.html > > > ). > > > > > > I've managed to get it working with the following diff: > > > > > > Index: pcidevs > > > =================================================================== > > > RCS file: /cvs/src/sys/dev/pci/pcidevs,v > > > retrieving revision 1.2000 > > > diff -u -p -u -p -r1.2000 pcidevs > > > --- pcidevs 2 Aug 2022 05:35:01 -0000 1.2000 > > > +++ pcidevs 14 Aug 2022 13:46:32 -0000 > > > @@ -4623,6 +4623,7 @@ product INTEL 6321ESB_ACM 0x2699 6321ESB > > > product INTEL 6321ESB_HDA 0x269a 6321ESB HD Audio > > > product INTEL 6321ESB_SMB 0x269b 6321ESB SMBus > > > product INTEL 6321ESB_IDE 0x269e 6321ESB IDE > > > +product INTEL NVME_6 0x2700 Optane 900P/905P NVMe > > > product INTEL WL_22500_1 0x2723 Wi-Fi 6 AX200 > > > product INTEL WL_22500_9 0x2725 Wi-Fi 6 AX210 > > > product INTEL WL_22500_10 0x2726 Wi-Fi 6 AX211 > > > > > > Index: pcidevs.h > > > =================================================================== > > > RCS file: /cvs/src/sys/dev/pci/pcidevs.h,v > > > retrieving revision 1.1994 > > > diff -u -p -u -p -r1.1994 pcidevs.h > > > --- pcidevs.h 2 Aug 2022 05:35:34 -0000 1.1994 > > > +++ pcidevs.h 14 Aug 2022 13:48:44 -0000 > > > @@ -4628,6 +4628,7 @@ > > > #define PCI_PRODUCT_INTEL_6321ESB_HDA 0x269a /* 6321ESB HD > > > Audio */ > > > #define PCI_PRODUCT_INTEL_6321ESB_SMB 0x269b /* 6321ESB > > > SMBus */ > > > #define PCI_PRODUCT_INTEL_6321ESB_IDE 0x269e /* 6321ESB IDE > > > */ > > > +#define PCI_PRODUCT_INTEL_NVME_6 0x2700 /* Optane 900P/905P > > > NVMe */ > > > #define PCI_PRODUCT_INTEL_WL_22500_1 0x2723 /* Wi-Fi 6 > > > AX200 */ > > > #define PCI_PRODUCT_INTEL_WL_22500_9 0x2725 /* Wi-Fi 6 > > > AX210 */ > > > #define PCI_PRODUCT_INTEL_WL_22500_10 0x2726 /* Wi-Fi 6 > > > AX211 */ > > > > > > Index: pcidevs_data.h > > > =================================================================== > > > RCS file: /cvs/src/sys/dev/pci/pcidevs_data.h,v > > > retrieving revision 1.1989 > > > diff -u -p -u -p -r1.1989 pcidevs_data.h > > > --- pcidevs_data.h 2 Aug 2022 05:35:34 -0000 1.1989 > > > +++ pcidevs_data.h 14 Aug 2022 13:49:55 -0000 > > > @@ -15888,6 +15888,10 @@ static const struct pci_known_product pc > > > "6321ESB IDE", > > > }, > > > { > > > + PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_NVME_6, > > > + "Optane 900P/905P NVMe", > > > + }, > > > + { > > > PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_WL_22500_1, > > > "Wi-Fi 6 AX200", > > > }, > > > > > > I've also noticed the following in nvme_pci.c which seems to be related to > > > some kind of Intel Optane device: > > > 81 static const struct pci_matchid nvme_msi_blacklist[] = { > > > 82 { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_OPTANE }, > > > 83 }; > > > > > > It is unclear to me if this is also relevant for the Optane 900P/905P > > > series, i.e., should the line "{ PCI_VENDOR_INTEL, > > > PCI_PRODUCT_INTEL_NVME_6 > > > }," also be added there? [didn't notice any problems yet without having > > > the > > > device included there...] > > > > > > The affected parts of dmesg after applying the patch: > > > nvme1 at pci4 dev 0 function 0 "Intel Optane 900P/905P NVMe" rev 0x00: > > > msix, > > > NVMe 1.0 > > > nvme1: INTEL SSDPEL1D380GA, firmware E2010603, serial PHMC93620015380A > > > scsibus3 at nvme1: 2 targets, initiator 0 > > > sd1 at scsibus3 targ 1 lun 0: <NVMe, INTEL SSDPEL1D38, E201> > > > sd1: 362476MB, 512 bytes/sector, 742352688 sectors > > > > Intel's windows driver uses > > > > PCI\VEN_8086&DEV_F1A6.DeviceDesc = "Intel(R) SSD Pro 7600p/760p/E 6100p > > Series" > > PCI\VEN_8086&DEV_F1A8.DeviceDesc = "Intel(R) SSD 660p Series" > > PCI\VEN_8086&DEV_FAF0.DeviceDesc = "Intel(R) SSD 665p Series" > > PCI\VEN_8086&DEV_0953.DeviceDesc = "Intel(R) Solid-State Drive > > P3700/P3600/P3500/P3520/750 Series" > > PCI\VEN_8086&DEV_0A53.DeviceDesc = "Intel(R) Solid-State Drive DC P3520 > > Series" > > PCI\VEN_8086&DEV_0A54.DeviceDesc = "Intel(R) SSD DC > > P4500/4600/4501/4601/4608/4510/4610/4511 Series" > > PCI\VEN_8086&DEV_0A55.DeviceDesc = "Intel(R) SSD DC P4600 Series" > > PCI\VEN_8086&DEV_2700.DeviceDesc = "Intel(R) Optane(tm) SSD 900P/905P > > Series" > > PCI\VEN_8086&DEV_2701.DeviceDesc = "Intel(R) Optane(tm) SSD DC P4800X > > Series" > > PCI\VEN_8086&DEV_0B60.DeviceDesc = "Intel(R) SSD D7-P5500/P5600 Series" > > PCI\VEN_8086&DEV_4140.DeviceDesc = "Intel(R) Optane(tm) SSD DC P5800X > > Series" > > PCI\VEN_8086&DEV_2525.DeviceDesc = "Intel(R) SSD P1600X Series" > > > > 900P/905P are referred to as "Intel Optane SSD 9 Series" on > > https://ark.intel.com/content/www/us/en/ark/products/series/213701/intel-optane-ssd-9-series.html > > > > Index: sys/dev/pci/pcidevs > > =================================================================== > > RCS file: /cvs/src/sys/dev/pci/pcidevs,v > > retrieving revision 1.2000 > > diff -u -p -r1.2000 pcidevs > > --- sys/dev/pci/pcidevs 2 Aug 2022 05:35:01 -0000 1.2000 > > +++ sys/dev/pci/pcidevs 16 Aug 2022 03:09:20 -0000 > > @@ -4473,7 +4473,7 @@ product INTEL WL_3168_1 0x24fb Dual Ban > > product INTEL WL_8265_1 0x24fd Dual Band Wireless-AC 8265 > > product INTEL 82820_HB 0x2501 82820 Host > > product INTEL 82820_AGP 0x250f 82820 AGP > > -product INTEL OPTANE 0x2522 Optane > > +product INTEL OPTANE_P1600X 0x2522 Optane P1600X > > product INTEL WL_9260_1 0x2526 Dual Band Wireless-AC 9260 > > product INTEL 82850_HB 0x2530 82850 Host > > product INTEL 82860_HB 0x2531 82860 Host > > @@ -4623,6 +4623,7 @@ product INTEL 6321ESB_ACM 0x2699 6321ESB > > product INTEL 6321ESB_HDA 0x269a 6321ESB HD Audio > > product INTEL 6321ESB_SMB 0x269b 6321ESB SMBus > > product INTEL 6321ESB_IDE 0x269e 6321ESB IDE > > +product INTEL OPTANE_9 0x2700 Optane 9 > > product INTEL WL_22500_1 0x2723 Wi-Fi 6 AX200 > > product INTEL WL_22500_9 0x2725 Wi-Fi 6 AX210 > > product INTEL WL_22500_10 0x2726 Wi-Fi 6 AX211 > > Index: sys/dev/pci/nvme_pci.c > > =================================================================== > > RCS file: /cvs/src/sys/dev/pci/nvme_pci.c,v > > retrieving revision 1.10 > > diff -u -p -r1.10 nvme_pci.c > > --- sys/dev/pci/nvme_pci.c 11 Mar 2022 18:00:51 -0000 1.10 > > +++ sys/dev/pci/nvme_pci.c 16 Aug 2022 03:10:11 -0000 > > @@ -79,7 +79,7 @@ nvme_pci_match(struct device *parent, vo > > } > > static const struct pci_matchid nvme_msi_blacklist[] = { > > - { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_OPTANE }, > > + { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_OPTANE_P1600X }, > > }; > > void > > Renaming Intel product with ID 0x2700 to Optane 9 looks good to me and works > as expected. > > However, it looks to me like there's an ID mismatch w.r.t. 0x2522 / P1600X > in the diff since, according to the Windows driver info from above, P1600X > should be 0x2525 instead. The timelines also don't match since the P1600X > product seems to be quite recent from 02/2021 while the rev. 1.6 commit in > nvme_pci.c is from 07/2017. I have no idea what 0x2522 refers to.
Ah yes, well spotted. It is unclear what 0x2522 is so I'll leave it. PCI\VEN_8086&DEV_2522="Intel OPTANE RAID Controller" from https://ftp.ext.hp.com/pub/softpaq/sp111501-112000/sp111646.cva doesn't appear in https://downloadmirror.intel.com/677514/Client-x64.zip or https://downloadmirror.intel.com/677913/Datacenter-x64.zip > > Could you please commit the Optane 9 part? done, thanks for the patch