1
0
mirror of https://git.FreeBSD.org/src.git synced 2025-01-09 13:42:56 +00:00
freebsd/sys
Scott Long 6239708b1c Fix the Tigon I/II driver to support 64-bit DMA. In the process, convert it
to use busdma.  Unlike most of the other drivers, but similar to the
if_em driver, pre-allocate the dmamaps at init time instead of allocating
them on the fly when descriptors need to be filled.  This isn't ideal right
now because a map is allocated for every descriptor slot in the tx, rx, mini,
and jumbo rings (which is a lot!) in order to simplify the bookkeeping, even
though the driver might support filling only a subset of those slots.
Luckily, maps are typically NULL on i386 and amd64, so the cost isn't
very high.  It could be an issue with sparc64, but the driver isn't endian
clean either, and that is a much bigger problem to solve first.

Note that jumbo frame support is under-tested, and I'm not even sure if
it till really works correctly given the evil VM magic that is does.
The changes here attempt to preserve the existing semanitcs.

Thanks to Martin Nillson for contributing the Netgear card for this work.

MFC-After: 3 weeks
2005-12-14 00:03:41 +00:00
..
alpha - Cleanup whitespace and extra ()s in vtophys() macros. 2005-12-06 21:09:01 +00:00
amd64 Revert previous commit. The BIOS braindamage is even worse than I 2005-12-13 18:29:10 +00:00
arm - Better use of the busdma API. 2005-12-09 23:55:41 +00:00
boot Add kernel module loading option for snd_atiixp(4). 2005-12-01 03:10:12 +00:00
bsm
cam Fix a bug that caused some /dev entries to continue to exist after 2005-11-18 02:43:49 +00:00
coda Fix -Wundef from compiling the amd64 LINT. 2005-12-04 10:06:06 +00:00
compat In Linux, kernel parameters passed to ioctl are by value, while in FreeBSD 2005-12-13 15:32:52 +00:00
conf Remove all redundant option file names that don't hurt readability. 2005-12-12 10:15:11 +00:00
contrib This commit was generated by cvs2svn to compensate for changes in r153200, 2005-12-07 17:32:13 +00:00
crypto
ddb Fix -Wundef. 2005-12-04 02:12:43 +00:00
dev Fix the Tigon I/II driver to support 64-bit DMA. In the process, convert it 2005-12-14 00:03:41 +00:00
doc
fs Recent nmount(2) adoption in mount_smbfs(8) did not flag the "long" option 2005-12-05 19:05:06 +00:00
gdb
geom Fix build breakage by fixing typo. 2005-12-09 11:38:02 +00:00
gnu Hide DDB-specific functions inside check for #ifdef DDB. 2005-12-13 22:42:02 +00:00
i4b Fix -Wundef warnings found when compiling i386 LINT, GENERIC and 2005-12-05 11:58:35 +00:00
i386 MFamd64 rev 1.223: Use the TSC to implement DELAY() if not marked broken 2005-12-13 19:08:55 +00:00
ia64 - Cleanup whitespace and extra ()s in vtophys() macros. 2005-12-06 21:09:01 +00:00
isa MFamd64 rev 1.223: Use the TSC to implement DELAY() if not marked broken 2005-12-13 19:08:55 +00:00
isofs/cd9660 Normalize a significant number of kernel malloc type names: 2005-10-31 15:41:29 +00:00
kern Add a new 'show lock' command to ddb. If the argument has a valid lock 2005-12-13 23:14:35 +00:00
libkern Normalize a significant number of kernel malloc type names: 2005-10-31 15:41:29 +00:00
modules Build xfs before xl. 2005-12-12 01:37:57 +00:00
net Do not accept an empty bpf program. 2005-12-08 00:05:03 +00:00
net80211 disallow module unload when there are dynamic references 2005-12-12 19:07:48 +00:00
netatalk - Store pointer to the link-level address right in "struct ifnet" 2005-11-11 16:04:59 +00:00
netatm - Store pointer to the link-level address right in "struct ifnet" 2005-11-11 16:04:59 +00:00
netgraph Fix memory leak. 2005-12-09 07:09:44 +00:00
netinet Add a new feature for optimizining ipfw rulesets - substitution of the 2005-12-13 12:16:03 +00:00
netinet6 fixed a kernel crash at the initialization time of PIM-SM register interface 2005-12-09 04:42:19 +00:00
netipsec Fix -Wundef warnings found when compiling i386 LINT, GENERIC and 2005-12-05 11:58:35 +00:00
netipx Include ip_options.h for IPX-IP encapsulation. 2005-11-20 16:17:12 +00:00
netkey Fix -Wundef from compiling the amd64 LINT. 2005-12-04 10:06:06 +00:00
netnatm Use sparse initializers for "struct domain" and "struct protosw", 2005-11-09 13:29:16 +00:00
netncp Normalize a significant number of kernel malloc type names: 2005-10-31 15:41:29 +00:00
netsmb Prevent module unloading if there are active connections. 2005-11-22 02:15:46 +00:00
nfs
nfs4client Normalize a significant number of kernel malloc type names: 2005-10-31 15:41:29 +00:00
nfsclient Improve upon rev 1.133 where NFS/TCP would not reconnect. 2005-12-12 23:18:05 +00:00
nfsserver Normalize a significant number of kernel malloc type names: 2005-10-31 15:41:29 +00:00
opencrypto
pc98 Switch MACHINE to "pc98" on FreeBSD/pc98. 2005-12-08 12:35:12 +00:00
pccard
pci The if_ti Tigon I/II driver has moved to /sys/dev/ti 2005-12-10 00:38:33 +00:00
posix4 mqueue.h has been superceded by sys/mqueue.h thanks to David Xu's work. 2005-11-28 02:58:30 +00:00
powerpc - Cleanup whitespace and extra ()s in vtophys() macros. 2005-12-06 21:09:01 +00:00
rpc Fix -Wundef. 2005-12-04 02:12:43 +00:00
security Normalize a significant number of kernel malloc type names: 2005-10-31 15:41:29 +00:00
sparc64 Fix a bug introduced in rev. 1.5; for retrieving the device_t of the 2005-12-12 16:07:11 +00:00
sys Add a new 'show lock' command to ddb. If the argument has a valid lock 2005-12-13 23:14:35 +00:00
tools
ufs Fix parsing of atime, clusterr, clusterw, exec, suid, symfollow 2005-11-24 15:06:40 +00:00
vm Assert that the page that is given to vm_page_free_toq() does not have any 2005-12-13 19:59:09 +00:00
Makefile