My understanding is that for the Samsung SSDs there are internal part numbers (PMxxx) and marketing names (SSD 980). So far we've used the internal part numbers in pcidevs, partly because not all parts show up as retails SSDs. Given that a 980 reference shows up in the firmware name that we print. I'd say we should not extend the pcidevs string. Saves a few bytes as well.
Op 17-08-2022 12:34 schreef Klemens Nanni <k...@openbsd.org>: SSD 980 is matched as PM991 but as far as I can tell from research, those are two different products with different product/model codes using the same PCI product id. nvme0 at pci4 dev 0 function 0 "Samsung PM991 NVMe" rev 0x00: msix, NVMe 1.4 nvme0: Samsung SSD 980 500GB, firmware 1B4QFXO7, serial S64DNX0RC12899Z scsibus3 at nvme0: 2 targets, initiator 0 sd2 at scsibus3 targ 1 lun 0: <NVMe, Samsung SSD 980, 1B4Q> Same for the PRO variant. Feedback? Objection? OK? Index: pcidevs =================================================================== RCS file: /cvs/src/sys/dev/pci/pcidevs,v retrieving revision 1.2001 diff -u -p -r1.2001 pcidevs --- pcidevs 16 Aug 2022 09:28:45 -0000 1.2001 +++ pcidevs 17 Aug 2022 10:25:36 -0000 @@ -8334,8 +8334,8 @@ product SAMSUNG2 SM951_AHCI 0xa801 SM951 product SAMSUNG2 SM951_NVME 0xa802 SM951/PM951 NVMe product SAMSUNG2 SM961_NVME 0xa804 SM961/PM961 NVMe product SAMSUNG2 SM981_NVME 0xa808 SM981/PM981 NVMe -product SAMSUNG2 PM991_NVME 0xa809 PM991 NVMe -product SAMSUNG2 PM9A1_NVME 0xa80a PM9A1 NVMe +product SAMSUNG2 PM991_NVME 0xa809 PM991/980 NVMe +product SAMSUNG2 PM9A1_NVME 0xa80a PM9A1/980PRO NVMe product SAMSUNG2 NVME_171X 0xa820 NVMe product SAMSUNG2 NVME_172X 0xa821 NVMe product SAMSUNG2 NVME_172X_A_B 0xa822 NVMe