Hi, recently, we have bought servers with Mellanox Ethernet Adaptors of the MT2894 Family [ConnectXâ6 Lx] : - OCP3 form factor : MCX631432AS-ADAI - PCIe form factor : MCX631102AS-ADAT
We want to run OpenBSD on those servers. But, looking at the source code, we figured out that the MT2894 family is not supported. I wrote these "quick and dirty patch", hopping that sys/dev/pci/if_mcx.c includes everything that ConnectX-6 LX cards need to operate : =================================================================== --- sys/dev/pci/if_mcx.c Mon Nov 21 23:48:32 2022 +++ sys/dev/pci/if_mcx.c Thu Aug 10 09:44:21 2023 @@ -2657,6 +2657,7 @@ static const struct pci_matchid mcx_devices[] = { { PCI_VENDOR_MELLANOX, PCI_PRODUCT_MELLANOX_MT28800VF }, { PCI_VENDOR_MELLANOX, PCI_PRODUCT_MELLANOX_MT28908 }, { PCI_VENDOR_MELLANOX, PCI_PRODUCT_MELLANOX_MT2892 }, + { PCI_VENDOR_MELLANOX, PCI_PRODUCT_MELLANOX_MT2894 }, }; struct mcx_eth_proto_capability { =================================================================== --- sys/dev/pci/pcidevs.h Sun Mar 19 03:38:43 2023 +++ sys/dev/pci/pcidevs.h Thu Aug 10 09:44:21 2023 @@ -7261,6 +7261,7 @@ #define PCI_PRODUCT_MELLANOX_MT28908 0x101b /* ConnectX-6 */ #define PCI_PRODUCT_MELLANOX_MT28908VF 0x101c /* ConnectX-6 VF */ #define PCI_PRODUCT_MELLANOX_MT2892 0x101d /* ConnectX-6 Dx */ +#define PCI_PRODUCT_MELLANOX_MT2894 0x101f /* ConnectX-6 Lx */ #define PCI_PRODUCT_MELLANOX_CONNECTX_EN 0x6368 /* ConnectX EN */ /* Mentor */ =================================================================== --- sys/dev/pci/pcidevs_data.h Sun Mar 19 03:38:43 2023 +++ sys/dev/pci/pcidevs_data.h Thu Aug 10 09:44:21 2023 @@ -26184,6 +26184,10 @@ static const struct pci_known_product pci_known_produc "ConnectX-6 Dx", }, { + PCI_VENDOR_MELLANOX, PCI_PRODUCT_MELLANOX_MT2894, + "ConnectX-6 Lx", + }, + { PCI_VENDOR_MELLANOX, PCI_PRODUCT_MELLANOX_CONNECTX_EN, "ConnectX EN", }, Thanks to this patch, the cards are recognized by the system. The first tests don't show any problem. But I'm not sure of anything, because I didn't check if_mcx.c with the datasheet of the cards (and I'm not able to do this). I would like to know if it could be possible to add an official support of the Mellanox MT2894 family (ConnectX-6 Lx) in the upcoming OpenBSD release ? Best regards Olivier. PS : for your information, already posted this morning on misc mailing list (https://marc.info/?l=openbsd-misc&m=169398814929531&w=2) but it wasn't maybe the best mailing list.