xref: /freebsd/sys/dev/ixl/i40e_devids.h (revision 02e9120893770924227138ba49df1edb3896112a)
1 /******************************************************************************
2 
3   Copyright (c) 2013-2018, Intel Corporation
4   All rights reserved.
5 
6   Redistribution and use in source and binary forms, with or without
7   modification, are permitted provided that the following conditions are met:
8 
9    1. Redistributions of source code must retain the above copyright notice,
10       this list of conditions and the following disclaimer.
11 
12    2. Redistributions in binary form must reproduce the above copyright
13       notice, this list of conditions and the following disclaimer in the
14       documentation and/or other materials provided with the distribution.
15 
16    3. Neither the name of the Intel Corporation nor the names of its
17       contributors may be used to endorse or promote products derived from
18       this software without specific prior written permission.
19 
20   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
21   AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22   IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
23   ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
24   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
25   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
26   SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
27   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
28   CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
29   ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
30   POSSIBILITY OF SUCH DAMAGE.
31 
32 ******************************************************************************/
33 
34 #ifndef _I40E_DEVIDS_H_
35 #define _I40E_DEVIDS_H_
36 
37 /* Vendor ID */
38 #define I40E_INTEL_VENDOR_ID		0x8086
39 
40 /* Device IDs */
41 #define I40E_DEV_ID_X710_N3000		0x0CF8
42 #define I40E_DEV_ID_XXV710_N3000	0x0D58
43 #define I40E_DEV_ID_SFP_XL710		0x1572
44 #define I40E_DEV_ID_QEMU		0x1574
45 #define I40E_DEV_ID_KX_B		0x1580
46 #define I40E_DEV_ID_KX_C		0x1581
47 #define I40E_DEV_ID_QSFP_A		0x1583
48 #define I40E_DEV_ID_QSFP_B		0x1584
49 #define I40E_DEV_ID_QSFP_C		0x1585
50 #define I40E_DEV_ID_10G_BASE_T		0x1586
51 #define I40E_DEV_ID_20G_KR2		0x1587
52 #define I40E_DEV_ID_20G_KR2_A		0x1588
53 #define I40E_DEV_ID_10G_BASE_T4		0x1589
54 #define I40E_DEV_ID_25G_B		0x158A
55 #define I40E_DEV_ID_25G_SFP28		0x158B
56 #define I40E_DEV_ID_10G_BASE_T_BC	0x15FF
57 #define I40E_DEV_ID_10G_B		0x104F
58 #define I40E_DEV_ID_10G_SFP		0x104E
59 #define I40E_DEV_ID_5G_BASE_T_BC	0x101F
60 #define I40E_DEV_ID_1G_BASE_T_BC	0x0DD2
61 #define I40E_IS_X710TL_DEVICE(d) \
62 	(((d) == I40E_DEV_ID_10G_BASE_T_BC) || \
63 	((d) == I40E_DEV_ID_5G_BASE_T_BC) || \
64 	((d) == I40E_DEV_ID_1G_BASE_T_BC))
65 #define I40E_DEV_ID_VF			0x154C
66 #define I40E_DEV_ID_VF_HV		0x1571
67 #define I40E_DEV_ID_ADAPTIVE_VF		0x1889
68 #define I40E_DEV_ID_KX_X722		0x37CE
69 #define I40E_DEV_ID_QSFP_X722		0x37CF
70 #define I40E_DEV_ID_SFP_X722		0x37D0
71 #define I40E_DEV_ID_1G_BASE_T_X722	0x37D1
72 #define I40E_DEV_ID_10G_BASE_T_X722	0x37D2
73 #define I40E_DEV_ID_SFP_I_X722		0x37D3
74 #define I40E_DEV_ID_X722_VF		0x37CD
75 
76 #define i40e_is_40G_device(d)		((d) == I40E_DEV_ID_QSFP_A  || \
77 					 (d) == I40E_DEV_ID_QSFP_B  || \
78 					 (d) == I40E_DEV_ID_QSFP_C)
79 
80 #define i40e_is_25G_device(d)		((d) == I40E_DEV_ID_25G_B  || \
81 					 (d) == I40E_DEV_ID_25G_SFP28)
82 
83 #endif /* _I40E_DEVIDS_H_ */
84