]> git.proxmox.com Git - ceph.git/blob - ceph/src/spdk/dpdk/drivers/net/atlantic/atl_common.h
import 15.2.0 Octopus source
[ceph.git] / ceph / src / spdk / dpdk / drivers / net / atlantic / atl_common.h
1 /* SPDX-License-Identifier: BSD-3-Clause
2 * Copyright(c) 2018 Aquantia Corporation
3 */
4
5 #ifndef AQ_COMMON_H
6 #define AQ_COMMON_H
7
8 #define ATL_PMD_DRIVER_VERSION "0.6.7"
9
10 #define PCI_VENDOR_ID_AQUANTIA 0x1D6A
11
12 #define AQ_DEVICE_ID_0001 0x0001
13 #define AQ_DEVICE_ID_D100 0xD100
14 #define AQ_DEVICE_ID_D107 0xD107
15 #define AQ_DEVICE_ID_D108 0xD108
16 #define AQ_DEVICE_ID_D109 0xD109
17
18 #define AQ_DEVICE_ID_AQC100 0x00B1
19 #define AQ_DEVICE_ID_AQC107 0x07B1
20 #define AQ_DEVICE_ID_AQC108 0x08B1
21 #define AQ_DEVICE_ID_AQC109 0x09B1
22 #define AQ_DEVICE_ID_AQC111 0x11B1
23 #define AQ_DEVICE_ID_AQC112 0x12B1
24
25 #define AQ_DEVICE_ID_AQC100S 0x80B1
26 #define AQ_DEVICE_ID_AQC107S 0x87B1
27 #define AQ_DEVICE_ID_AQC108S 0x88B1
28 #define AQ_DEVICE_ID_AQC109S 0x89B1
29 #define AQ_DEVICE_ID_AQC111S 0x91B1
30 #define AQ_DEVICE_ID_AQC112S 0x92B1
31
32 #define AQ_DEVICE_ID_AQC111E 0x51B1
33 #define AQ_DEVICE_ID_AQC112E 0x52B1
34
35 #define HW_ATL_NIC_NAME "aQuantia AQtion 10Gbit Network Adapter"
36
37 #define AQ_HWREV_ANY 0
38 #define AQ_HWREV_1 1
39 #define AQ_HWREV_2 2
40
41 #define AQ_NIC_RATE_10G BIT(0)
42 #define AQ_NIC_RATE_5G BIT(1)
43 #define AQ_NIC_RATE_5G5R BIT(2)
44 #define AQ_NIC_RATE_2G5 BIT(3)
45 #define AQ_NIC_RATE_1G BIT(4)
46 #define AQ_NIC_RATE_100M BIT(5)
47
48 #define AQ_NIC_RATE_EEE_10G BIT(6)
49 #define AQ_NIC_RATE_EEE_5G BIT(7)
50 #define AQ_NIC_RATE_EEE_2G5 BIT(8)
51 #define AQ_NIC_RATE_EEE_1G BIT(9)
52
53
54 #define ATL_MAX_RING_DESC (8 * 1024 - 8)
55 #define ATL_MIN_RING_DESC 32
56 #define ATL_RXD_ALIGN 8
57 #define ATL_TXD_ALIGN 8
58 #define ATL_TX_MAX_SEG 16
59
60 #define ATL_MAX_INTR_QUEUE_NUM 15
61
62 #define ATL_MISC_VEC_ID 10
63 #define ATL_RX_VEC_START 0
64
65 #define AQ_NIC_WOL_ENABLED BIT(0)
66
67
68 #define AQ_NIC_FC_OFF 0U
69 #define AQ_NIC_FC_TX 1U
70 #define AQ_NIC_FC_RX 2U
71 #define AQ_NIC_FC_FULL 3U
72 #define AQ_NIC_FC_AUTO 4U
73
74
75 #define AQ_CFG_TX_FRAME_MAX (16U * 1024U)
76 #define AQ_CFG_RX_FRAME_MAX (2U * 1024U)
77
78 #define AQ_HW_MULTICAST_ADDRESS_MAX 32
79 #define AQ_HW_MAX_SEGS_SIZE 40
80
81 #define AQ_HW_MAX_RX_QUEUES 8
82 #define AQ_HW_MAX_TX_QUEUES 8
83 #define AQ_HW_MIN_RX_RING_SIZE 512
84 #define AQ_HW_MAX_RX_RING_SIZE 8192
85 #define AQ_HW_MIN_TX_RING_SIZE 512
86 #define AQ_HW_MAX_TX_RING_SIZE 8192
87
88 #define ATL_DEFAULT_RX_FREE_THRESH 64
89 #define ATL_DEFAULT_TX_FREE_THRESH 64
90
91 #define ATL_IRQ_CAUSE_LINK 0x8
92
93 #define AQ_HW_LED_BLINK 0x2U
94 #define AQ_HW_LED_DEFAULT 0x0U
95
96 #endif /* AQ_COMMON_H */