aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/ibmveth.h
diff options
context:
space:
mode:
authorGlenn Elliott <gelliott@cs.unc.edu>2012-03-04 19:47:13 -0500
committerGlenn Elliott <gelliott@cs.unc.edu>2012-03-04 19:47:13 -0500
commitc71c03bda1e86c9d5198c5d83f712e695c4f2a1e (patch)
treeecb166cb3e2b7e2adb3b5e292245fefd23381ac8 /drivers/net/ibmveth.h
parentea53c912f8a86a8567697115b6a0d8152beee5c8 (diff)
parent6a00f206debf8a5c8899055726ad127dbeeed098 (diff)
Merge branch 'mpi-master' into wip-k-fmlpwip-k-fmlp
Conflicts: litmus/sched_cedf.c
Diffstat (limited to 'drivers/net/ibmveth.h')
-rw-r--r--drivers/net/ibmveth.h59
1 files changed, 31 insertions, 28 deletions
diff --git a/drivers/net/ibmveth.h b/drivers/net/ibmveth.h
index ec76ace66c6b..43a794fab9ff 100644
--- a/drivers/net/ibmveth.h
+++ b/drivers/net/ibmveth.h
@@ -1,26 +1,28 @@
1/**************************************************************************/ 1/*
2/* */ 2 * IBM Power Virtual Ethernet Device Driver
3/* IBM eServer i/[Series Virtual Ethernet Device Driver */ 3 *
4/* Copyright (C) 2003 IBM Corp. */ 4 * This program is free software; you can redistribute it and/or modify
5/* Dave Larson (larson1@us.ibm.com) */ 5 * it under the terms of the GNU General Public License as published by
6/* Santiago Leon (santil@us.ibm.com) */ 6 * the Free Software Foundation; either version 2 of the License, or
7/* */ 7 * (at your option) any later version.
8/* This program is free software; you can redistribute it and/or modify */ 8 *
9/* it under the terms of the GNU General Public License as published by */ 9 * This program is distributed in the hope that it will be useful,
10/* the Free Software Foundation; either version 2 of the License, or */ 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11/* (at your option) any later version. */ 11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12/* */ 12 * GNU General Public License for more details.
13/* This program is distributed in the hope that it will be useful, */ 13 *
14/* but WITHOUT ANY WARRANTY; without even the implied warranty of */ 14 * You should have received a copy of the GNU General Public License
15/* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the */ 15 * along with this program; if not, write to the Free Software
16/* GNU General Public License for more details. */ 16 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
17/* */ 17 *
18/* You should have received a copy of the GNU General Public License */ 18 * Copyright (C) IBM Corporation, 2003, 2010
19/* along with this program; if not, write to the Free Software */ 19 *
20/* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 */ 20 * Authors: Dave Larson <larson1@us.ibm.com>
21/* USA */ 21 * Santiago Leon <santil@linux.vnet.ibm.com>
22/* */ 22 * Brian King <brking@linux.vnet.ibm.com>
23/**************************************************************************/ 23 * Robert Jennings <rcj@linux.vnet.ibm.com>
24 * Anton Blanchard <anton@au.ibm.com>
25 */
24 26
25#ifndef _IBMVETH_H 27#ifndef _IBMVETH_H
26#define _IBMVETH_H 28#define _IBMVETH_H
@@ -92,17 +94,17 @@ static inline long h_illan_attributes(unsigned long unit_address,
92#define h_change_logical_lan_mac(ua, mac) \ 94#define h_change_logical_lan_mac(ua, mac) \
93 plpar_hcall_norets(H_CHANGE_LOGICAL_LAN_MAC, ua, mac) 95 plpar_hcall_norets(H_CHANGE_LOGICAL_LAN_MAC, ua, mac)
94 96
95#define IbmVethNumBufferPools 5 97#define IBMVETH_NUM_BUFF_POOLS 5
96#define IBMVETH_IO_ENTITLEMENT_DEFAULT 4243456 /* MTU of 1500 needs 4.2Mb */ 98#define IBMVETH_IO_ENTITLEMENT_DEFAULT 4243456 /* MTU of 1500 needs 4.2Mb */
97#define IBMVETH_BUFF_OH 22 /* Overhead: 14 ethernet header + 8 opaque handle */ 99#define IBMVETH_BUFF_OH 22 /* Overhead: 14 ethernet header + 8 opaque handle */
98#define IBMVETH_MAX_MTU 68 100#define IBMVETH_MIN_MTU 68
99#define IBMVETH_MAX_POOL_COUNT 4096 101#define IBMVETH_MAX_POOL_COUNT 4096
100#define IBMVETH_BUFF_LIST_SIZE 4096 102#define IBMVETH_BUFF_LIST_SIZE 4096
101#define IBMVETH_FILT_LIST_SIZE 4096 103#define IBMVETH_FILT_LIST_SIZE 4096
102#define IBMVETH_MAX_BUF_SIZE (1024 * 128) 104#define IBMVETH_MAX_BUF_SIZE (1024 * 128)
103 105
104static int pool_size[] = { 512, 1024 * 2, 1024 * 16, 1024 * 32, 1024 * 64 }; 106static int pool_size[] = { 512, 1024 * 2, 1024 * 16, 1024 * 32, 1024 * 64 };
105static int pool_count[] = { 256, 768, 256, 256, 256 }; 107static int pool_count[] = { 256, 512, 256, 256, 256 };
106static int pool_active[] = { 1, 1, 0, 0, 0}; 108static int pool_active[] = { 1, 1, 0, 0, 0};
107 109
108#define IBM_VETH_INVALID_MAP ((u16)0xffff) 110#define IBM_VETH_INVALID_MAP ((u16)0xffff)
@@ -142,13 +144,15 @@ struct ibmveth_adapter {
142 void * filter_list_addr; 144 void * filter_list_addr;
143 dma_addr_t buffer_list_dma; 145 dma_addr_t buffer_list_dma;
144 dma_addr_t filter_list_dma; 146 dma_addr_t filter_list_dma;
145 struct ibmveth_buff_pool rx_buff_pool[IbmVethNumBufferPools]; 147 struct ibmveth_buff_pool rx_buff_pool[IBMVETH_NUM_BUFF_POOLS];
146 struct ibmveth_rx_q rx_queue; 148 struct ibmveth_rx_q rx_queue;
147 int pool_config; 149 int pool_config;
148 int rx_csum; 150 int rx_csum;
149 void *bounce_buffer; 151 void *bounce_buffer;
150 dma_addr_t bounce_buffer_dma; 152 dma_addr_t bounce_buffer_dma;
151 153
154 u64 fw_ipv6_csum_support;
155 u64 fw_ipv4_csum_support;
152 /* adapter specific stats */ 156 /* adapter specific stats */
153 u64 replenish_task_cycles; 157 u64 replenish_task_cycles;
154 u64 replenish_no_mem; 158 u64 replenish_no_mem;
@@ -158,7 +162,6 @@ struct ibmveth_adapter {
158 u64 rx_no_buffer; 162 u64 rx_no_buffer;
159 u64 tx_map_failed; 163 u64 tx_map_failed;
160 u64 tx_send_failed; 164 u64 tx_send_failed;
161 spinlock_t stats_lock;
162}; 165};
163 166
164struct ibmveth_buf_desc_fields { 167struct ibmveth_buf_desc_fields {