Commit Graph

20 Commits

Author SHA1 Message Date
mjacob 7a43c0e46b Fixed the one minor buglet that kept 8200s from working
(SCB_VECTOIDX(vec) - SCB_IOVECBASE] -> SCB_VECTOIDX(vec - SCB_IOVECBASE))

Sigh. This is all very good work- this new interrupt stuff. Yet like the
last time my good friend Jason 'simplified' things, we lost information.
It used to be you could tell which specific slot an interrupt was frame
based upon the vector. Now you can't because they're allocated dynamically.
Oh well- it's not all that important.
2001-08-13 23:36:30 +00:00
thorpej 0fb6b9a8f8 Rework the interrupt code, shaving some cycles off in the process.
Rather than an "iointr" routine that decomposes a vector into an
IRQ, we maintain a vector table directly, hooking up each "iointr"
routine at the correct vector.  This also allows us to hook device
interrupts up to specific vectors (c.f. Jensen).

We can shave even more cycles off, here, and I will, but it requires
some changes to the alpha_shared_intr stuff.
2001-07-27 00:25:18 +00:00
sommerfeld 851de295eb Change pci_intr_map to get interrupt source information from a "struct
pci_attach_args *" instead of from four separate parameters which in
all cases were extracted from the same "struct pci_attach_args".

This both simplifies the driver api, and allows for alternate PCI
interrupt mapping schemes, such as one using the tables described in
the Intel Multiprocessor Spec which describe interrupt wirings for
devices behind pci-pci bridges based on the device's location rather
the bridge's location.

Tested on alpha and i386; welcome to 1.5Q
2000-12-28 22:59:06 +00:00
mrg c88e94a407 remove include of <vm/vm.h>. <vm/vm.h> -> <uvm/uvm_extern.h> 2000-06-29 08:58:45 +00:00
thorpej b0ce38fd8a Switch to the new `evcnt' mechanism for counting interrupts. Maintain
a per-CPU interrupt counter for clock, device, and interprocessor
interrupts.
2000-06-05 21:47:26 +00:00
cgd cffb580806 Implement the more flexiable `evcnt' interface as discussed (briefly) on
tech-kern and now documented in evcnt(9).
2000-06-04 19:14:14 +00:00
thorpej 02d221f94a Fix printf format problems on Alpha. 1999-02-12 06:25:13 +00:00
thorpej b6eff278f2 Fix some whitespace lossage. 1998-04-25 00:12:44 +00:00
mjacob 6cd64be0b6 fix minor typo 1998-04-24 01:25:18 +00:00
thorpej 574b87a792 Initialize the PCI IDE compat interrupt PCI method to NULL; PCI IDE
compat interrupts are not currently supported on these platforms.
1998-04-18 01:12:23 +00:00
thorpej 815703e5ec Make function names in printfs and panics consistent. 1998-04-16 19:50:55 +00:00
mjacob 0ba76b38c8 spurious interrupt notification and finally adding vmstat -i support 1998-04-15 00:49:58 +00:00
mjacob 51ba315ba2 Slightly restructure interrupt handling to accomodate the addition
of a dwlpx_iointr vector.
1998-03-23 06:32:39 +00:00
thorpej 693b3e7262 Nuke the idea of <machine/options.h>. It completely defeats the purpose
of fine-grain option dependencies.
1997-09-02 13:17:47 +00:00
cgd 429a941288 don't expect/provide pci_decompose_tag to be a MI, public function. It
wasn't intended to be to begin with, and uses of it (e.g. the one in the
'de' driver) are quite likely to be incorrect.
1997-07-19 09:49:39 +00:00
mjacob ff21c8f511 Turn of 'unclaimed interrupt' messages- we know about them already- we can't
really fix this as yet.
1997-06-24 18:08:59 +00:00
cgd 90789b53dd by default, provide RCS IDs for NetBSD/alpha kernel files in kernel binaries.
This can be disabled (to save a bit of space) with the NO_KERNEL_RCSIDS
options, which is present but commented out in the ALPHA config file.
In ELF-format kernels, these strings are present in the kernel binary but
are not loaded into memory.  (In ECOFF-format kernels, there's no easy way
to keep them from being loaded, so they _are_ loaded into memory.)
1997-04-07 23:39:37 +00:00
cgd a60b90caa9 clean up NetBSD RCS ID strings, include machine/options.h 1997-04-07 02:01:16 +00:00
cgd 8c689e6477 Copyright notice consistency, per Matthew Jacob. 1997-03-12 21:09:43 +00:00
cgd ffba332bb5 AlphaServer 8200 & 8400 support, including CPU specific details, TurboLaser
system bus support, and KFTxx support.  From Matthew Jacob, NASA Ames
Research Center.
1997-03-12 19:19:54 +00:00