Commit Graph

175 Commits

Author SHA1 Message Date
fvdl a5e7e03043 Use fixed mode, not lopri, for delivering IO interrupts. Suggested by
Peter O'Kane. Fixes interrupt problems on some Xeon systems.
2004-12-21 11:33:04 +00:00
nathanw bb630a5378 Add PSL_T to PSL_USER; it's fine for a program to want to trap itself. 2004-11-30 22:41:57 +00:00
ws 739e2052fd We just checked that the parent is the root, not current.
So we better determine the bus number of this parent node.
Now, MPACPI on my Opteron board finally correctly determines its
PCI/AGP busses even without the help of the AMD64 Address Map
support implemented in my local tree.
2004-11-29 00:07:22 +00:00
yamt e558aadcb2 remove __lockbarrier, which i forgot to remove in the previous. 2004-11-25 04:50:48 +00:00
yamt 6e71418936 use __insn_barrier rather than homegrown equivalents. 2004-10-31 10:39:34 +00:00
xtraeme 0ef90c1bfc Fix typo: labe -> label. 2004-10-26 01:09:25 +00:00
yamt c0ebe301d7 don't reference kernel_lock directly. 2004-10-23 21:27:33 +00:00
yamt d82d2638a7 __cpu_simple_lock: loop without locking cache or asserting LOCK#. 2004-10-23 21:25:22 +00:00
yamt fa29ea9740 to determine if an interrupt needs to grab the kernel lock or not,
check interrupt's own ipl rather than cpu's current ipl.
2004-10-23 21:24:05 +00:00
thorpej f9403749b7 Use the new BTINFO_BOOTWEDGE bootinfo to discover the booted disk and
wedge.
2004-10-23 17:20:59 +00:00
thorpej 0798da74ba Add support for passing booted wedge information to the kernel. 2004-10-23 17:20:04 +00:00
thorpej 42b8fac3b8 Move boot device detection code from i386 and amd64 ports to x86_autoconf.c.
Rename i386_alldisks and x86_64_alldisks to x86_alldisks, adjust other
references to compensate.
2004-10-20 04:20:05 +00:00
drochner 46289e1fef Phase out the use of a string as first "attach args" member to control
which bustype should be attached with a specific call to config_found()
(from a "mainbus" or a bus bridge).
Do it for isa/eisa/mca and pci/agp for now. These buses all attach to
an mi interface attribute "isabus", "eisabus" etc., and the autoconf
framework now allows to specify an interface attribute on config_found()
and config_search(), which limits the search of matching config data
to these which attach to that specific attribute.
So we basically have to call config_found_ia(..., "foobus", ...) where
such a bus is attached.
As a consequence, where a "mainbus" or alike also attaches other
devices (eg CPUs) which do not attach to a specific attribute yet,
we need at least pass an attribute name (different from "foobus") so
that the foo bus is not found at these places. This made some minor
changes necessary which are not obviously related to the mentioned buses.
2004-08-30 15:05:15 +00:00
fvdl e8af4bc978 Keep ioapic in the correct order in the global linked list that stores
them. Fixes cases where the ACPI SCI int has to be guessed, because there
are multiple ioapics in the system.
2004-08-23 17:24:23 +00:00
wennmach 1b35cf3d9a o Split copyright into mycroft and UCB parts
o remove advertising clause from UCB part
2004-08-20 14:12:52 +00:00
briggs 4634c8ef35 Get correct cache information for earlier VIA C3 models.
Mostly from PR kern/26689 submitted by Michael van Elst.
2004-08-17 15:27:46 +00:00
briggs bd2376263b VIA C3 cache info. 2004-08-08 05:16:16 +00:00
drochner a5a5473c25 remove now unnecessary "pci_enumerate_bus" definitions 2004-07-29 16:55:25 +00:00
mycroft a8f51b14b9 b -> B 2004-07-04 00:21:55 +00:00
mycroft f98a477f22 Ahem. Parts of this are *clearly* derived from the old i386/isa/intr.c, so
put back the copyright from there.
2004-07-02 16:05:57 +00:00
yamt 38cdafcad1 {i8254,lapic}_initclocks: try to be more precise using fixtick. 2004-07-01 13:00:39 +00:00
kochi d23b9803c9 fix a duplicate member in designated initializers, which was a bug
introduced in rev 1.5.
pointed out by Andreas Gustafsson.
2004-06-30 14:46:07 +00:00
fvdl 029ca90566 Updaing ci_ilevel and testing ci_ipending must be done with all interrupts
off, or priority inversion can occur, which can lead to IPI deadlocks.
Leaves interrupts off for a bit longer, sadly, but with no noticeable
effects on the systems I tested on.

From YAMAMOTO Takashi.
2004-06-28 09:13:11 +00:00
thorpej 67e828e7d8 Remove the "ID" component of the x86 bus_dma flags, since these are no
longer "ISA DMA" specific flags.
2004-06-20 18:04:08 +00:00
yamt ff7fa9e50e remove XXX comments which are no longer true. 2004-06-12 17:22:04 +00:00
yamt 941f338d94 ANSIfy. 2004-06-12 17:18:13 +00:00
yamt 4af17d9901 simplify x86 bus_dma implementation.
(rather than passing &lastaddr and &seg around,
use and update bus_dmamap_t directly.)
2004-06-12 17:16:44 +00:00
yamt e25482312e - introduce _bus_dmamap_load_paddr, which takes (paddr, size) and
add the range to the map, and use it for _bus_dmamap_load_{buffer,mbuf}.
- _bus_dmamap_load_mbuf: in the case of M_EXT_PAGES, deal with vm_pages
  directly rather than doing pmap_extract on given kva.

as a side effect, do a segment coalescing and boundary checks for mbufs.

ok'ed by Frank van der Linden and Jason Thorpe on tech-kern@.
2004-06-12 17:14:55 +00:00
yamt 0238f7233c simplify x86 bus_dma internal "load" functions.
(by eliminating a variable "first" and using seg == -1 instead.)
2004-06-12 17:10:04 +00:00
yamt cc5720dc40 unexport following x86 bus_dma internal functions.
_bus_dma_alloc_bouncebuf
        _bus_dma_free_bouncebuf
        _bus_dmamap_load_buffer
2004-06-05 07:31:31 +00:00
yamt 1b31a2b6a0 - introduce a function, i82489_icr_wait, which waits for
LAPIC_DLSTAT_BUSY cleared, and use it where appropriate.
- panic if lapic's busy too long and DIAGNOSTIC.
2004-06-05 07:15:57 +00:00
kochi 39dacd3455 prevent panic for machines without any ACPI MADT table. 2004-05-23 05:57:57 +00:00
kochi 79431a3d74 Fix panic / bogus PCI bus detection. 2004-05-21 16:22:05 +00:00
kochi 1b9c589055 Clean up variable usage. 2004-05-21 16:20:36 +00:00
kochi cf6dbb07cc Make sure we don't use the same bus number for PCI and ISA. 2004-05-21 16:19:25 +00:00
kochi efd20e5cdf Back out bogus node check of revision 1.22.
This check is not necessary.
2004-05-21 16:17:48 +00:00
kochi 9d0aaa11b9 add some comments, make local variables/functions static and some style fix. 2004-05-21 16:15:03 +00:00
joda c80da893ae the EST and TM2 flags in the second cpuid register were swapped
(according AP-485); while here add a few more flags
2004-05-17 15:38:17 +00:00
yamt 3b6ad814b2 x86_ipi: call x86_pause() in busy loops. 2004-05-12 20:05:24 +00:00
yamt ca5e02a5f6 _bus_dmamap_load_mbuf: check bounce_thresh in the case when we have paddr hint. 2004-05-11 11:31:34 +00:00
kochi 2cb143dddf Fix parameters for PPB_INTERRUPT_SWIZZLE macro.
The macro expects pin = 1..4 while previously passing 0..3.
2004-05-05 14:08:24 +00:00
kochi 6901f11fba Fix comment (mp_nbusses -> mp_nbus) 2004-05-05 04:51:28 +00:00
kochi be02821555 use M_ZERO for malloc 2004-05-03 14:02:56 +00:00
toshii a73f92f0e2 Compile TSC support code when __x86_64__ is defined. 2004-04-30 17:58:04 +00:00
tron fdab6cb011 Make this compile without ACPI_DEBUG again. 2004-04-25 11:25:35 +00:00
christos db3f39e1e1 make this compile with ACPI_DEBUG again. 2004-04-25 07:55:06 +00:00
itojun 6123043789 pass string length (= boundary info) to pci_devinfo so that we do not run over
the end of memory region
2004-04-23 21:13:05 +00:00
skd 3d1c65c141 1) Skip over bogus device nodes, prevents a panic in pci_make_tag.
2) Clarify a printf.
2004-04-22 18:01:47 +00:00
fvdl 9ad68fe184 Moved here from arch/amd64/pci 2004-04-18 18:34:22 +00:00
kochi 27435b5d7c use designated initializer for struct pic initializers.
just for readability.
2004-04-10 14:49:55 +00:00