aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@woody.linux-foundation.org>2007-02-27 10:39:04 -0500
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-02-27 10:39:04 -0500
commitce27002078e1e65c64395c0a3348786c974306cf (patch)
tree630eabb32368ee0d6ecceae36c550b832456df01
parent6c1586bc9356855159e5845c6e788aa6db333cb9 (diff)
parentf8dfdd5cab482a2ce4a8e2375e1512aa4829c653 (diff)
Merge branch 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6
* 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6: (52 commits) netxen: do_rom_fast_write error handling natsemi: Fix detection of vanilla natsemi cards net: remove a collection of unneeded #undef REALLY_SLOW_IO stuff chelsio: Fix non-NAPI compile cxgb3 - Feed Rx free list with pages cxgb3 - Recovery from HW starvation of response queue entries. cxgb3 - Unmap offload packets when they are freed cxgb3 - FW version update cxgb3 - private ioctl cleanup cxgb3 - manage sysfs attributes per port S2IO: Restoring the mac address in s2io_reset S2IO: Avoid printing the Enhanced statistics for Xframe I card. S2IO: Making LED off during LINK_DOWN notification. S2IO: Added a loadable parameter to enable or disable vlan stripping in frame. S2IO: Optimized the delay to wait for command completion S2IO: Fixes for MSI and MSIX qla3xxx: Bumping driver version number qla3xxx: Kernic Panic on pSeries under stress conditions qla3xxx: bugfix tx reset after stress conditions. qla3xxx: Check return code from pci_map_single() in ql_release_to_lrg_buf_free_list(), ql_populate_free_queue(), ql_alloc_large_buffers(), and ql3xxx_send() ...
-rw-r--r--MAINTAINERS4
-rw-r--r--drivers/net/Kconfig2
-rw-r--r--drivers/net/chelsio/sge.c1
-rw-r--r--drivers/net/cxgb3/adapter.h11
-rw-r--r--drivers/net/cxgb3/cxgb3_ioctl.h33
-rw-r--r--drivers/net/cxgb3/cxgb3_main.c69
-rw-r--r--drivers/net/cxgb3/sge.c390
-rw-r--r--drivers/net/cxgb3/t3_hw.c6
-rw-r--r--drivers/net/cxgb3/version.h2
-rw-r--r--drivers/net/de600.c6
-rw-r--r--drivers/net/forcedeth.c20
-rw-r--r--drivers/net/mv643xx_eth.c6
-rw-r--r--drivers/net/mv643xx_eth.h11
-rw-r--r--drivers/net/myri10ge/myri10ge.c27
-rw-r--r--drivers/net/natsemi.c2
-rw-r--r--drivers/net/netxen/netxen_nic_hw.c9
-rw-r--r--drivers/net/netxen/netxen_nic_init.c5
-rw-r--r--drivers/net/netxen/netxen_nic_main.c6
-rw-r--r--drivers/net/ni52.c2
-rwxr-xr-xdrivers/net/qla3xxx.c492
-rwxr-xr-xdrivers/net/qla3xxx.h11
-rw-r--r--drivers/net/s2io-regs.h1
-rw-r--r--drivers/net/s2io.c299
-rw-r--r--drivers/net/s2io.h10
-rw-r--r--drivers/net/sgiseeq.c11
-rw-r--r--drivers/net/skfp/cfm.c2
-rw-r--r--drivers/net/skge.c47
-rw-r--r--drivers/net/skge.h3
-rw-r--r--drivers/net/spider_net.c554
-rw-r--r--drivers/net/spider_net.h34
-rw-r--r--drivers/net/sun3_82586.c2
-rw-r--r--drivers/net/sungem_phy.c389
-rw-r--r--drivers/net/sungem_phy.h10
-rw-r--r--drivers/net/tc35815.c10
-rw-r--r--drivers/net/ucc_geth.c4
-rw-r--r--drivers/net/wan/cosa.c1
-rw-r--r--drivers/net/wireless/wl3501_cs.c1
37 files changed, 1679 insertions, 814 deletions
diff --git a/MAINTAINERS b/MAINTAINERS
index 06d2087be6bf..35e0a648422d 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -3177,8 +3177,8 @@ L: linux-kernel@vger.kernel.org ?
3177S: Supported 3177S: Supported
3178 3178
3179SPIDERNET NETWORK DRIVER for CELL 3179SPIDERNET NETWORK DRIVER for CELL
3180P: Jim Lewis 3180P: Linas Vepstas
3181M: jim@jklewis.com 3181M: linas@austin.ibm.com
3182L: netdev@vger.kernel.org 3182L: netdev@vger.kernel.org
3183S: Supported 3183S: Supported
3184 3184
diff --git a/drivers/net/Kconfig b/drivers/net/Kconfig
index 38ac6796fc48..5ff0922e628c 100644
--- a/drivers/net/Kconfig
+++ b/drivers/net/Kconfig
@@ -2245,7 +2245,7 @@ config BNX2
2245 2245
2246config SPIDER_NET 2246config SPIDER_NET
2247 tristate "Spider Gigabit Ethernet driver" 2247 tristate "Spider Gigabit Ethernet driver"
2248 depends on PCI && PPC_IBM_CELL_BLADE 2248 depends on PCI && (PPC_IBM_CELL_BLADE || PPC_CELLEB)
2249 select FW_LOADER 2249 select FW_LOADER
2250 help 2250 help
2251 This driver supports the Gigabit Ethernet chips present on the 2251 This driver supports the Gigabit Ethernet chips present on the
diff --git a/drivers/net/chelsio/sge.c b/drivers/net/chelsio/sge.c
index 89a682702fa9..326d4a665123 100644
--- a/drivers/net/chelsio/sge.c
+++ b/drivers/net/chelsio/sge.c
@@ -1696,6 +1696,7 @@ irqreturn_t t1_interrupt(int irq, void *cookie)
1696{ 1696{
1697 int work_done; 1697 int work_done;
1698 struct adapter *adapter = cookie; 1698 struct adapter *adapter = cookie;
1699 struct respQ *Q = &adapter->sge->respQ;
1699 1700
1700 spin_lock(&adapter->async_lock); 1701 spin_lock(&adapter->async_lock);
1701 1702
diff --git a/drivers/net/cxgb3/adapter.h b/drivers/net/cxgb3/adapter.h
index 5c97a64451ce..80c3d8f268a7 100644
--- a/drivers/net/cxgb3/adapter.h
+++ b/drivers/net/cxgb3/adapter.h
@@ -74,6 +74,11 @@ enum { /* adapter flags */
74struct rx_desc; 74struct rx_desc;
75struct rx_sw_desc; 75struct rx_sw_desc;
76 76
77struct sge_fl_page {
78 struct skb_frag_struct frag;
79 unsigned char *va;
80};
81
77struct sge_fl { /* SGE per free-buffer list state */ 82struct sge_fl { /* SGE per free-buffer list state */
78 unsigned int buf_size; /* size of each Rx buffer */ 83 unsigned int buf_size; /* size of each Rx buffer */
79 unsigned int credits; /* # of available Rx buffers */ 84 unsigned int credits; /* # of available Rx buffers */
@@ -81,11 +86,13 @@ struct sge_fl { /* SGE per free-buffer list state */
81 unsigned int cidx; /* consumer index */ 86 unsigned int cidx; /* consumer index */
82 unsigned int pidx; /* producer index */ 87 unsigned int pidx; /* producer index */
83 unsigned int gen; /* free list generation */ 88 unsigned int gen; /* free list generation */
89 unsigned int cntxt_id; /* SGE context id for the free list */
90 struct sge_fl_page page;
84 struct rx_desc *desc; /* address of HW Rx descriptor ring */ 91 struct rx_desc *desc; /* address of HW Rx descriptor ring */
85 struct rx_sw_desc *sdesc; /* address of SW Rx descriptor ring */ 92 struct rx_sw_desc *sdesc; /* address of SW Rx descriptor ring */
86 dma_addr_t phys_addr; /* physical address of HW ring start */ 93 dma_addr_t phys_addr; /* physical address of HW ring start */
87 unsigned int cntxt_id; /* SGE context id for the free list */
88 unsigned long empty; /* # of times queue ran out of buffers */ 94 unsigned long empty; /* # of times queue ran out of buffers */
95 unsigned long alloc_failed; /* # of times buffer allocation failed */
89}; 96};
90 97
91/* 98/*
@@ -121,6 +128,8 @@ struct sge_rspq { /* state for an SGE response queue */
121 unsigned long empty; /* # of times queue ran out of credits */ 128 unsigned long empty; /* # of times queue ran out of credits */
122 unsigned long nomem; /* # of responses deferred due to no mem */ 129 unsigned long nomem; /* # of responses deferred due to no mem */
123 unsigned long unhandled_irqs; /* # of spurious intrs */ 130 unsigned long unhandled_irqs; /* # of spurious intrs */
131 unsigned long starved;
132 unsigned long restarted;
124}; 133};
125 134
126struct tx_desc; 135struct tx_desc;
diff --git a/drivers/net/cxgb3/cxgb3_ioctl.h b/drivers/net/cxgb3/cxgb3_ioctl.h
index a94281861a66..0a82fcddf2d8 100644
--- a/drivers/net/cxgb3/cxgb3_ioctl.h
+++ b/drivers/net/cxgb3/cxgb3_ioctl.h
@@ -36,28 +36,17 @@
36 * Ioctl commands specific to this driver. 36 * Ioctl commands specific to this driver.
37 */ 37 */
38enum { 38enum {
39 CHELSIO_SETREG = 1024, 39 CHELSIO_GETMTUTAB = 1029,
40 CHELSIO_GETREG, 40 CHELSIO_SETMTUTAB = 1030,
41 CHELSIO_SETTPI, 41 CHELSIO_SET_PM = 1032,
42 CHELSIO_GETTPI, 42 CHELSIO_GET_PM = 1033,
43 CHELSIO_GETMTUTAB, 43 CHELSIO_GET_MEM = 1038,
44 CHELSIO_SETMTUTAB, 44 CHELSIO_LOAD_FW = 1041,
45 CHELSIO_GETMTU, 45 CHELSIO_SET_TRACE_FILTER = 1044,
46 CHELSIO_SET_PM, 46 CHELSIO_SET_QSET_PARAMS = 1045,
47 CHELSIO_GET_PM, 47 CHELSIO_GET_QSET_PARAMS = 1046,
48 CHELSIO_GET_TCAM, 48 CHELSIO_SET_QSET_NUM = 1047,
49 CHELSIO_SET_TCAM, 49 CHELSIO_GET_QSET_NUM = 1048,
50 CHELSIO_GET_TCB,
51 CHELSIO_GET_MEM,
52 CHELSIO_LOAD_FW,
53 CHELSIO_GET_PROTO,
54 CHELSIO_SET_PROTO,
55 CHELSIO_SET_TRACE_FILTER,
56 CHELSIO_SET_QSET_PARAMS,
57 CHELSIO_GET_QSET_PARAMS,
58 CHELSIO_SET_QSET_NUM,
59 CHELSIO_GET_QSET_NUM,
60 CHELSIO_SET_PKTSCHED,
61}; 50};
62 51
63struct ch_reg { 52struct ch_reg {
diff --git a/drivers/net/cxgb3/cxgb3_main.c b/drivers/net/cxgb3/cxgb3_main.c
index 43583ed655ab..7ff834e45d6b 100644
--- a/drivers/net/cxgb3/cxgb3_main.c
+++ b/drivers/net/cxgb3/cxgb3_main.c
@@ -434,27 +434,25 @@ static int setup_sge_qsets(struct adapter *adap)
434 434