1
linux/drivers/net
Michael Chan 72f2afb8a6 [TG3]: Add DMA address workaround
Add DMA workaround for chips that do not support full 64-bit DMA
addresses.

5714, 5715, and 5780 chips only support DMA addresses less than 40
bits. On 64-bit systems with IOMMU, set the dma_mask to 40-bit so
that pci_map_xxx() calls will map the DMA address below 40 bits if
necessary. On 64-bit systems without IOMMU, set the dma_mask to
64-bit and check for DMA addresses exceeding the limit in
tg3_start_xmit().

5788 only supports 32-bit DMA so need to set the mask appropriately
also.

Thanks to Chris Elmquist at SGI for reporting and helping to debug
the problem on 5714.

Thanks to David Miller for explaining the HIGHMEM and DMA stuff.

Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2006-03-06 19:28:35 -08:00
..
appletalk [APPLETALK]: warning fix 2006-02-13 15:53:41 -08:00
arcnet [PATCH] Remove unnecessary check_region references in comments 2005-09-13 08:22:29 -07:00
arm [ARM] Update am79c961 to use struct platform_driver 2006-01-09 13:59:36 +00:00
bonding [PATCH] bonding: fix a locking bug in bond_release 2006-02-17 16:16:39 -05:00
chelsio [PATCH] chelsio: fix kmalloc failure in t1_espi_create 2006-03-06 14:38:00 -05:00
cris [PATCH] cris v10 eth: use ethtool_ops 2005-11-09 01:10:09 -05:00
e1000 [PATCH] e1000: revert to single descriptor for legacy receive path 2006-02-28 20:24:07 -08:00
fec_8xx [PATCH] fec_8xx: make CONFIG_FEC_8XX depend on CONFIG_8xx 2005-11-18 13:51:34 -05:00
fs_enet [PATCH] fs_enet build fix 2005-11-10 11:25:02 +11:00
hamradio [PATCH] remove bogus asm/bug.h includes. 2006-02-07 20:56:35 -05:00
ibm_emac [PATCH] PPC44x EMAC driver: disable TX status deferral in half-duplex mode 2006-01-09 10:34:25 -05:00
irda [IRDA]: irda-usb bug fixes 2006-02-19 22:28:25 -08:00
ixgb [PATCH] drivers/net/ixgb/: make some code static 2005-11-05 21:00:01 -05:00
ixp2000 [PATCH] ixp2000: change netif_schedule_test to __netif_schedule_prep 2005-12-03 20:29:03 -05:00
pcmcia [PATCH] pcmcia: add id for AMB8110 PC Card 2006-03-01 11:15:45 +01:00
phy [PATCH] phy: Added a macro to represent the string format used to match a phy device 2006-01-12 16:31:52 -05:00
sk98lin spelling: s/usefull/useful/ 2006-01-10 00:08:17 +01:00
skfp [PATCH] sparse cleanups: NULL pointers, C99 struct init. 2005-10-30 17:37:29 -08:00
tokenring [PATCH] smctr warning fix 2006-02-17 16:16:21 -05:00
tulip [PATCH] uli526x warning fix 2006-02-07 02:53:11 -05:00
wan [PATCH] bogus asm/delay.h includes 2006-02-07 20:56:41 -05:00
wireless [PATCH] pcmcia: avoid binding hostap_cs to Orinoco cards 2006-03-01 11:12:00 +01:00
3c59x.c [PATCH] 3c59x: collision statistic fix 2006-02-03 08:32:02 -08:00
3c501.c
3c501.h
3c503.c [PATCH] fix a few "warning: 'cleanup_card' defined but not used" 2006-01-09 10:54:48 -05:00
3c503.h
3c505.c
3c505.h
3c507.c
3c509.c [PATCH] move pm_register/etc. to CONFIG_PM_LEGACY, pm_legacy.h 2005-11-13 18:14:10 -08:00
3c515.c
3c523.c
3c523.h
3c527.c
3c527.h [PATCH] Eliminate __attribute__ ((packed)) warnings for gcc-4.1 2006-01-08 20:14:07 -08:00
7990.c
7990.h
8139cp.c 8139cp: fix broken suspend/resume 2006-02-27 23:15:06 +01:00
8139too.c 8139too: fix a TX timeout watchdog thread against NAPI softirq race 2006-02-01 22:04:37 +01:00
8390.c [PATCH] 8390 Tx fix for non i386 machines 2005-09-23 05:18:45 -04:00
8390.h
82596.c
a2065.c
a2065.h
ac3200.c [PATCH] fix a few "warning: 'cleanup_card' defined but not used" 2006-01-09 10:54:48 -05:00
acenic_firmware.h
acenic.c [PATCH] acenic: fix checking of read_eeprom_byte() return values 2006-01-26 22:09:40 -05:00
acenic.h
amd8111e.c [git] change permissions on drivers/net/amd8111e.[ch] to 0644, 2005-10-28 16:43:40 -04:00
amd8111e.h [git] change permissions on drivers/net/amd8111e.[ch] to 0644, 2005-10-28 16:43:40 -04:00
apne.c
ariadne.c
ariadne.h
at1700.c
atari_bionet.c [PATCH] timer initialization cleanup: DEFINE_TIMER 2005-09-09 14:03:48 -07:00
atari_pamsnet.c [PATCH] timer initialization cleanup: DEFINE_TIMER 2005-09-09 14:03:48 -07:00
atarilance.c [PATCH] lvalues abuse in lance 2005-09-06 22:47:00 -04:00
atp.c
atp.h
au1000_eth.c [PATCH] au1000_eth: Include <linux/config.h> 2005-11-18 13:29:41 -05:00
au1000_eth.h
b44.c [PATCH] b44: fix laptop carrier detect 2006-01-26 22:10:39 -05:00
b44.h [PATCH] b44: replace B44_FLAG_INIT_COMPLETE with netif_running() 2005-11-09 01:02:41 -05:00
bmac.c Merge ../linux-2.6 by hand 2005-10-31 13:37:12 +11:00
bmac.h
bnx2_fw.h [BNX2]: Update version and copyright year 2006-01-23 16:14:05 -08:00
bnx2.c [BNX2]: Update version and copyright year 2006-01-23 16:14:05 -08:00
bnx2.h [BNX2]: Update version and copyright year 2006-01-23 16:14:05 -08:00
bsd_comp.c [PATCH] vfree and kfree cleanup in drivers/ 2005-09-10 10:06:30 -07:00
cassini.c [CASSINI]: dont touch page_count 2006-01-18 14:05:16 -08:00
cassini.h [NET]: Add Sun Cassini driver. 2005-09-27 15:24:13 -07:00
cs89x0.c [PATCH] cs89x0: credit Dmitry Pervushin 2006-01-16 23:15:32 -08:00
cs89x0.h [PATCH] cs89x0: cleanly implement ixdp2x01 and pnx0501 support 2006-01-08 20:12:45 -08:00
de600.c
de600.h
de620.c
de620.h
declance.c [PATCH] declance: Use physical addresses at the interface level. 2005-10-18 18:03:48 -04:00
defxx.c
defxx.h
depca.c [DRIVER MODEL] Convert platform drivers to use struct platform_driver 2005-11-09 22:32:44 +00:00
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 [PATCH] net: Fix compiler-error on dgrs.c when !CONFIG_PCI 2005-11-22 09:13:41 -08:00
dgrs.h
dl2k.c
dl2k.h
dm9000.c Merge master.kernel.org:/home/rmk/linux-2.6-drvmodel 2005-11-11 09:24:26 -08:00
dm9000.h
dummy.c
e100.c e100: remove init_hw call to fix panic 2006-02-07 01:50:45 -05:00
e2100.c [PATCH] fix a few "warning: 'cleanup_card' defined but not used" 2006-01-09 10:54:48 -05:00
eepro100.c [netdrvr eepro100] check for skb==NULL before calling rx_align(skb) 2005-08-19 03:52:49 -04:00
eepro.c [PATCH] remove some more check_region stuff 2005-10-30 17:37:18 -08:00
eexpress.c
eexpress.h
epic100.c [PATCH] epic100: fix counting of work_done in epic_poll 2005-10-18 22:26:01 -04:00
eql.c
es3210.c [PATCH] fix a few "warning: 'cleanup_card' defined but not used" 2006-01-09 10:54:48 -05:00
eth16i.c
ewrk3.c
ewrk3.h
fealnx.c
fec.c [PATCH] m68knommu: FEC ethernet support for the ColdFire 5208 2005-11-07 08:00:47 -08:00
fec.h [PATCH] m68knommu: FEC ethernet header support for the ColdFire 5208 2005-11-07 08:00:47 -08:00
forcedeth.c [PATCH] forcedeth: TSO fix for large buffers 2006-01-09 10:54:48 -05:00
gianfar_ethtool.c [PATCH] gianfar: Fix sparse warnings 2006-02-07 02:04:33 -05:00
gianfar_mii.c [PATCH] gianfar: Fix sparse warnings 2006-02-07 02:04:33 -05:00
gianfar_mii.h [PATCH] Gianfar update and sysfs support 2005-11-18 13:31:26 -05:00
gianfar_sysfs.c drivers/net/gianfar_sysfs.c: update email address of Kumar Gala 2006-01-11 02:00:10 +01:00
gianfar.c [PATCH] gianfar: Fix sparse warnings 2006-02-07 02:04:33 -05:00
gianfar.h [PATCH] gianfar: Fix sparse warnings 2006-02-07 02:04:33 -05:00
gt64240eth.h
gt96100eth.c [PATCH] gt96100eth.c: Don't concatenate __FUNCTION__ with strings. 2005-11-11 08:32:47 -05:00
gt96100eth.h
hamachi.c [PATCH] -Wundef fixes (hamachi) 2005-09-07 17:17:33 -07:00
hp100.c spelling: s/retreive/retrieve/ 2006-01-10 00:10:13 +01:00
hp100.h
hp-plus.c [PATCH] fix a few "warning: 'cleanup_card' defined but not used" 2006-01-09 10:54:48 -05:00
hp.c [PATCH] fix a few "warning: 'cleanup_card' defined but not used" 2006-01-09 10:54:48 -05:00
hplance.c [PATCH] m68k: NULL noise removal 2006-01-12 09:09:04 -08:00
hplance.h
hydra.c
hydra.h
ibmlana.c
ibmlana.h
ibmveth.c [PATCH] disable DEBUG in ibmveth 2005-11-11 05:47:04 -05:00
ibmveth.h [PATCH] ibmveth lockless TX 2005-10-28 16:07:30 -04:00
ifb.c [NET]: Increase default IFB device count. 2006-02-23 16:23:51 -08:00
ioc3-eth.c [PATCH] IOC3: Replace obsolete PCI API 2005-11-18 13:29:41 -05:00
isa-skeleton.c
iseries_veth.c [PATCH] powerpc: remove bitfields from HvLpEvent 2006-01-12 20:09:29 +11:00
jazzsonic.c [PATCH] jazzsonic: Fix platform device code 2005-12-01 02:26:46 -05:00
Kconfig [PATCH] skge: no longer experimental 2006-02-17 16:15:46 -05:00
lance.c [PATCH] fix a few "warning: 'cleanup_card' defined but not used" 2006-01-09 10:54:48 -05:00
lasi_82596.c [PARISC] Add NETPOLL support to lasi_82596 2005-10-21 22:55:15 -04:00
LICENSE.SRC
lne390.c [PATCH] fix a few "warning: 'cleanup_card' defined but not used" 2006-01-09 10:54:48 -05:00
loopback.c Merge /spare/repo/linux-2.6/ 2005-08-18 22:14:39 -04:00
lp486e.c [PATCH] lp486e: remove SLOW_DOWN_IO 2006-02-01 08:53:10 -08:00
mac89x0.c
mac8390.c [PATCH] m68k: lvalues abuse in mac8390 2006-01-12 09:09:01 -08:00
mace.c Merge ../linux-2.6 by hand 2005-10-31 13:37:12 +11:00
mace.h
macmace.c
macsonic.c [DRIVER MODEL] Convert platform drivers to use struct platform_driver 2005-11-09 22:32:44 +00:00
Makefile [NET]: Add IFB (Intermediate Functional Block) network device. 2006-01-09 14:16:23 -08:00
meth.c
meth.h
mii.c [PATCH] mii: Add test for GigE support 2005-09-14 08:46:21 -04:00
mipsnet.c Create platform_device.h to contain all the platform device details. 2005-10-29 19:07:23 +01:00
mipsnet.h [PATCH] mipsnet: Fix Copyright notice. 2005-12-01 02:26:45 -05:00
mv643xx_eth.c [PATCH] missing includes in drivers/net/mv643xx_eth.c 2006-02-07 20:56:52 -05:00
mv643xx_eth.h [PATCH] changing CONFIG_LOCALVERSION rebuilds too much, for no good reason 2005-11-09 07:55:57 -08:00
mvme147.c
myri_code.h
myri_sbus.c [PATCH] gfp_t: drivers/net 2005-10-28 08:16:51 -07:00
myri_sbus.h [PATCH] gfp_t: drivers/net 2005-10-28 08:16:51 -07:00
natsemi.c
ne2.c [PATCH] fix a few "warning: 'cleanup_card' defined but not used" 2006-01-09 10:54:48 -05:00
ne2k-pci.c [netdrvr] ne2k-pci based card does not support bus-mastering. 2005-10-28 16:55:55 -04:00
ne3210.c [PATCH] drivers/net/ne3210.c: cleanups 2005-09-05 18:02:31 -04:00
ne-h8300.c
ne.c [PATCH] fix a few "warning: 'cleanup_card' defined but not used" 2006-01-09 10:54:48 -05:00
netconsole.c
ni52.c
ni52.h
ni65.c drivers/net: Remove pointless checks for NULL prior to calling kfree() 2005-10-28 16:53:13 -04:00
ni65.h
ni5010.c
ni5010.h
ns83820.c [INET_SOCK]: Move struct inet_sock & helper functions to net/inet_sock.h 2006-01-03 13:11:21 -08:00
oaknet.c
pci-skeleton.c [PATCH] turn "const static" into "static const" 2006-01-10 08:01:55 -08:00
pcnet32.c [PATCH] pcnet32: use MAC address from prom also on powerpc 2005-12-12 15:30:38 -05:00
plip.c [PATCH] parport: include fixes 2006-01-06 08:33:58 -08:00
ppp_async.c [PATCH] TTY layer buffering revamp 2006-01-10 08:01:59 -08:00
ppp_deflate.c
ppp_generic.c [PPP]: Fixed hardware RX checksum handling 2006-02-05 20:23:33 -08:00
ppp_mppe.c [PPP]: add PPP MPPE encryption module 2005-11-08 09:40:47 -08:00
ppp_mppe.h [PPP]: add PPP MPPE encryption module 2005-11-08 09:40:47 -08:00
ppp_synctty.c [PATCH] TTY layer buffering revamp 2006-01-10 08:01:59 -08:00
pppoe.c [PPPOX]: Fix assignment into const proto_ops. 2006-01-03 13:11:23 -08:00
pppox.c [PPPOX]: Fix assignment into const proto_ops. 2006-01-03 13:11:23 -08:00
r8169.c r8169: enable wake on lan 2006-02-23 23:06:48 +01:00
rionet.c [PATCH] Add rapidio net driver 2005-09-14 09:18:21 -04:00
rrunner.c drivers/net: Remove pointless checks for NULL prior to calling kfree() 2005-10-28 16:53:13 -04:00
rrunner.h
s2io-regs.h [PATCH] S2io: Offline diagnostics fixes 2005-10-18 16:58:27 -04:00
s2io.c s2io: set_multicast_list bug 2006-03-04 12:06:51 -05:00
s2io.h [PATCH] s2io: UFO support 2005-11-18 13:28:15 -05:00
saa9730.c [PATCH] SAA9730: Driver overhaul 2005-11-11 08:31:35 -05:00
saa9730.h [PATCH] SAA9730: Add missing header bits. 2005-11-18 13:29:41 -05:00
sb1000.c [PATCH] Unlinline a bunch of other functions 2006-01-14 18:27:06 -08:00
sb1250-mac.c [PATCH] sb1250-mac: PHY probing fixes. 2005-10-20 16:06:11 -04:00
seeq8005.c
seeq8005.h
sgiseeq.c [PATCH] sgiseeq: Configure PIO and DMA timing requests. 2005-10-18 18:03:47 -04:00
sgiseeq.h
shaper.c [NET]: Kill skb->list 2005-08-29 15:31:14 -07:00
sis190.c sis190: early setting of the pci driver private data 2006-02-16 22:17:00 +01:00
sis900.c Fix Wake on LAN support in sis900 2006-02-25 17:01:09 -05:00
sis900.h [PATCH] sis900: remove cfgpmcsr I/O space register define 2006-02-07 01:58:36 -05:00
sk_mca.c [PATCH] changing CONFIG_LOCALVERSION rebuilds too much, for no good reason 2005-11-09 07:55:57 -08:00
sk_mca.h [PATCH] changing CONFIG_LOCALVERSION rebuilds too much, for no good reason 2005-11-09 07:55:57 -08:00
skge.c skge: protect interrupt mask 2006-02-23 23:07:08 +01:00
skge.h skge: protect interrupt mask 2006-02-23 23:07:08 +01:00
sky2.c [PATCH] sky2: remove MSI support 2006-02-28 18:06:25 -05:00
sky2.h [PATCH] sky2: remove MSI support 2006-02-28 18:06:25 -05:00
slhc.c
slip.c [PATCH] TTY layer buffering revamp 2006-01-10 08:01:59 -08:00
slip.h
smc91x.c [PATCH] IRQ type flags 2006-01-08 20:13:46 -08:00
smc91x.h [PATCH] IRQ type flags 2006-01-08 20:13:46 -08:00
smc9194.c
smc9194.h
smc-mca.c
smc-ultra32.c
smc-ultra.c [PATCH] fix a few "warning: 'cleanup_card' defined but not used" 2006-01-09 10:54:48 -05:00
sonic.c [PATCH] macsonic/jazzsonic network drivers update 2005-08-23 01:32:12 -04:00
sonic.h [PATCH] macsonic/jazzsonic network drivers update 2005-08-23 01:32:12 -04:00
Space.c [PATCH] macsonic/jazzsonic network drivers update 2005-08-23 01:32:12 -04:00
spider_net_ethtool.c [PATCH] spidernet: performance optimizations 2006-01-17 07:25:01 -05:00
spider_net.c [PATCH] spidernet: fix missing include 2006-01-17 07:25:01 -05:00
spider_net.h [PATCH] spidernet: performance optimizations 2006-01-17 07:25:01 -05:00
starfire_firmware.h
starfire_firmware.pl
starfire.c [PATCH] changing CONFIG_LOCALVERSION rebuilds too much, for no good reason 2005-11-09 07:55:57 -08:00
stnic.c
sun3_82586.c
sun3_82586.h
sun3lance.c [PATCH] m68k: NULL noise removal 2006-01-12 09:09:04 -08:00
sunbmac.c [PATCH] gfp_t: drivers/net 2005-10-28 08:16:51 -07:00
sunbmac.h [PATCH] gfp_t: drivers/net 2005-10-28 08:16:51 -07:00
sundance.c [PATCH] sundance: fix DFE-580TX Tx Underrun 2005-10-28 16:40:33 -04:00
sungem_phy.c
sungem_phy.h
sungem.c [SUNGEM]: Unbreak Sun GEM chips. 2006-01-31 17:12:55 -08:00
sungem.h [PATCH] gfp flags annotations - part 1 2005-10-08 15:00:57 -07:00
sunhme.c [PATCH] Sun HME: enable and map PCI ROM properly 2005-09-11 09:28:17 -07:00
sunhme.h
sunlance.c
sunqe.c
sunqe.h
tc35815.c
tg3.c [TG3]: Add DMA address workaround 2006-03-06 19:28:35 -08:00
tg3.h [TG3]: Flush tg3_reset_task() 2006-02-02 17:29:28 -08:00
tlan.c [PATCH] drivers/net/tlan.c: #ifdef CONFIG_PCI the PCI specific code 2006-02-24 00:20:08 -05:00
tlan.h
tun.c [TUNTAP]: Allow setting the linktype of the tap device from userspace 2005-09-01 17:40:05 -07:00
typhoon-firmware.h
typhoon.c [PATCH] drivers/net: fix-up schedule_timeout() usage 2005-09-14 08:33:24 -04:00
typhoon.h
via-rhine.c [PATCH] via-rhine: change mdelay to msleep and remove from ISR path 2005-10-18 22:26:01 -04:00
via-velocity.c via-velocity: fix memory corruption when changing the mtu 2006-02-27 23:11:08 +01:00
via-velocity.h
wd.c [PATCH] fix a few "warning: 'cleanup_card' defined but not used" 2006-01-09 10:54:48 -05:00
yellowfin.c
znet.c
zorro8390.c