]> git.proxmox.com Git - mirror_ubuntu-focal-kernel.git/blame - drivers/net/ethernet/aquantia/atlantic/aq_cfg.h
UBUNTU: Ubuntu-5.4.0-117.132
[mirror_ubuntu-focal-kernel.git] / drivers / net / ethernet / aquantia / atlantic / aq_cfg.h
CommitLineData
75a6faf6 1/* SPDX-License-Identifier: GPL-2.0-only */
3a35780f
DV
2/*
3 * aQuantia Corporation Network Driver
4 * Copyright (C) 2014-2017 aQuantia Corporation. All rights reserved
3a35780f
DV
5 */
6
7/* File aq_cfg.h: Definition of configuration parameters and constants. */
8
9#ifndef AQ_CFG_H
10#define AQ_CFG_H
11
2d3910c4
IR
12#include <generated/utsrelease.h>
13
71a963cf 14#define AQ_CFG_VECS_DEF 8U
3a35780f
DV
15#define AQ_CFG_TCS_DEF 1U
16
17#define AQ_CFG_TXDS_DEF 4096U
1b09e72d 18#define AQ_CFG_RXDS_DEF 2048U
3a35780f
DV
19
20#define AQ_CFG_IS_POLLING_DEF 0U
21
22#define AQ_CFG_FORCE_LEGACY_INT 0U
23
b82ee71a
IR
24#define AQ_CFG_INTERRUPT_MODERATION_OFF 0
25#define AQ_CFG_INTERRUPT_MODERATION_ON 1
26#define AQ_CFG_INTERRUPT_MODERATION_AUTO 0xFFFFU
27
28#define AQ_CFG_INTERRUPT_MODERATION_USEC_MAX (0x1FF * 2)
29
3a35780f
DV
30#define AQ_CFG_IRQ_MASK 0x1FFU
31
32#define AQ_CFG_VECS_MAX 8U
33#define AQ_CFG_TCS_MAX 8U
34
35#define AQ_CFG_TX_FRAME_MAX (16U * 1024U)
8bd7e763 36#define AQ_CFG_RX_FRAME_MAX (2U * 1024U)
3a35780f 37
b647d398
IR
38#define AQ_CFG_TX_CLEAN_BUDGET 256U
39
9773ef18
IR
40#define AQ_CFG_RX_REFILL_THRES 32U
41
7e2698c4
IR
42#define AQ_CFG_RX_HDR_SIZE 256U
43
46f4c29d
IR
44#define AQ_CFG_RX_PAGEORDER 0U
45
3a35780f
DV
46/* LRO */
47#define AQ_CFG_IS_LRO_DEF 1U
48
49/* RSS */
474fb115
DB
50#define AQ_CFG_RSS_INDIRECTION_TABLE_MAX 64U
51#define AQ_CFG_RSS_HASHKEY_SIZE 40U
3a35780f
DV
52
53#define AQ_CFG_IS_RSS_DEF 1U
54#define AQ_CFG_NUM_RSS_QUEUES_DEF AQ_CFG_VECS_DEF
55#define AQ_CFG_RSS_BASE_CPU_NUM_DEF 0U
56
57#define AQ_CFG_PCI_FUNC_MSIX_IRQS 9U
58#define AQ_CFG_PCI_FUNC_PORTS 2U
59
fdb4a083 60#define AQ_CFG_SERVICE_TIMER_INTERVAL (1 * HZ)
3a35780f
DV
61#define AQ_CFG_POLLING_TIMER_INTERVAL ((unsigned int)(2 * HZ))
62
63#define AQ_CFG_SKB_FRAGS_MAX 32U
64
3aec6412
IR
65/* Number of descriptors available in one ring to resume this ring queue
66 */
67#define AQ_CFG_RESTART_DESC_THRES (AQ_CFG_SKB_FRAGS_MAX * 2)
68
3a35780f
DV
69#define AQ_CFG_NAPI_WEIGHT 64U
70
3a35780f
DV
71/*#define AQ_CFG_MAC_ADDR_PERMANENT {0x30, 0x0E, 0xE3, 0x12, 0x34, 0x56}*/
72
efe779b7
IR
73#define AQ_NIC_FC_OFF 0U
74#define AQ_NIC_FC_TX 1U
75#define AQ_NIC_FC_RX 2U
76#define AQ_NIC_FC_FULL 3U
77#define AQ_NIC_FC_AUTO 4U
78
79#define AQ_CFG_FC_MODE AQ_NIC_FC_FULL
3a35780f
DV
80
81#define AQ_CFG_SPEED_MSK 0xFFFFU /* 0xFFFFU==auto_neg */
82
83#define AQ_CFG_IS_AUTONEG_DEF 1U
84#define AQ_CFG_MTU_DEF 1514U
85
86#define AQ_CFG_LOCK_TRYS 100U
87
88#define AQ_CFG_DRV_AUTHOR "aQuantia"
89#define AQ_CFG_DRV_DESC "aQuantia Corporation(R) Network Driver"
5900eca1 90#define AQ_CFG_DRV_NAME "atlantic"
2d3910c4 91#define AQ_CFG_DRV_VERSION UTS_RELEASE \
d4c242d4 92 AQ_CFG_DRV_VERSION_SUFFIX
3a35780f
DV
93
94#endif /* AQ_CFG_H */