aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/ice/ice_drv_info.h
blob: 9ed3e3e2fb0e2c582ee67d6d3c5d3514ef4732ab (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
/* SPDX-License-Identifier: BSD-3-Clause */
/*  Copyright (c) 2020, Intel Corporation
 *  All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *   1. Redistributions of source code must retain the above copyright notice,
 *      this list of conditions and the following disclaimer.
 *
 *   2. Redistributions in binary form must reproduce the above copyright
 *      notice, this list of conditions and the following disclaimer in the
 *      documentation and/or other materials provided with the distribution.
 *
 *   3. Neither the name of the Intel Corporation nor the names of its
 *      contributors may be used to endorse or promote products derived from
 *      this software without specific prior written permission.
 *
 *  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
 *  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 *  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 *  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
 *  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 *  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
 *  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
 *  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
 *  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 *  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
 *  POSSIBILITY OF SUCH DAMAGE.
 */
/*$FreeBSD$*/

/**
 * @file ice_drv_info.h
 * @brief device IDs and driver version
 *
 * Contains the device IDs tables and the driver version string.
 *
 * This file contains static or constant definitions intended to be included
 * exactly once in the main driver interface file. It implicitly depends on
 * the main driver header file.
 *
 * These definitions could be placed directly in the interface file, but are
 * kept separate for organizational purposes.
 */

/**
 * @var ice_driver_version
 * @brief driver version string
 *
 * Driver version information, used for display as part of an informational
 * sysctl, and as part of the driver information sent to the firmware at load.
 *
 * @var ice_major_version
 * @brief driver major version number
 *
 * @var ice_minor_version
 * @brief driver minor version number
 *
 * @var ice_patch_version
 * @brief driver patch version number
 *
 * @var ice_rc_version
 * @brief driver release candidate version number
 */
const char ice_driver_version[] = "0.26.16-k";
const uint8_t ice_major_version = 0;
const uint8_t ice_minor_version = 26;
const uint8_t ice_patch_version = 16;
const uint8_t ice_rc_version = 0;

#define PVIDV(vendor, devid, name) \
	PVID(vendor, devid, name " - 0.26.16-k")
#define PVIDV_OEM(vendor, devid, svid, sdevid, revid, name) \
	PVID_OEM(vendor, devid, svid, sdevid, revid, name " - 0.26.16-k")

/**
 * @var ice_vendor_info_array
 * @brief array of PCI devices supported by this driver
 *
 * Array of PCI devices which are supported by this driver. Used to determine
 * whether a given device should be loaded by this driver. This information is
 * also exported as part of the module information for other tools to analyze.
 *
 * @remark Each type of device ID needs to be listed from most-specific entry
 * to most-generic entry; e.g. PVIDV_OEM()s for a device ID must come before
 * the PVIDV() for it.
 */
static pci_vendor_info_t ice_vendor_info_array[] = {
	PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E810C_BACKPLANE,
		"Intel(R) Ethernet Controller E810-C for backplane"),
	PVIDV_OEM(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E810C_QSFP,
		ICE_INTEL_VENDOR_ID, 0x0001, 0,
		"Intel(R) Ethernet Network Adapter E810-C-Q1"),
	PVIDV_OEM(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E810C_QSFP,
		ICE_INTEL_VENDOR_ID, 0x0002, 0,
		"Intel(R) Ethernet Network Adapter E810-C-Q2"),
	PVIDV_OEM(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E810C_QSFP,
		ICE_INTEL_VENDOR_ID, 0x0003, 0,
		"Intel(R) Ethernet Network Adapter E810-C-Q1"),
	PVIDV_OEM(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E810C_QSFP,
		ICE_INTEL_VENDOR_ID, 0x0004, 0,
		"Intel(R) Ethernet Network Adapter E810-C-Q2"),
	PVIDV_OEM(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E810C_QSFP,
		ICE_INTEL_VENDOR_ID, 0x0005, 0,
		"Intel(R) Ethernet Network Adapter E810-C-Q1 for OCP3.0"),
	PVIDV_OEM(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E810C_QSFP,
		ICE_INTEL_VENDOR_ID, 0x0006, 0,
		"Intel(R) Ethernet Network Adapter E810-C-Q2 for OCP3.0"),
	PVIDV_OEM(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E810C_QSFP,
		ICE_INTEL_VENDOR_ID, 0x0007, 0,
		"Intel(R) Ethernet Network Adapter E810-C-Q1 for OCP3.0"),
	PVIDV_OEM(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E810C_QSFP,
		ICE_INTEL_VENDOR_ID, 0x0008, 0,
		"Intel(R) Ethernet Network Adapter E810-C-Q2 for OCP3.0"),
	PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E810C_QSFP,
		"Intel(R) Ethernet Controller E810-C for QSFP"),
	PVIDV_OEM(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E810C_SFP,
		ICE_INTEL_VENDOR_ID, 0x0001, 0,
		"Intel(R) Ethernet Network Adapter E810-L-1"),
	PVIDV_OEM(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E810C_SFP,
		ICE_INTEL_VENDOR_ID, 0x0002, 0,
		"Intel(R) Ethernet Network Adapter E810-L-2"),
	PVIDV_OEM(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E810C_SFP,
		ICE_INTEL_VENDOR_ID, 0x0003, 0,
		"Intel(R) Ethernet Network Adapter E810-L-1"),
	PVIDV_OEM(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E810C_SFP,
		ICE_INTEL_VENDOR_ID, 0x0004, 0,
		"Intel(R) Ethernet Network Adapter E810-L-2"),
	PVIDV_OEM(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E810C_SFP,
		ICE_INTEL_VENDOR_ID, 0x0005, 0,
		"Intel(R) Ethernet Network Adapter E810-XXV-4"),
	PVIDV_OEM(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E810C_SFP,
		ICE_INTEL_VENDOR_ID, 0x0006, 0,
		"Intel(R) Ethernet Network Adapter E810-XXV-4"),
	PVIDV_OEM(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E810C_SFP,
		ICE_INTEL_VENDOR_ID, 0x0007, 0,
		"Intel(R) Ethernet Network Adapter E810-XXV-4"),
	PVIDV_OEM(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E810C_SFP,
		ICE_INTEL_VENDOR_ID, 0x0008, 0,
		"Intel(R) Ethernet Network Adapter E810-XXV-2"),
	PVIDV_OEM(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E810C_SFP,
		ICE_INTEL_VENDOR_ID, 0x0009, 0,
		"Intel(R) Ethernet Network Adapter E810-XXV-2 for OCP 2.0"),
	PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E810C_SFP,
		"Intel(R) Ethernet Controller E810-C for SFP"),
	PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E822C_BACKPLANE,
	      "Intel(R) Ethernet Connection E822-C for backplane"),
	PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E822C_QSFP,
	      "Intel(R) Ethernet Connection E822-C for QSFP"),
	PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E822C_SFP,
	      "Intel(R) Ethernet Connection E822-C for SFP"),
	PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E822C_10G_BASE_T,
	      "Intel(R) Ethernet Connection E822-C/X557-AT 10GBASE-T"),
	PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E822C_SGMII,
	      "Intel(R) Ethernet Connection E822-C 1GbE"),
	PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E822L_BACKPLANE,
	      "Intel(R) Ethernet Connection E822-L for backplane"),
	PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E822L_SFP,
	      "Intel(R) Ethernet Connection E822-L for SFP"),
	PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E822L_10G_BASE_T,
	      "Intel(R) Ethernet Connection E822-L/X557-AT 10GBASE-T"),
	PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E822L_SGMII,
	      "Intel(R) Ethernet Connection E822-L 1GbE"),
	PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E823L_BACKPLANE,
	      "Intel(R) Ethernet Connection E823-L for backplane"),
	PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E823L_SFP,
	      "Intel(R) Ethernet Connection E823-L for SFP"),
	PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E823L_QSFP,
	      "Intel(R) Ethernet Connection E823-L for QSFP"),
	PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E823L_10G_BASE_T,
	      "Intel(R) Ethernet Connection E823-L/X557-AT 10GBASE-T"),
	PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E823L_1GBE,
	      "Intel(R) Ethernet Connection E823-L 1GbE"),
	PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E810_XXV_BACKPLANE,
	      "Intel(R) Ethernet Controller E810-XXV for backplane"),
	PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E810_XXV_QSFP,
		"Intel(R) Ethernet Controller E810-XXV for QSFP"),
	PVIDV_OEM(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E810_XXV_SFP,
		ICE_INTEL_VENDOR_ID, 0x0003, 0,
		"Intel(R) Ethernet Network Adapter E810-XXV-2"),
	PVIDV_OEM(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E810_XXV_SFP,
		ICE_INTEL_VENDOR_ID, 0x0004, 0,
		"Intel(R) Ethernet Network Adapter E810-XXV-2"),
	PVIDV_OEM(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E810_XXV_SFP,
		ICE_INTEL_VENDOR_ID, 0x0005, 0,
		"Intel(R) Ethernet Network Adapter E810-XXV-2 for OCP 3.0"),
	PVIDV_OEM(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E810_XXV_SFP,
		ICE_INTEL_VENDOR_ID, 0x0006, 0,
		"Intel(R) Ethernet Network Adapter E810-XXV-2 for OCP 3.0"),
	PVIDV(ICE_INTEL_VENDOR_ID, ICE_DEV_ID_E810_XXV_SFP,
		"Intel(R) Ethernet Controller E810-XXV for SFP"),
	PVID_END
};