freebsd-dev/sys/isa
John Baldwin 6c56727456 - Change fast interrupts on x86 to push a full interrupt frame and to
return through doreti to handle ast's.  This is necessary for the
  clock interrupts to work properly.
- Change the clock interrupts on the x86 to be fast instead of threaded.
  This is needed because both hardclock() and statclock() need to run in
  the context of the current process, not in a separate thread context.
- Kill the prevproc hack as it is no longer needed.
- We really need Giant when we call psignal(), but we don't want to block
  during the clock interrupt.  Instead, use two p_flag's in the proc struct
  to mark the current process as having a pending SIGVTALRM or a SIGPROF
  and let them be delivered during ast() when hardclock() has finished
  running.
- Remove CLKF_BASEPRI, which was #ifdef'd out on the x86 anyways.  It was
  broken on the x86 if it was turned on since cpl is gone.  It's only use
  was to bogusly run softclock() directly during hardclock() rather than
  scheduling an SWI.
- Remove the COM_LOCK simplelock and replace it with a clock_lock spin
  mutex.  Since the spin mutex already handles disabling/restoring
  interrupts appropriately, this also lets us axe all the *_intr() fu.
- Back out the hacks in the APIC_IO x86 cpu_initclocks() code to use
  temporary fast interrupts for the APIC trial.
- Add two new process flags P_ALRMPEND and P_PROFPEND to mark the pending
  signals in hardclock() that are to be delivered in ast().

Submitted by:	jakeb (making statclock safe in a fast interrupt)
Submitted by:	cp (concept of delaying signals until ast())
2000-10-06 02:20:21 +00:00
..
ic $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
atkbd_isa.c - Properly keep track of I/O port resources. 2000-03-19 03:25:13 +00:00
atkbdc_isa.c Fixed the type of some ivar access functions. Ivars have type uintptr_t, 2000-04-30 10:01:56 +00:00
atrtc.c - Change fast interrupts on x86 to push a full interrupt frame and to 2000-10-06 02:20:21 +00:00
fd.c Avoid the modules madness I inadvertently introduced by making the 2000-09-02 19:17:34 +00:00
fdc.h Complete the bio/buf divorce for all code below devfs::strategy 2000-04-15 05:54:02 +00:00
fdreg.h Merge most of FDC_YE into the mainline driver. 2000-01-06 07:13:54 +00:00
isa_common.c Don't assume that any ISA device that fails to probe is a PnP device, 2000-07-12 00:42:08 +00:00
isa_common.h Back out the previous change to the queue(3) interface. 2000-05-26 02:09:24 +00:00
isa_if.m * Factor out the object system from new-bus so that it can be used by 2000-04-08 14:17:18 +00:00
isahint.c Allow a DMA channel of 0. This gets the on-board mss audio device working 1999-11-22 14:30:41 +00:00
isareg.h Add smc37c935 chipset support and clean up the code which tries to 2000-07-18 09:01:09 +00:00
isavar.h Stop isadma from abusing the B_READ, B_RAW and B_WRITE flags. 2000-03-13 10:19:32 +00:00
joy.c Add ADS7182 as a known Joystick. 2000-01-18 08:38:35 +00:00
pnp.c * Completely rewrite the alpha busspace to hide the implementation from 2000-08-28 21:48:13 +00:00
pnpparse.c Finally merge newmidi. 2000-07-11 11:49:33 +00:00
pnpreg.h Supported PC-98. 2000-05-11 11:09:50 +00:00
pnpvar.h Finally merge newmidi. 2000-07-11 11:49:33 +00:00
ppc.c Add support for the PC87303 chipset (found on Miata alphas) and add 2000-07-20 09:28:07 +00:00
ppcreg.h Add support for the PC87303 chipset (found on Miata alphas) and add 2000-07-20 09:28:07 +00:00
psm.c Fix several 64-bit-ism warnings due to sizeof(int) != sizeof(void *) on 2000-09-22 08:40:05 +00:00
rtc.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
sio.c - Heavyweight interrupt threads on the alpha for device I/O interrupts. 2000-10-05 23:09:57 +00:00
sioreg.h Restore the old sio* - bruce can fix it himself. 1999-09-08 10:59:03 +00:00
syscons_isa.c Add device_identify methods so that we do not need the 2000-06-28 22:53:35 +00:00
vga_isa.c Add device_identify methods so that we do not need the 2000-06-28 22:53:35 +00:00