linux/drivers/net
raghavendra.koushik@neterion.com 303bcb4b67 [PATCH] S2io: Errors found during review
Hi,
This is a patch to incorporate comments from earlier 12 patches.
It also fixes a few issues we found during this time.
Following is a list of changes in this patch. Item 1 incorporates
earlier comments. Issues addressed in items 2 to 4 were discovered
recently.

1. wmb() call in s2io_xmit() replaced with mmiowb().
2. The dtx_control register was earlier programmed incorrectly
   for Xframe II adapter.
3. As suggested by hardware team, after a reset, in case of
   Xframe II adapter, we clear certain spurious errors by
   clearing PCI-X ECC status register, "detected parity error"
   bit in PCI_STATUS register and PCI_STATUS bit in txpic_int register.
4. On IBM PPC platforms, we found that in the Rx buffer replenish
   function, two memory writes(one to the the descriptor length and
   another to the ownership) were getting reordered. This was causing
   the adapter to see the ownership transfered to it before the length
   was updated.

   One solution was to add a wmb() but since this would turnout expensive
   on some platforms if called for every descriptor, we set the ownership
   bit and other fields of '2' to 'N' Rx descriptors followed by a wmb()
   and then set the ownership of first descriptor ('1').

   Here the value 'N' is configurable by making it a module loadable
   parameter (rxsync_frequency).
   (NOTE: This parameter is a power of 2).
5. Bumped up the driver version no. to 2.0.2.1

Signed-off-by: Ravinandan Arakali <ravinandan.arakali@neterion.com>
Signed-off-by: Raghavendra Koushik <raghavendra.koushik@neterion.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
2005-08-11 00:10:46 -04:00
..
appletalk [NET]: move config options out to individual protocols 2005-07-11 21:13:56 -07:00
arcnet [PATCH] make some things static 2005-05-05 16:36:47 -07:00
arm [PATCH] ARM: 2723/2: remove __udivdi3 and __umoddi3 from the kernel 2005-06-29 18:10:54 +01:00
bonding [PATCH] bonding: ALB -- allow slave to use bond's MAC address if its own MAC address conflicts 2005-07-31 00:37:29 -04:00
cris
e1000 [PATCH] e1000: no need for reboot notifier 2005-07-28 08:39:02 -07:00
fec_8xx
hamradio Merge /spare/repo/linux-2.6/ 2005-08-11 00:07:03 -04:00
ibm_emac [PATCH] {PATCH] Fix IBM EMAC driver ioctl bug 2005-05-15 22:44:26 -04:00
irda [PATCH] Cleanup patch for process freezing 2005-06-25 17:10:13 -07:00
ixgb Merge upstream (approx. 2.6.12-git8) into 'janitor' branch of netdev-2.6. 2005-06-26 17:11:03 -04:00
pcmcia [PATCH] pcmcia: fix many device IDs 2005-07-28 08:39:00 -07:00
phy This patch adds a PHY Abstraction Layer to the Linux Kernel, enabling 2005-07-30 19:31:23 -04:00
sk98lin [PATCH] skge build fix 2005-08-01 19:13:59 -07:00
skfp [PATCH] drivers/net/skfp/: cleanups 2005-06-27 00:19:53 -04:00
tokenring [PATCH] tms380tr: move to DMA API 2005-07-31 00:37:29 -04:00
tulip [NET]: Remove gratuitous use of skb->tail in network drivers. 2005-06-28 15:25:31 -07:00
wan [WAN]: drivers/net/wan/: use of time_after macro 2005-07-15 09:59:26 -07:00
wireless [PATCH] orinoco: Sparse fixes 2005-07-31 00:37:30 -04:00
3c59x.c [NET]: Remove gratuitous use of skb->tail in network drivers. 2005-06-28 15:25:31 -07:00
3c501.c
3c501.h
3c503.c [netdrvr] Fix register_netdev() races in older ISA net drivers 2005-05-12 20:11:55 -04:00
3c503.h
3c505.c [PATCH] clean up inline static vs static inline 2005-07-27 16:26:20 -07:00
3c505.h
3c507.c
3c509.c [PATCH] document that 8139TOO supports 8129/8130 2005-06-26 18:33:33 -04:00
3c515.c [NET]: Remove gratuitous use of skb->tail in network drivers. 2005-06-28 15:25:31 -07:00
3c523.c [PATCH] 3c523: needs a license 2005-06-27 00:41:51 -04:00
3c523.h
3c527.c
3c527.h
7990.c
7990.h
8139cp.c [NET]: Remove gratuitous use of skb->tail in network drivers. 2005-06-28 15:25:31 -07:00
8139too.c [PATCH] turn many #if $undefined_string into #ifdef $undefined_string 2005-07-27 16:26:08 -07:00
8390.c [PATCH] m32r: Remove include/asm-m32r/m32102peri.h 2005-06-21 19:07:31 -07:00
8390.h
82596.c [NET]: Remove gratuitous use of skb->tail in network drivers. 2005-06-28 15:25:31 -07:00
a2065.c
a2065.h
ac3200.c [netdrvr] Fix register_netdev() races in older ISA net drivers 2005-05-12 20:11:55 -04:00
acenic_firmware.h
acenic.c drivers/net/: Use the DMA_{64,32}BIT_MASK constants 2005-06-26 18:22:14 -04:00
acenic.h
amd8111e.c [PATCH] turn many #if $undefined_string into #ifdef $undefined_string 2005-07-27 16:26:08 -07:00
amd8111e.h
apne.c
ariadne.c
ariadne.h
at1700.c drivers/net/at1700: remove incorrect comment 2005-06-27 23:23:05 -04:00
atari_bionet.c
atari_pamsnet.c
atarilance.c
atp.c
atp.h
au1000_eth.c [netdrvrs] Use netif_carrier_* instead of IFF_RUNNING 2005-05-12 19:45:25 -04:00
au1000_eth.h
b44.c [ACPI] merge acpi-2.6.12 branch into latest Linux 2.6.13-rc... 2005-07-12 17:21:56 -04:00
b44.h
bmac.c [PATCH] openfirmware: generate device table for userspace 2005-07-06 12:55:20 -07:00
bmac.h
bnx2_fw.h [BNX2]: New Broadcom gigabit network driver. 2005-05-26 13:03:09 -07:00
bnx2.c [BNX2]: New Broadcom gigabit network driver. 2005-05-26 13:03:09 -07:00
bnx2.h [BNX2]: New Broadcom gigabit network driver. 2005-05-26 13:03:09 -07:00
bsd_comp.c
cs89x0.c [PATCH] silence cs89x0 2005-08-01 19:14:01 -07:00
cs89x0.h [PATCH] silence cs89x0 2005-08-01 19:14:01 -07:00
de600.c
de600.h
de620.c
de620.h
declance.c
defxx.c [PATCH] defxx: Use irqreturn_t for the interrupt handler 2005-06-26 18:37:25 -04:00
defxx.h
depca.c
depca.h
dgrs_asstruct.h
dgrs_bcomm.h
dgrs_es4h.h
dgrs_ether.h
dgrs_firmware.c
dgrs_i82596.h
dgrs_plx9060.h
dgrs.c
dgrs.h
dl2k.c [NET]: Remove gratuitous use of skb->tail in network drivers. 2005-06-28 15:25:31 -07:00
dl2k.h
dm9000.c [PATCH] DM9000 network driver bugfix 2005-06-26 18:37:26 -04:00
dm9000.h [PATCH] DM9000 network driver 2005-05-15 18:31:07 -04:00
dummy.c
e100.c Merge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 2005-06-27 22:07:56 -07:00
e2100.c [netdrvr] Fix register_netdev() races in older ISA net drivers 2005-05-12 20:11:55 -04:00
eepro100.c [NET]: Remove gratuitous use of skb->tail in network drivers. 2005-06-28 15:25:31 -07:00
eepro.c [netdrvr] Fix register_netdev() races in older ISA net drivers 2005-05-12 20:11:55 -04:00
eexpress.c [netdrvr] Fix register_netdev() races in older ISA net drivers 2005-05-12 20:11:55 -04:00
eexpress.h
epic100.c [NET]: Remove gratuitous use of skb->tail in network drivers. 2005-06-28 15:25:31 -07:00
eql.c [EQL]: Proper num_slaves decrement 2005-07-21 14:16:54 -07:00
es3210.c [netdrvr] Fix register_netdev() races in older ISA net drivers 2005-05-12 20:11:55 -04:00
eth16i.c [netdrvr] Fix register_netdev() races in older ISA net drivers 2005-05-12 20:11:55 -04:00
ewrk3.c [PATCH] drivers/net/ewrk3.c: remove dead code 2005-06-26 18:29:26 -04:00
ewrk3.h
fealnx.c [NET]: Remove gratuitous use of skb->tail in network drivers. 2005-06-28 15:25:31 -07:00
fec.c
fec.h
forcedeth.c [PATCH] forcedeth: write back original mac address during ifdown 2005-07-31 12:59:57 -04:00
gianfar_ethtool.c [PATCH] gianfar: Add support enhanced TSEC features on the MPC 8548 2005-06-27 00:40:33 -04:00
gianfar_phy.c gianfar: Update Marvell PHY name 2005-06-26 17:58:51 -04:00
gianfar_phy.h
gianfar.c [PATCH] gianfar: Add support enhanced TSEC features on the MPC 8548 2005-06-27 00:40:33 -04:00
gianfar.h [PATCH] gianfar: Add support enhanced TSEC features on the MPC 8548 2005-06-27 00:40:33 -04:00
gt64240eth.h
gt96100eth.c
gt96100eth.h [PATCH] __attribute__ placement fixes 2005-05-01 08:59:09 -07:00
hamachi.c [NET]: Remove gratuitous use of skb->tail in network drivers. 2005-06-28 15:25:31 -07:00
hp100.c drivers/net/: Use the DMA_{64,32}BIT_MASK constants 2005-06-26 18:22:14 -04:00
hp100.h
hp-plus.c [netdrvr] Fix register_netdev() races in older ISA net drivers 2005-05-12 20:11:55 -04:00
hp.c [netdrvr] Fix register_netdev() races in older ISA net drivers 2005-05-12 20:11:55 -04:00
hplance.c
hplance.h
hydra.c
hydra.h
ibmlana.c
ibmlana.h
ibmveth.c
ibmveth.h
ioc3-eth.c
isa-skeleton.c [netdrvr] Fix register_netdev() races in older ISA net drivers 2005-05-12 20:11:55 -04:00
iseries_veth.c [PATCH] iseries_veth: Supress spurious WARN_ON() at module unload 2005-06-09 15:39:52 -07:00
iseries_veth.h
jazzsonic.c
Kconfig This patch adds a PHY Abstraction Layer to the Linux Kernel, enabling 2005-07-30 19:31:23 -04:00
lance.c [NET]: Remove gratuitous use of skb->tail in network drivers. 2005-06-28 15:25:31 -07:00
lasi_82596.c [NET]: Remove gratuitous use of skb->tail in network drivers. 2005-06-28 15:25:31 -07:00
LICENSE.SRC
lne390.c [netdrvr] Fix register_netdev() races in older ISA net drivers 2005-05-12 20:11:55 -04:00
loopback.c [PATCH] loopback: whitespace cleanup 2005-07-31 01:06:11 -04:00
lp486e.c
mac89x0.c
mac8390.c
mace.c [PATCH] openfirmware: generate device table for userspace 2005-07-06 12:55:20 -07:00
mace.h
macmace.c
macsonic.c
Makefile This patch adds a PHY Abstraction Layer to the Linux Kernel, enabling 2005-07-30 19:31:23 -04:00
meth.c
meth.h
mii.c
mv643xx_eth.c [PATCH] ppc iomem annotations: mv643xx_eth 2005-04-25 07:55:58 -07:00
mv643xx_eth.h
mvme147.c
myri_code.h [PATCH] drivers/net/myri_code.h cleanup 2005-05-12 22:22:36 -04:00
myri_sbus.c [NET]: __be'ify *_type_trans() 2005-07-12 12:08:43 -07:00
myri_sbus.h
natsemi.c [NET]: Remove gratuitous use of skb->tail in network drivers. 2005-06-28 15:25:31 -07:00
ne2.c [netdrvr] Fix register_netdev() races in older ISA net drivers 2005-05-12 20:11:55 -04:00
ne2k-pci.c [ACPI] S3 Suspend to RAM: fix driver suspend/resume methods 2005-07-11 23:23:46 -04:00
ne3210.c
ne-h8300.c [netdrvr] Fix register_netdev() races in older ISA net drivers 2005-05-12 20:11:55 -04:00
ne.c [PATCH] turn many #if $undefined_string into #ifdef $undefined_string 2005-07-27 16:26:08 -07:00
netconsole.c
ni52.c
ni52.h
ni65.c
ni65.h
ni5010.c
ni5010.h
ns83820.c [NET]: Remove gratuitous use of skb->tail in network drivers. 2005-06-28 15:25:31 -07:00
oaknet.c
pci-skeleton.c [PATCH] drivers/net/pci-skeleton.c: MODULE_PARM -> module_param 2005-07-31 00:54:14 -04:00
pcnet32.c [NET]: Remove gratuitous use of skb->tail in network drivers. 2005-06-28 15:25:31 -07:00
plip.c [PATCH] clean up inline static vs static inline 2005-07-27 16:26:20 -07:00
ppp_async.c [NET]: Transform skb_queue_len() binary tests into skb_queue_empty() 2005-07-08 14:57:23 -07:00
ppp_deflate.c [PPP]: remove redundant NULL pointer checks before kfree & vfree 2005-05-03 14:38:09 -07:00
ppp_generic.c [NET]: Transform skb_queue_len() binary tests into skb_queue_empty() 2005-07-08 14:57:23 -07:00
ppp_synctty.c [NET]: Transform skb_queue_len() binary tests into skb_queue_empty() 2005-07-08 14:57:23 -07:00
pppoe.c
pppox.c
r8169.c [NET]: Remove gratuitous use of skb->tail in network drivers. 2005-06-28 15:25:31 -07:00
rrunner.c
rrunner.h
s2io-regs.h [PATCH] S2io: New link handling scheme for Xframe II 2005-08-11 00:10:45 -04:00
s2io.c [PATCH] S2io: Errors found during review 2005-08-11 00:10:46 -04:00
s2io.h [PATCH] S2io: Errors found during review 2005-08-11 00:10:46 -04:00
saa9730.c
saa9730.h
sb1000.c [PATCH] net/sb1000: replace nicedelay() with ssleep() 2005-06-26 23:47:57 -04:00
sb1250-mac.c [NET]: Remove gratuitous use of skb->tail in network drivers. 2005-06-28 15:25:31 -07:00
seeq8005.c
seeq8005.h
sgiseeq.c
sgiseeq.h
shaper.c [SHAPER]: Switch to spinlocks. 2005-07-05 15:03:46 -07:00
sis900.c [NET]: Remove gratuitous use of skb->tail in network drivers. 2005-06-28 15:25:31 -07:00
sis900.h
sk_mca.c
sk_mca.h
skge.c [PATCH] skge: version 0.8 2005-07-31 00:40:54 -04:00
skge.h [PATCH] skge: led toggle cleanup 2005-07-31 00:40:54 -04:00
slhc.c
slip.c [NET]: drivers/net/slip.c needs linux/delay.h 2005-06-28 16:27:32 -07:00
slip.h
smc91x.c [PATCH] smc91x needs settable IRQ trigger type 2005-06-27 23:08:09 -04:00
smc91x.h [PATCH] Fix OMAP specific typo in smc91x.h 2005-07-31 00:55:11 -04:00
smc9194.c
smc9194.h
smc-mca.c [PATCH] drivers/net/smc-mca.c: cleanups 2005-05-12 22:24:39 -04:00
smc-ultra32.c
smc-ultra.c [netdrvr] Fix register_netdev() races in older ISA net drivers 2005-05-12 20:11:55 -04:00
sonic.c
sonic.h
Space.c [PATCH] tms380tr: move to DMA API 2005-07-31 00:37:29 -04:00
starfire_firmware.h [netdrvr starfire] Add GPL'd firmware, remove compat code 2005-05-12 20:16:24 -04:00
starfire_firmware.pl
starfire.c [NET]: Remove gratuitous use of skb->tail in network drivers. 2005-06-28 15:25:31 -07:00
stnic.c
sun3_82586.c
sun3_82586.h
sun3lance.c
sunbmac.c [SPARC]: module version cleanups 2005-04-24 20:35:20 -07:00
sunbmac.h
sundance.c [NET]: Remove gratuitous use of skb->tail in network drivers. 2005-06-28 15:25:31 -07:00
sungem_phy.c [PATCH] ppc64: Add new PHY to sungem 2005-07-07 18:23:36 -07:00
sungem_phy.h [PATCH] ppc64: Add new PHY to sungem 2005-07-07 18:23:36 -07:00
sungem.c [PATCH] ppc64: Add new PHY to sungem 2005-07-07 18:23:36 -07:00
sungem.h
sunhme.c [SPARC]: module version cleanups 2005-04-24 20:35:20 -07:00
sunhme.h
sunlance.c [SPARC]: module version cleanups 2005-04-24 20:35:20 -07:00
sunqe.c [SPARC]: module version cleanups 2005-04-24 20:35:20 -07:00
sunqe.h
tc35815.c
tg3.c [TG3]: Save initial PCI state before registering the netdevice. 2005-08-06 06:35:48 -07:00
tg3.h [TG3]: add 5780 fiber support 2005-07-25 12:33:22 -07:00
tlan.c drivers/net/: Use the DMA_{64,32}BIT_MASK constants 2005-06-26 18:22:14 -04:00
tlan.h
tun.c [NET]: Transform skb_queue_len() binary tests into skb_queue_empty() 2005-07-08 14:57:23 -07:00
typhoon-firmware.h
typhoon.c [PATCH] pm: more u32 vs. pm_message_t fixes 2005-07-07 18:23:43 -07:00
typhoon.h
via-rhine.c Merge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 2005-06-28 21:24:32 -07:00
via-velocity.c [NET]: Remove gratuitous use of skb->tail in network drivers. 2005-06-28 15:25:31 -07:00
via-velocity.h [PATCH] clean up inline static vs static inline 2005-07-27 16:26:20 -07:00
wd.c [netdrvr] Fix register_netdev() races in older ISA net drivers 2005-05-12 20:11:55 -04:00
yellowfin.c [NET]: Remove gratuitous use of skb->tail in network drivers. 2005-06-28 15:25:31 -07:00
znet.c
zorro8390.c