1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-12-22 11:17:19 +00:00
freebsd/sys/dev
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
..
aac Remove the unused AAC_DRIVER_BUILD_DATE macro. 2005-11-13 17:26:36 +00:00
acpi_support Canonize the include of acpi.h. 2005-09-11 18:39:03 +00:00
acpica Don't flood kernel logs with "invalid _PSS package" messages. 2005-12-12 11:15:20 +00:00
adlink Use the new bus_space/resource convenience functions. 2005-09-24 20:46:02 +00:00
advansys Fix -Wundef. 2005-12-04 02:12:43 +00:00
agp Add support for i915 GMCH AGP. This diff is a combination of work by myself 2005-12-02 23:51:36 +00:00
aha
ahb
aic Eliminate support for oldcard by removing the compat shims. 2005-09-20 19:45:08 +00:00
aic7xxx Fix -Wundef warnings from compiling GENERIC and LINT kernels of 2005-12-06 11:19:37 +00:00
amd
amr The CAM interface is broken and seems to be causing lockups on boot. It 2005-11-26 07:30:09 +00:00
an - Store pointer to the link-level address right in "struct ifnet" 2005-11-11 16:04:59 +00:00
ar Propagate rename of IFF_OACTIVE and IFF_RUNNING to IFF_DRV_OACTIVE and 2005-08-09 10:20:02 +00:00
arcmsr Fix -Wundef. 2005-12-04 02:12:43 +00:00
arl - Store pointer to the link-level address right in "struct ifnet" 2005-11-11 16:04:59 +00:00
asr Fix -Wundef from compiling the amd64 LINT. 2005-12-04 10:06:06 +00:00
ata Add support for writing SiS metadata. 2005-12-12 14:13:55 +00:00
ath nuke special handling to extend cts when bursting; it was race prone 2005-11-15 05:49:02 +00:00
atkbdc Fix -Wundef. 2005-12-04 02:12:43 +00:00
auxio Switch from trying to allocate up to 8 register banks for the EBus 2005-07-10 10:33:00 +00:00
awi Remove support for oldcard by removing compat shims. 2005-09-20 19:46:54 +00:00
bfe - Store pointer to the link-level address right in "struct ifnet" 2005-11-11 16:04:59 +00:00
bge In bge_link_upd(), rewrite the logic so that status is assigned 2005-12-13 06:14:14 +00:00
bktr Fix -Wundef from compiling the amd64 LINT. 2005-12-04 10:06:06 +00:00
buslogic
cardbus Cardbus has only 1 slot, so simplify a little. 2005-10-28 06:03:53 +00:00
ciss Update PCI ids to add the E200, E200i, P400, and P400i storage 2005-11-11 16:45:33 +00:00
cm Make sure that we call if_free(ifp) after bus_teardown_intr. Since we 2005-09-19 03:10:21 +00:00
cnw Make sure that we call if_free(ifp) after bus_teardown_intr. Since we 2005-09-19 03:10:21 +00:00
cp Restore if_cp.c 1.27 2005-09-27 16:57:44 +00:00
cpufreq
cs Remove oldcard support by removing the compat shims. 2005-09-20 19:49:33 +00:00
ct
ctau Backout if_cp 1.26, if_ct 1.27, if_cx 1.47 by obrien: 2005-09-27 16:12:49 +00:00
cx - Use swi_remove() to teardown swi handlers rather than 2005-10-26 15:52:16 +00:00
cy Catch up with new interrupt handling code. 2005-10-26 06:44:59 +00:00
dc - Rev. 1.175 fixed compilation on sparc64 but also backed out zeroing of 2005-12-05 12:32:20 +00:00
dcons Fix -Wundef warnings found when compiling i386 LINT, GENERIC and 2005-12-05 11:58:35 +00:00
de Fix the type of "eaddr" to guarantee the required alignment. 2005-12-01 21:18:04 +00:00
dec
digi Eliminate two unused arguments to ttycreate(). 2005-10-16 20:22:56 +00:00
dpt
drm Use compile-time detection of 64-bit addressing. 2005-12-04 12:37:19 +00:00
ed - Store pointer to the link-level address right in "struct ifnet" 2005-11-11 16:04:59 +00:00
eisa Make the eisa probe messages just like all the others in the system. 2005-08-01 07:09:15 +00:00
em - Polling can be used on SMP. 2005-12-12 19:29:30 +00:00
en Drop the driver lock around atm_input() analogous to all the ethernet 2005-10-27 21:08:12 +00:00
ep - Store pointer to the link-level address right in "struct ifnet" 2005-11-11 16:04:59 +00:00
esp Fix -Wundef from compiling the amd64 LINT. 2005-12-04 10:06:06 +00:00
ex - Store pointer to the link-level address right in "struct ifnet" 2005-11-11 16:04:59 +00:00
exca Set the name of the chipset found 2005-10-19 00:25:39 +00:00
fatm Replace custom mbuf writeability test with generic 2005-09-19 21:59:49 +00:00
fb Fix -Wundef warnings from compiling GENERIC and LINT kernels of 2005-12-06 11:19:37 +00:00
fdc Canonize the include of acpi.h. 2005-09-11 18:39:03 +00:00
fe Return 0 if we are a network card and do match. Previously, we'd bogusly 2005-11-19 23:26:57 +00:00
firewire Fix panic when we cannot find self-id of probing nodes. 2005-11-25 14:29:24 +00:00
fxp Add the device ID of fxp(4) NICs found in Sony Vaio VGN-TX1XP laptops. 2005-12-12 14:30:13 +00:00
gem Fix -Wundef warnings found when compiling i386 LINT, GENERIC and 2005-12-05 11:58:35 +00:00
gfb
harp
hatm Replace m_extadd() with macro version MEXTADD(). 2005-09-19 22:04:41 +00:00
hfa
hifn
hme - Store pointer to the link-level address right in "struct ifnet" 2005-11-11 16:04:59 +00:00
hptmv Fix -Wundef. 2005-12-04 02:12:43 +00:00
hwpmc Fix -Wundef warnings found when compiling i386 LINT, GENERIC and 2005-12-05 11:58:35 +00:00
ic Register definitions for the ancient via6522. This 20+ year-old chip 2005-12-02 22:36:14 +00:00
ichsmb Make ichsmb unloadable. 2005-07-29 00:20:50 +00:00
ichwd
ida
idt
ie Fix -Wundef warnings found when compiling i386 LINT, GENERIC and 2005-12-05 11:58:35 +00:00
ieee488 Use new bus_space/resource convenience functions. 2005-09-24 20:44:55 +00:00
if_ndis The latest version of the Intel 2200BG/2915ABG driver (9.0.0.3-9) from 2005-11-06 19:38:34 +00:00
iicbus Remove public declarations of variables that were forgotten when they were 2005-08-10 07:10:02 +00:00
iir
io
ips Separate the hardware definitions into ipsreg.h so they can be used by 2005-11-29 09:39:41 +00:00
ipw Use memcpy/memset consistently accross ipw and iwi instead of bcopy/bzero. 2005-11-20 16:13:00 +00:00
isp Fix -Wundef. 2005-12-04 02:12:43 +00:00
ispfw Fix -Wunder and make the sbus code really compile only on sparc64. 2005-12-04 10:03:00 +00:00
iwi Don't use /etc/firmware. /etc is for configuration files only. 2005-11-20 16:02:04 +00:00
ixgb - Store pointer to the link-level address right in "struct ifnet" 2005-11-11 16:04:59 +00:00
joy Unbreak second joystick (joy1) support. 2005-11-09 20:26:00 +00:00
kbd kbdmux(4) keyboard multiplexer integration 2005-07-13 23:58:57 +00:00
kbdmux Spotted a call to a cdev-related function not wrapped 2005-10-18 06:38:14 +00:00
led
lge Add locking and mark MPSAFE: 2005-11-23 18:51:34 +00:00
lmc Fix -Wundef warnings found when compiling i386 LINT, GENERIC and 2005-12-05 11:58:35 +00:00
lnc Really fix it this time. 2005-11-12 19:14:21 +00:00
mc146818
mca
mcd
md Normalize a significant number of kernel malloc type names: 2005-10-31 15:41:29 +00:00
mem
mii 1) fix tiny bug in bge_start_locked() 2005-12-08 13:31:52 +00:00
mk48txx
mlx Add missing parenthesis around error handling code upon attaching 2005-07-30 15:53:40 +00:00
mly Retire the last of the FreeBSD 4.x compat code from the mly driver. 2005-08-08 12:23:27 +00:00
mpt Fix -Wundef. 2005-12-04 02:12:43 +00:00
mse
my Fix -Wundef from compiling the amd64 LINT. 2005-12-04 10:06:06 +00:00
ncv Remove OLDCARD support by removing compat shims 2005-09-20 19:54:11 +00:00
nge - Store pointer to the link-level address right in "struct ifnet" 2005-11-11 16:04:59 +00:00
nmdm Merge the dev_clone and dev_clone_cred event handlers into a single 2005-08-08 19:55:32 +00:00
nsp Remove OLDCARD support by removing compat shims 2005-09-20 19:54:11 +00:00
null
nve Make nve(4) work for people with nf3/nf4 who never got it 2005-12-12 06:23:43 +00:00
ofw - Add a new method ofw_bus_default_get_devinfo() that allows to retrieve 2005-11-22 16:37:45 +00:00
patm Replace m_extadd() with macro version MEXTADD(). 2005-09-19 22:04:41 +00:00
pbio
pccard Add Global Village lan modem. 2005-10-29 03:48:24 +00:00
pccbb Mollify the whitespace police 2005-11-08 15:42:12 +00:00
pcf
pci Improve diagnostic message. 2005-11-09 03:37:52 +00:00
pdq - Make IFP2ENADDR() a pointer to IF_LLADDR() rather than another 2005-11-11 07:36:14 +00:00
ppbus Propagate rename of IFF_OACTIVE and IFF_RUNNING to IFF_DRV_OACTIVE and 2005-08-09 10:20:02 +00:00
ppc Fix -Wundef. 2005-12-04 02:12:43 +00:00
pst
puc Careful measurement of the ST Labs card shows that the pulse width of 2005-12-08 22:29:42 +00:00
ral Sync with ural: 2005-11-29 21:30:16 +00:00
random
ray - Store pointer to the link-level address right in "struct ifnet" 2005-11-11 16:04:59 +00:00
rc - Use swi_remove() to teardown swi handlers rather than 2005-10-26 15:52:16 +00:00
re Check IFF_DRV_RUNNING in the re_intr() loop. It can disappear, 2005-11-22 12:46:15 +00:00
rndtest
rp Fix -Wundef from compiling the amd64 LINT. 2005-12-04 10:06:06 +00:00
sab - Use swi_remove() to teardown swi handlers rather than 2005-10-26 15:52:16 +00:00
safe
sbni - Store pointer to the link-level address right in "struct ifnet" 2005-11-11 16:04:59 +00:00
sbsh Make sure that we call if_free(ifp) after bus_teardown_intr. Since we 2005-09-19 03:10:21 +00:00
scd
sf - Store pointer to the link-level address right in "struct ifnet" 2005-11-11 16:04:59 +00:00
si Add #nclude <dev/pci/pcireg.h> to pick up definitions for PCIR_BAR and 2005-11-08 04:11:50 +00:00
sio Use __DEVOLATILE to cast conspeed. 2005-12-07 07:23:53 +00:00
sk - Store pointer to the link-level address right in "struct ifnet" 2005-11-11 16:04:59 +00:00
smbus Remove public declarations of variables that were forgotten when they were 2005-08-10 07:10:02 +00:00
sn Eliminate dead code 2005-09-22 05:56:32 +00:00
snc Fix -Wundef warnings from compiling GENERIC and LINT kernels of 2005-12-06 11:19:37 +00:00
snp Restore the ability to detach from a tty via SIOCSTTY and document 2005-09-19 13:48:45 +00:00
sound Fix -Wundef from compiling the amd64 LINT. 2005-12-04 10:06:06 +00:00
speaker Add /dev/speaker support to amd64. 2005-11-11 09:57:32 +00:00
sr Propagate rename of IFF_OACTIVE and IFF_RUNNING to IFF_DRV_OACTIVE and 2005-08-09 10:20:02 +00:00
stg Remove OLDCARD shims 2005-09-21 22:45:14 +00:00
streams
sym FreeBSD has had endian conversion macros for a long time. Axe the custom 2005-12-05 22:37:37 +00:00
syscons Fix -Wundef. 2005-12-04 02:12:43 +00:00
tdfx Normalize a significant number of kernel malloc type names: 2005-10-31 15:41:29 +00:00
tga
ti Fix the Tigon I/II driver to support 64-bit DMA. In the process, convert it 2005-12-14 00:03:41 +00:00
trm
twa twa corresponding to the 9.3.0.1 release on the 3ware website. This driver has 2005-11-08 22:51:43 +00:00
twe Normalize a significant number of kernel malloc type names: 2005-10-31 15:41:29 +00:00
tx - Store pointer to the link-level address right in "struct ifnet" 2005-11-11 16:04:59 +00:00
txp - Store pointer to the link-level address right in "struct ifnet" 2005-11-11 16:04:59 +00:00
uart Make uart_getenv() not be ns8250 dependent. This will allow, in the future, 2005-12-12 21:00:58 +00:00
ubsec
usb - Rename UQ_BROKEN_IPOD to UQ_NO_OPEN_CLEARSTALL since it's likely to be used 2005-12-11 20:14:38 +00:00
utopia
vge - Store pointer to the link-level address right in "struct ifnet" 2005-11-11 16:04:59 +00:00
vkbd Merge the dev_clone and dev_clone_cred event handlers into a single 2005-08-08 19:55:32 +00:00
vr - Store pointer to the link-level address right in "struct ifnet" 2005-11-11 16:04:59 +00:00
vx - Store pointer to the link-level address right in "struct ifnet" 2005-11-11 16:04:59 +00:00
watchdog Return zero when disabling watchdog, unless any of the drivers complain. 2005-09-29 12:31:44 +00:00
wds
wi - Store pointer to the link-level address right in "struct ifnet" 2005-11-11 16:04:59 +00:00
wl - Store pointer to the link-level address right in "struct ifnet" 2005-11-11 16:04:59 +00:00
xe - Store pointer to the link-level address right in "struct ifnet" 2005-11-11 16:04:59 +00:00
zs - Use swi_remove() to teardown swi handlers rather than 2005-10-26 15:52:16 +00:00