diff options
| author | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-02-27 10:39:04 -0500 |
|---|---|---|
| committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-02-27 10:39:04 -0500 |
| commit | ce27002078e1e65c64395c0a3348786c974306cf (patch) | |
| tree | 630eabb32368ee0d6ecceae36c550b832456df01 | |
| parent | 6c1586bc9356855159e5845c6e788aa6db333cb9 (diff) | |
| parent | f8dfdd5cab482a2ce4a8e2375e1512aa4829c653 (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()
...
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 ? | |||
| 3177 | S: Supported | 3177 | S: Supported |
| 3178 | 3178 | ||
| 3179 | SPIDERNET NETWORK DRIVER for CELL | 3179 | SPIDERNET NETWORK DRIVER for CELL |
| 3180 | P: Jim Lewis | 3180 | P: Linas Vepstas |
| 3181 | M: jim@jklewis.com | 3181 | M: linas@austin.ibm.com |
| 3182 | L: netdev@vger.kernel.org | 3182 | L: netdev@vger.kernel.org |
| 3183 | S: Supported | 3183 | S: 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 | ||
| 2246 | config SPIDER_NET | 2246 | config 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 */ | |||
| 74 | struct rx_desc; | 74 | struct rx_desc; |
| 75 | struct rx_sw_desc; | 75 | struct rx_sw_desc; |
| 76 | 76 | ||
| 77 | struct sge_fl_page { | ||
| 78 | struct skb_frag_struct frag; | ||
| 79 | unsigned char *va; | ||
| 80 | }; | ||
| 81 | |||
| 77 | struct sge_fl { /* SGE per free-buffer list state */ | 82 | struct 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 | ||
| 126 | struct tx_desc; | 135 | struct 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 | */ |
| 38 | enum { | 38 | enum { |
| 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 | ||
| 63 | struct ch_reg { | 52 | struct 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 | ||
