1 /* SPDX-License-Identifier: BSD-3-Clause */ 2 /* Copyright (c) 2024, Intel Corporation 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions are met: 7 * 8 * 1. Redistributions of source code must retain the above copyright notice, 9 * this list of conditions and the following disclaimer. 10 * 11 * 2. Redistributions in binary form must reproduce the above copyright 12 * notice, this list of conditions and the following disclaimer in the 13 * documentation and/or other materials provided with the distribution. 14 * 15 * 3. Neither the name of the Intel Corporation nor the names of its 16 * contributors may be used to endorse or promote products derived from 17 * this software without specific prior written permission. 18 * 19 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 20 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 21 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 22 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 23 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 24 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 25 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 26 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 27 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 28 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 29 * POSSIBILITY OF SUCH DAMAGE. 30 */ 31 32 /** 33 * @file ice_drv_info.h 34 * @brief device IDs and driver version 35 * 36 * Contains the device IDs tables and the driver version string. 37 * 38 * This file contains static or constant definitions intended to be included 39 * exactly once in the main driver interface file. It implicitly depends on 40 * the main driver header file. 41 * 42 * These definitions could be placed directly in the interface file, but are 43 * kept separate for organizational purposes. 44 */ 45 46 /** 47 * @var ice_driver_version 48 * @brief driver version string 49 * 50 * Driver version information, used for display as part of an informational 51 * sysctl, and as part of the driver information sent to the firmware at load. 52 * 53 * @var ice_major_version 54 * @brief driver major version number 55 * 56 * @var ice_minor_version 57 * @brief driver minor version number 58 * 59 * @var ice_patch_version 60 * @brief driver patch version number 61 * 62 * @var ice_rc_version 63 * @brief driver release candidate version number 64 */ 65 const char ice_driver_version[] = "1.43.2-k"; 66 const uint8_t ice_major_version = 1; 67 const uint8_t ice_minor_version = 43; 68 const uint8_t ice_patch_version = 2; 69 const uint8_t ice_rc_version = 0; 70 71 #define PVIDV(vendor, devid, name) \ 72 PVID(vendor, devid, name " - 1.43.2-k") 73 #define PVIDV_OEM(vendor, devid, svid, sdevid, revid, name) \ 74 PVID_OEM(vendor, devid, svid, sdevid, revid, name " - 1.43.2-k") 75 76 /** 77 * @var ice_vendor_info_array 78 * @brief array of PCI devices supported by this driver 79 * 80 * Array of PCI devices which are supported by this driver. Used to determine 81 * whether a given device should be loaded by this driver. This information is 82 * also exported as part of the module information for other tools to analyze. 83 * 84 * @remark Each type of device ID needs to be listed from most-specific entry 85 * to most-generic entry; e.g. PVIDV_OEM()s for a device ID must come before 86 * the PVIDV() for it. 87 */ 88 static const pci_vendor_info_t ice_vendor_info_array[] = { 89 PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E810C_BACKPLANE, 90 "Intel(R) Ethernet Controller E810-C for backplane"), 91 PVIDV_OEM(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E810C_QSFP, 92 ICE_INTEL_VENDOR_ID, 0x0001, 0, 93 "Intel(R) Ethernet Network Adapter E810-C-Q1"), 94 PVIDV_OEM(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E810C_QSFP, 95 ICE_INTEL_VENDOR_ID, 0x0002, 0, 96 "Intel(R) Ethernet Network Adapter E810-C-Q2"), 97 PVIDV_OEM(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E810C_QSFP, 98 ICE_INTEL_VENDOR_ID, 0x0003, 0, 99 "Intel(R) Ethernet Network Adapter E810-C-Q1"), 100 PVIDV_OEM(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E810C_QSFP, 101 ICE_INTEL_VENDOR_ID, 0x0004, 0, 102 "Intel(R) Ethernet Network Adapter E810-C-Q2"), 103 PVIDV_OEM(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E810C_QSFP, 104 ICE_INTEL_VENDOR_ID, 0x0005, 0, 105 "Intel(R) Ethernet Network Adapter E810-C-Q1 for OCP3.0"), 106 PVIDV_OEM(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E810C_QSFP, 107 ICE_INTEL_VENDOR_ID, 0x0006, 0, 108 "Intel(R) Ethernet Network Adapter E810-C-Q2 for OCP3.0"), 109 PVIDV_OEM(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E810C_QSFP, 110 ICE_INTEL_VENDOR_ID, 0x0007, 0, 111 "Intel(R) Ethernet Network Adapter E810-C-Q1 for OCP3.0"), 112 PVIDV_OEM(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E810C_QSFP, 113 ICE_INTEL_VENDOR_ID, 0x0008, 0, 114 "Intel(R) Ethernet Network Adapter E810-C-Q2 for OCP3.0"), 115 PVIDV_OEM(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E810C_QSFP, 116 ICE_INTEL_VENDOR_ID, 0x000D, 0, 117 "Intel(R) Ethernet Network Adapter E810-L-Q2 for OCP3.0"), 118 PVIDV_OEM(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E810C_QSFP, 119 ICE_INTEL_VENDOR_ID, 0x000E, 0, 120 "Intel(R) Ethernet Network Adapter E810-2C-Q2"), 121 PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E810C_QSFP, 122 "Intel(R) Ethernet Controller E810-C for QSFP"), 123 PVIDV_OEM(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E810C_SFP, 124 ICE_INTEL_VENDOR_ID, 0x0005, 0, 125 "Intel(R) Ethernet Network Adapter E810-XXV-4"), 126 PVIDV_OEM(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E810C_SFP, 127 ICE_INTEL_VENDOR_ID, 0x0006, 0, 128 "Intel(R) Ethernet Network Adapter E810-XXV-4"), 129 PVIDV_OEM(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E810C_SFP, 130 ICE_INTEL_VENDOR_ID, 0x0007, 0, 131 "Intel(R) Ethernet Network Adapter E810-XXV-4"), 132 PVIDV_OEM(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E810C_SFP, 133 ICE_INTEL_VENDOR_ID, 0x000C, 0, 134 "Intel(R) Ethernet Network Adapter E810-XXV-4 for OCP 3.0"), 135 PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E810C_SFP, 136 "Intel(R) Ethernet Controller E810-C for SFP"), 137 PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E822C_BACKPLANE, 138 "Intel(R) Ethernet Connection E822-C for backplane"), 139 PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E822C_QSFP, 140 "Intel(R) Ethernet Connection E822-C for QSFP"), 141 PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E822C_SFP, 142 "Intel(R) Ethernet Connection E822-C for SFP"), 143 PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E822C_10G_BASE_T, 144 "Intel(R) Ethernet Connection E822-C/X557-AT 10GBASE-T"), 145 PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E822C_SGMII, 146 "Intel(R) Ethernet Connection E822-C 1GbE"), 147 PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E822L_BACKPLANE, 148 "Intel(R) Ethernet Connection E822-L for backplane"), 149 PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E822L_SFP, 150 "Intel(R) Ethernet Connection E822-L for SFP"), 151 PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E822L_10G_BASE_T, 152 "Intel(R) Ethernet Connection E822-L/X557-AT 10GBASE-T"), 153 PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E822L_SGMII, 154 "Intel(R) Ethernet Connection E822-L 1GbE"), 155 PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E823L_BACKPLANE, 156 "Intel(R) Ethernet Connection E823-L for backplane"), 157 PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E823L_SFP, 158 "Intel(R) Ethernet Connection E823-L for SFP"), 159 PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E823L_QSFP, 160 "Intel(R) Ethernet Connection E823-L for QSFP"), 161 PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E823L_10G_BASE_T, 162 "Intel(R) Ethernet Connection E823-L/X557-AT 10GBASE-T"), 163 PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E823L_1GBE, 164 "Intel(R) Ethernet Connection E823-L 1GbE"), 165 PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E823C_BACKPLANE, 166 "Intel(R) Ethernet Connection E823-C for backplane"), 167 PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E823C_QSFP, 168 "Intel(R) Ethernet Connection E823-C for QSFP"), 169 PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E823C_SFP, 170 "Intel(R) Ethernet Connection E823-C for SFP"), 171 PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E823C_10G_BASE_T, 172 "Intel(R) Ethernet Connection E823-C/X557-AT 10GBASE-T"), 173 PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E823C_SGMII, 174 "Intel(R) Ethernet Connection E823-C 1GbE"), 175 PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E810_XXV_BACKPLANE, 176 "Intel(R) Ethernet Controller E810-XXV for backplane"), 177 PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E810_XXV_QSFP, 178 "Intel(R) Ethernet Controller E810-XXV for QSFP"), 179 PVIDV_OEM(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E810_XXV_SFP, 180 ICE_INTEL_VENDOR_ID, 0x0003, 0, 181 "Intel(R) Ethernet Network Adapter E810-XXV-2"), 182 PVIDV_OEM(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E810_XXV_SFP, 183 ICE_INTEL_VENDOR_ID, 0x0004, 0, 184 "Intel(R) Ethernet Network Adapter E810-XXV-2"), 185 PVIDV_OEM(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E810_XXV_SFP, 186 ICE_INTEL_VENDOR_ID, 0x0005, 0, 187 "Intel(R) Ethernet Network Adapter E810-XXV-2 for OCP 3.0"), 188 PVIDV_OEM(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E810_XXV_SFP, 189 ICE_INTEL_VENDOR_ID, 0x0006, 0, 190 "Intel(R) Ethernet Network Adapter E810-XXV-2 for OCP 3.0"), 191 PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E810_XXV_SFP, 192 "Intel(R) Ethernet Controller E810-XXV for SFP"), 193 PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E830_BACKPLANE, 194 "Intel(R) Ethernet Connection E830-CC for backplane"), 195 PVIDV_OEM(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E830_QSFP56, 196 ICE_INTEL_VENDOR_ID, 0x0002, 0, 197 "Intel(R) Ethernet Network Adapter E830-C-Q2 for OCP 3.0"), 198 PVIDV_OEM(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E830_QSFP56, 199 ICE_INTEL_VENDOR_ID, 0x0004, 0, 200 "Intel(R) Ethernet Network Adapter E830-CC-Q1 for OCP 3.0"), 201 PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E830_QSFP56, 202 "Intel(R) Ethernet Connection E830-CC for QSFP56"), 203 PVIDV_OEM(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E830_SFP, 204 ICE_INTEL_VENDOR_ID, 0x0001, 0, 205 "Intel(R) Ethernet Network Adapter E830-XXV-2 for OCP 3.0"), 206 PVIDV_OEM(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E830_SFP, 207 ICE_INTEL_VENDOR_ID, 0x0003, 0, 208 "Intel(R) Ethernet Network Adapter E830-XXV-2"), 209 PVIDV_OEM(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E830_SFP, 210 ICE_INTEL_VENDOR_ID, 0x0004, 0, 211 "Intel(R) Ethernet Network Adapter E830-XXV-4 for OCP 3.0"), 212 PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E830_SFP, 213 "Intel(R) Ethernet Connection E830-CC for SFP"), 214 PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E830C_BACKPLANE, 215 "Intel(R) Ethernet Connection E830-C for backplane"), 216 PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E830C_QSFP, 217 "Intel(R) Ethernet Connection E830-C for QSFP"), 218 PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E830C_SFP, 219 "Intel(R) Ethernet Connection E830-C for SFP"), 220 PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E830_L_BACKPLANE, 221 "Intel(R) Ethernet Connection E830-L for backplane"), 222 PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E830_L_QSFP, 223 "Intel(R) Ethernet Connection E830-L for QSFP"), 224 PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E830_L_SFP, 225 "Intel(R) Ethernet Connection E830-L for SFP"), 226 PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E825C_BACKPLANE, 227 "Intel(R) Ethernet Connection E825-C for backplane"), 228 PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E825C_QSFP, 229 "Intel(R) Ethernet Connection E825-C for QSFP"), 230 PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E825C_SFP, 231 "Intel(R) Ethernet Connection E825-C for SFP"), 232 PVID_END 233 }; 234 235