aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/qlcnic/qlcnic.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/qlcnic/qlcnic.h')
-rw-r--r--drivers/net/qlcnic/qlcnic.h42
1 files changed, 10 insertions, 32 deletions
diff --git a/drivers/net/qlcnic/qlcnic.h b/drivers/net/qlcnic/qlcnic.h
index 8ecc170c9b7..f267da42f24 100644
--- a/drivers/net/qlcnic/qlcnic.h
+++ b/drivers/net/qlcnic/qlcnic.h
@@ -1,25 +1,8 @@
1/* 1/*
2 * Copyright (C) 2009 - QLogic Corporation. 2 * QLogic qlcnic NIC Driver
3 * All rights reserved. 3 * Copyright (c) 2009-2010 QLogic Corporation
4 *
5 * This program is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU General Public License
7 * as published by the Free Software Foundation; either version 2
8 * of the License, or (at your option) any later version.
9 *
10 * This program is distributed in the hope that it will be useful, but
11 * WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
14 *
15 * You should have received a copy of the GNU General Public License
16 * along with this program; if not, write to the Free Software
17 * Foundation, Inc., 59 Temple Place - Suite 330, Boston,
18 * MA 02111-1307, USA.
19 *
20 * The full GNU General Public License is included in this distribution
21 * in the file called "COPYING".
22 * 4 *
5 * See LICENSE.qlcnic for copyright and licensing details.
23 */ 6 */
24 7
25#ifndef _QLCNIC_H_ 8#ifndef _QLCNIC_H_
@@ -51,8 +34,8 @@
51 34
52#define _QLCNIC_LINUX_MAJOR 5 35#define _QLCNIC_LINUX_MAJOR 5
53#define _QLCNIC_LINUX_MINOR 0 36#define _QLCNIC_LINUX_MINOR 0
54#define _QLCNIC_LINUX_SUBVERSION 11 37#define _QLCNIC_LINUX_SUBVERSION 13
55#define QLCNIC_LINUX_VERSIONID "5.0.11" 38#define QLCNIC_LINUX_VERSIONID "5.0.13"
56#define QLCNIC_DRV_IDC_VER 0x01 39#define QLCNIC_DRV_IDC_VER 0x01
57#define QLCNIC_DRIVER_VERSION ((_QLCNIC_LINUX_MAJOR << 16) |\ 40#define QLCNIC_DRIVER_VERSION ((_QLCNIC_LINUX_MAJOR << 16) |\
58 (_QLCNIC_LINUX_MINOR << 8) | (_QLCNIC_LINUX_SUBVERSION)) 41 (_QLCNIC_LINUX_MINOR << 8) | (_QLCNIC_LINUX_SUBVERSION))
@@ -798,7 +781,6 @@ struct qlcnic_nic_intr_coalesce {
798#define QLCNIC_H2C_OPCODE_GET_NET_STATS 16 781#define QLCNIC_H2C_OPCODE_GET_NET_STATS 16
799#define QLCNIC_H2C_OPCODE_PROXY_UPDATE_P2V 17 782#define QLCNIC_H2C_OPCODE_PROXY_UPDATE_P2V 17
800#define QLCNIC_H2C_OPCODE_CONFIG_IPADDR 18 783#define QLCNIC_H2C_OPCODE_CONFIG_IPADDR 18
801#define QLCNIC_H2C_OPCODE_CONFIG_LOOPBACK 19
802#define QLCNIC_H2C_OPCODE_PROXY_STOP_DONE 20 784#define QLCNIC_H2C_OPCODE_PROXY_STOP_DONE 20
803#define QLCNIC_H2C_OPCODE_GET_LINKEVENT 21 785#define QLCNIC_H2C_OPCODE_GET_LINKEVENT 21
804#define QLCNIC_C2C_OPCODE 22 786#define QLCNIC_C2C_OPCODE 22
@@ -923,6 +905,7 @@ struct qlcnic_ipaddr {
923#define QLCNIC_MACSPOOF 0x200 905#define QLCNIC_MACSPOOF 0x200
924#define QLCNIC_MAC_OVERRIDE_DISABLED 0x400 906#define QLCNIC_MAC_OVERRIDE_DISABLED 0x400
925#define QLCNIC_PROMISC_DISABLED 0x800 907#define QLCNIC_PROMISC_DISABLED 0x800
908#define QLCNIC_NEED_FLR 0x1000
926#define QLCNIC_IS_MSI_FAMILY(adapter) \ 909#define QLCNIC_IS_MSI_FAMILY(adapter) \
927 ((adapter)->flags & (QLCNIC_MSI_ENABLED | QLCNIC_MSIX_ENABLED)) 910 ((adapter)->flags & (QLCNIC_MSI_ENABLED | QLCNIC_MSIX_ENABLED))
928 911
@@ -1126,8 +1109,7 @@ struct qlcnic_eswitch {
1126/* Return codes for Error handling */ 1109/* Return codes for Error handling */
1127#define QL_STATUS_INVALID_PARAM -1 1110#define QL_STATUS_INVALID_PARAM -1
1128 1111
1129#define MAX_BW 100 1112#define MAX_BW 100 /* % of link speed */
1130#define MIN_BW 1
1131#define MAX_VLAN_ID 4095 1113#define MAX_VLAN_ID 4095
1132#define MIN_VLAN_ID 2 1114#define MIN_VLAN_ID 2
1133#define MAX_TX_QUEUES 1 1115#define MAX_TX_QUEUES 1
@@ -1135,7 +1117,7 @@ struct qlcnic_eswitch {
1135#define DEFAULT_MAC_LEARN 1 1117#define DEFAULT_MAC_LEARN 1
1136 1118
1137#define IS_VALID_VLAN(vlan) (vlan >= MIN_VLAN_ID && vlan < MAX_VLAN_ID) 1119#define IS_VALID_VLAN(vlan) (vlan >= MIN_VLAN_ID && vlan < MAX_VLAN_ID)
1138#define IS_VALID_BW(bw) (bw >= MIN_BW && bw <= MAX_BW) 1120#define IS_VALID_BW(bw) (bw <= MAX_BW)
1139#define IS_VALID_TX_QUEUES(que) (que > 0 && que <= MAX_TX_QUEUES) 1121#define IS_VALID_TX_QUEUES(que) (que > 0 && que <= MAX_TX_QUEUES)
1140#define IS_VALID_RX_QUEUES(que) (que > 0 && que <= MAX_RX_QUEUES) 1122#define IS_VALID_RX_QUEUES(que) (que > 0 && que <= MAX_RX_QUEUES)
1141 1123
@@ -1314,21 +1296,15 @@ int qlcnic_config_bridged_mode(struct qlcnic_adapter *adapter, u32 enable);
1314int qlcnic_send_lro_cleanup(struct qlcnic_adapter *adapter); 1296int qlcnic_send_lro_cleanup(struct qlcnic_adapter *adapter);
1315void qlcnic_update_cmd_producer(struct qlcnic_adapter *adapter, 1297void qlcnic_update_cmd_producer(struct qlcnic_adapter *adapter,
1316 struct qlcnic_host_tx_ring *tx_ring); 1298 struct qlcnic_host_tx_ring *tx_ring);
1317void qlcnic_clear_ilb_mode(struct qlcnic_adapter *adapter);
1318int qlcnic_set_ilb_mode(struct qlcnic_adapter *adapter);
1319void qlcnic_fetch_mac(struct qlcnic_adapter *, u32, u32, u8, u8 *); 1299void qlcnic_fetch_mac(struct qlcnic_adapter *, u32, u32, u8, u8 *);
1320 1300
1321/* Functions from qlcnic_main.c */ 1301/* Functions from qlcnic_main.c */
1322int qlcnic_request_quiscent_mode(struct qlcnic_adapter *adapter);
1323void qlcnic_clear_quiscent_mode(struct qlcnic_adapter *adapter);
1324int qlcnic_reset_context(struct qlcnic_adapter *); 1302int qlcnic_reset_context(struct qlcnic_adapter *);
1325u32 qlcnic_issue_cmd(struct qlcnic_adapter *adapter, 1303u32 qlcnic_issue_cmd(struct qlcnic_adapter *adapter,
1326 u32 pci_fn, u32 version, u32 arg1, u32 arg2, u32 arg3, u32 cmd); 1304 u32 pci_fn, u32 version, u32 arg1, u32 arg2, u32 arg3, u32 cmd);
1327void qlcnic_diag_free_res(struct net_device *netdev, int max_sds_rings); 1305void qlcnic_diag_free_res(struct net_device *netdev, int max_sds_rings);
1328int qlcnic_diag_alloc_res(struct net_device *netdev, int test); 1306int qlcnic_diag_alloc_res(struct net_device *netdev, int test);
1329int qlcnic_check_loopback_buff(unsigned char *data);
1330netdev_tx_t qlcnic_xmit_frame(struct sk_buff *skb, struct net_device *netdev); 1307netdev_tx_t qlcnic_xmit_frame(struct sk_buff *skb, struct net_device *netdev);
1331void qlcnic_process_rcv_ring_diag(struct qlcnic_host_sds_ring *sds_ring);
1332 1308
1333/* Management functions */ 1309/* Management functions */
1334int qlcnic_get_mac_address(struct qlcnic_adapter *, u8*); 1310int qlcnic_get_mac_address(struct qlcnic_adapter *, u8*);
@@ -1377,6 +1353,8 @@ static const struct qlcnic_brdinfo qlcnic_boards[] = {
1377 "3200 Series Single Port 10Gb Intelligent Ethernet Adapter"}, 1353 "3200 Series Single Port 10Gb Intelligent Ethernet Adapter"},
1378 {0x1077, 0x8020, 0x103c, 0x3733, 1354 {0x1077, 0x8020, 0x103c, 0x3733,
1379 "NC523SFP 10Gb 2-port Server Adapter"}, 1355 "NC523SFP 10Gb 2-port Server Adapter"},
1356 {0x1077, 0x8020, 0x103c, 0x3346,
1357 "CN1000Q Dual Port Converged Network Adapter"},
1380 {0x1077, 0x8020, 0x0, 0x0, "cLOM8214 1/10GbE Controller"}, 1358 {0x1077, 0x8020, 0x0, 0x0, "cLOM8214 1/10GbE Controller"},
1381}; 1359};
1382 1360