freebsd-dev/sys/dev
Marius Strobl 0c05ab41ab - In the interrupt handler clear the interrupt source flags before
processing the interrupt events. If we clear them afterwards we
  can completely miss some events as the NIC can change the source
  flags while we're in the handler. In order to not get another
  interrupt while we're in ifp->if_input() with the driver lock
  dropped we now turn off NIC interrupts while in the interrupt
  handler. Previously this was meant to be achieved by clearing the
  interrupt source flags after processing the interrupt events but
  didn't really work as clearing these flags doesn't actually
  acknowledge and re-enable the events.
  This fixes the device timeouts seen with the VMware LANCE.
- Relax the watchdog timer somewhat; don't enable it until the last
  packet is enqueued and if there is a TX interrupt but there are
  still outstanding ones reload the timer.

Reported and tested by:	Morten Rodal <morten@rodal.no>
MFC after:		3 days
2006-02-21 20:20:43 +00:00
..
aac Initialize the event tailq. 2005-12-28 21:18:55 +00:00
acpi_support Add support for Asus A4D laptops. Currently without display switching 2006-01-29 23:59:43 +00:00
acpica Remove unused variable. 2006-02-21 03:16:58 +00:00
adlink Use the new bus_space/resource convenience functions. 2005-09-24 20:46:02 +00:00
advansys Type of overrun_buf doesn't matter to this code, but does to gcc. 2006-02-04 22:33:08 +00:00
agp Add support for the Intel E7205 chipset. 2006-02-17 01:40:46 +00:00
aha Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
ahb Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
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 Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
amr Use void * for pointer rather than u_int8_t *, since it doesn't 2006-02-04 22:14:20 +00:00
an Silence the strict-alias warnings. Make a trip through (void *) when 2006-02-04 22:51:03 +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 Give the asr softc list global a proper name. 2006-02-12 06:57:41 +00:00
ata Add r/w support for JMicron ATA RAID metadata. 2006-02-17 13:02:10 +00:00
ath drop softc lock around copyin/copyout 2006-02-15 18:36:52 +00:00
atkbdc Fix a bug in Synaptics Touchapd support where psm(4) will enter an infinite 2006-01-05 19:24:01 +00:00
auxio - Only touch the LED bit of the (LED) AUXIO register when turning the 2006-01-26 19:04:18 +00:00
awi Remove support for oldcard by removing compat shims. 2005-09-20 19:46:54 +00:00
bfe Do not touch ifp->if_baudrate in miibus aware drivers. 2006-02-14 12:44:56 +00:00
bge 1) Ignore link events for MII/GMII cards if MI auto-polling disabled. This 2006-02-17 14:33:35 +00:00
bktr if we are compiling with smbus support, properly depend upon the iic and 2006-01-27 08:42:48 +00:00
buslogic Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
cardbus Make the 'pci_devclass' pointer variable private (drivers really shouldn't 2006-01-20 22:00:50 +00:00
ce Fix compilation with -Wundef (NBPF is undefined on FreeBSD >4). 2006-02-03 20:55:30 +00:00
ciss It seems ciss should ignore overrun and underrun on a SCSI INQUIRY 2005-12-16 06:50:55 +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 trim trailing ^I 2005-12-17 07:09:17 +00:00
cpufreq Only activate ICH speedstep if we're going to use it. No bugs were observed 2005-03-20 01:25:21 +00:00
cs Use ETHER_ADDR_LEN rather than 6. 2006-02-11 03:50:03 +00:00
ct Change a directory layout for pc98. 2005-05-10 12:02:18 +00:00
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 Do not touch ifp->if_baudrate in miibus aware drivers. 2006-02-14 12:44:56 +00:00
dcons Use ttyalloc() instead of ttymalloc() 2006-01-04 09:20:41 +00:00
de Use the copy of the card's MAC address saved in tulip_enaddr() in the softc 2005-12-22 16:18:23 +00:00
dec
digi Eliminate two unused arguments to ttycreate(). 2005-10-16 20:22:56 +00:00
dpt Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
drm - Bump FreeBSD version for the hostb(4) and vgapci(4) drivers as well as 2005-12-20 22:44:36 +00:00
ed Initialize the port_bst and port_bsh variables. 2006-02-21 12:01:39 +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 Fix fallout from last commit - we need to program the MAC address in em_init(). 2006-02-15 14:27:38 +00:00
en Drop the driver lock around atm_input() analogous to all the ethernet 2005-10-27 21:08:12 +00:00
ep Remove ifdef notdef SIOCHWADDR vestige. 2006-02-04 08:16:07 +00:00
esp Fix -Wundef from compiling the amd64 LINT. 2005-12-04 10:06:06 +00:00
ex Remove ifdef notyet SIOCGHWADDR vestige. 2006-02-04 08:16:41 +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 Remove unused variable. 2006-02-21 03:19:24 +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 Don't type pun accidentally. Instead, be explicit that we're type 2006-02-04 21:37:39 +00:00
fxp Do not touch ifp->if_baudrate in miibus aware drivers. 2006-02-14 12:44:56 +00:00
gem Fix -Wundef warnings found when compiling i386 LINT, GENERIC and 2005-12-05 11:58:35 +00:00
gfb Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
harp Stop embedding struct ifnet at the top of driver softcs. Instead the 2005-06-10 16:49:24 +00:00
hatm Replace m_extadd() with macro version MEXTADD(). 2005-09-19 22:04:41 +00:00
hfa Stop embedding struct ifnet at the top of driver softcs. Instead the 2005-06-10 16:49:24 +00:00
hifn These registers are saved by pci bus code. Remove from #if 0'd code anyway 2005-06-05 22:57:32 +00:00
hme fix Rx checksum computation on little endian systems. 2006-01-17 06:02:22 +00:00
hptmv Fix -Wundef. 2005-12-04 02:12:43 +00:00
hwpmc Fix a memory leak. 2006-01-17 16:53:50 +00:00
ic Register definitions for the ancient via6522. This 20+ year-old chip 2005-12-02 22:36:14 +00:00
ichsmb This signal handling code is worse than a no-op. If a 2006-01-03 17:01:43 +00:00
ichwd Re-work the bus attachment somewhat. Make the rids unique for 2006-02-17 18:46:18 +00:00
ida Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
idt Stop embedding struct ifnet at the top of driver softcs. Instead the 2005-06-10 16:49:24 +00:00
ie Fix -Wundef warnings found when compiling i386 LINT, GENERIC and 2005-12-05 11:58:35 +00:00
ieee488 Make resources do the right thing by design instead of accident. 2006-01-14 09:46:27 +00:00
if_ndis When ndis_attach() runs, it has to very briefly initialize the card 2006-02-04 19:42:49 +00:00
iicbus Remove public declarations of variables that were forgotten when they were 2005-08-10 07:10:02 +00:00
iir Convert iir inlines to ANSI C function declarations. 2006-01-21 19:56:19 +00:00
io
ipmi Don't conflict with the DEBUG define. 2006-02-13 16:50:45 +00:00
ips Shuffle some definitions so that this can be included from userland. 2006-01-03 23:03:39 +00:00
ipw Use memcpy/memset consistently accross ipw and iwi instead of bcopy/bzero. 2005-11-20 16:13:00 +00:00
isp a) clean up some declaration stuff (i.e., make more modern with respect 2006-02-15 00:31:48 +00:00
ispfw Fix -Wunder and make the sbus code really compile only on sparc64. 2005-12-04 10:03:00 +00:00
iwi correct check for whether wpa is enabled 2006-02-20 20:49:56 +00:00
ixgb - Fix VLAN_INPUT_TAG() macro, so that it doesn't touch mtag in 2005-12-18 18:24:27 +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
le - In the interrupt handler clear the interrupt source flags before 2006-02-21 20:20:43 +00:00
led Add placeholder mutex argument to new_unrhdr(). 2005-03-07 11:05:47 +00:00
lge Do not touch ifp->if_baudrate in miibus aware drivers. 2006-02-14 12:44:56 +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 After some input from bde@ and rereading the datasheet use a MTX_SPIN 2005-06-04 23:24:50 +00:00
mca
mcd Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
md make sure that the start and end preloaded MFS markers are 2006-01-31 13:35:30 +00:00
mem
mii - Introduce ifmedia_baudrate(), which returns correct baudrate of the 2006-02-14 12:10:03 +00:00
mk48txx - Add locking. 2005-05-19 21:16:50 +00:00
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 Do initial cut of SAS HBA support. These controllers (106X) seem to support 2006-02-11 01:35:29 +00:00
mse Minor style(9) changes 2005-04-08 05:22:58 +00:00
mxge 10GbE mode driver and binary firmware for Myricom's PCI-express NICs. 2006-02-19 22:39:19 +00:00
my Fix -Wundef from compiling the amd64 LINT. 2005-12-04 10:06:06 +00:00
myri10ge 10GbE mode driver and binary firmware for Myricom's PCI-express NICs. 2006-02-19 22:39:19 +00:00
ncv Remove OLDCARD support by removing compat shims 2005-09-20 19:54:11 +00:00
nge Do not touch ifp->if_baudrate in miibus aware drivers. 2006-02-14 12:44:56 +00:00
nmdm Use ttyalloc() instead of ttymalloc() 2006-01-04 08:34:23 +00:00
nsp Remove OLDCARD support by removing compat shims 2005-09-20 19:54:11 +00:00
null Use dynamic major number allocation. 2005-02-27 22:01:09 +00:00
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 Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
pccard Add some sanity checking to the pccard insertion case. Whine if the 2005-12-28 05:30:09 +00:00
pccbb Detach the children before we delete them. This is a little cleaner 2006-02-07 18:38:51 +00:00
pcf If the device has a PNPID, don't bother to attach. There were some 2006-02-02 23:57:31 +00:00
pci Don't add an agp child in vgapci's attach routine if the PCIY_AGP 2006-02-01 15:45:29 +00:00
pdq - Make IFP2ENADDR() a pointer to IF_LLADDR() rather than another 2005-11-11 07:36:14 +00:00
ppbus Use a wildcard unit (-1) to device_find_child() in our identify routine to 2006-02-13 17:53:39 +00:00
ppc Add missing MODULE_DEPEND() so that ppbus.ko and these .ko's can be 2005-12-21 10:54:47 +00:00
pst Use BUS_PROBE_DEFAULT for pci probe return value 2005-03-05 18:10:49 +00:00
puc Careful measurement of the ST Labs card shows that the pulse width of 2005-12-08 22:29:42 +00:00
ral use s/w bmiss facility 2006-02-18 01:04:08 +00:00
random Remove GIANT from device random. 2005-12-20 21:41:52 +00:00
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 Copy MAC address to fix alignment problems. 2006-02-20 10:29:40 +00:00
rndtest
rp The UPCI 32 rp(4) card uses BAR 2 like the UPCI 80 card. 2006-01-25 14:55:11 +00:00
sab - Use swi_remove() to teardown swi handlers rather than 2005-10-26 15:52:16 +00:00
safe Use BUS_PROBE_DEFAULT in preference to 0 and BUS_PROBE_LOW_PRIORITY in 2005-03-01 08:58:06 +00:00
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 Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
sf Do not touch ifp->if_baudrate in miibus aware drivers. 2006-02-14 12:44:56 +00:00
si - Update copyright years from the Specialix SDK. 2006-01-06 20:17:48 +00:00
sio Use __DEVOLATILE to cast conspeed. 2005-12-07 07:23:53 +00:00
sk Do not touch ifp->if_baudrate in miibus aware drivers. 2006-02-14 12:44:56 +00:00
smbus Drivers for AMD-8111 and NVIDIA nForce2/3/4 SMBus 2.0 controllers. 2005-12-21 15:49:51 +00:00
sn Fix mismerge after last cvs update for the IFQ_DRV_DEQUEUE changes. 2006-02-04 08:19:00 +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 severe crackling after long running and abusive module load / unload by 2006-02-18 10:24:48 +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 When SC_DISABLE_KDBKEY or SC_DISABLE_REBOOT are not defined allow the 2006-01-14 17:57:17 +00:00
tdfx Normalize a significant number of kernel malloc type names: 2005-10-31 15:41:29 +00:00
tga Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
ti - Tx side bus_dmamap_load_mbuf_sg(9) support. This reduces bookkeeping 2006-01-03 06:14:07 +00:00
trm Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
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 Do not touch ifp->if_baudrate in miibus aware drivers. 2006-02-14 12:44:56 +00:00
txp - Fix VLAN_INPUT_TAG() macro, so that it doesn't touch mtag in 2005-12-18 18:24:27 +00:00
uart - Add support for using LOM (Lights Out Management) and RSC (Remote System 2006-02-04 23:27:16 +00:00
ubsec Use BUS_PROBE_DEFAULT in preference to 0. Also for vx, return 2005-03-01 07:50:12 +00:00
usb Add a UQ_OPEN_CLEARSTALL quirk for devices that need a clear-stall 2006-02-19 14:48:02 +00:00
utopia Struct ifatm isn't at the beginning of the softc anymore. Use the 2005-06-22 06:51:52 +00:00
vge Do not touch ifp->if_baudrate in miibus aware drivers. 2006-02-14 12:44:56 +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 Do not touch ifp->if_baudrate in miibus aware drivers. 2006-02-14 12:44:56 +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