Commit Graph

163 Commits

Author SHA1 Message Date
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
kochi
743758bd35 whitespace nit 2004-04-10 14:17:21 +00:00
drochner
cf8b697c65 remove license clauses 3 and 4 from my cpoyright notices 2004-03-24 17:06:57 +00:00
martin
f87286c8e4 Make it compile (int -> ACPI_INTEGER) 2004-03-24 09:14:58 +00:00
kochi
2b5897d796 Don't use ACPI CA internal functions 2004-03-23 14:07:42 +00:00
bjh21
dff5222d3a Abstract the interface between pckbc(4), and the pckbd(4) and pms(4)
drivers that attach to it.  This allows for other host interface chips
that use the same keyboards and mice, such as the ones in the ARM
IOMD20, ARM7500, and SA-1111.  The PC-compatible driver is still
called pckbc(4), and the new abstraction layer is "pckbport", so the
child devices have moved from sys/dev/pckbc to sys/dev/pckbport, which
also contains some code shared between all host controllers.  To avoid
incompatibility, pckbdreg.h is still installed in
/usr/include/dev/pckbc.

In theory, this shouldn't cause any behavioural changes in the drivers
concerned.  Thy just use rather more function pointers than before.  Tested
on i386 and (with a new host driver) acorn32.  Compiled on several other
affected architectures.
2004-03-13 17:31:33 +00:00
dbj
1ea0a01420 fix comment about spllowersoftclock 2004-03-04 19:10:10 +00:00
yamt
2becafcd79 don't assume that bus on intr_extra_buses has non-null pci_bridge_tag.
pchb's second bus doesn't have it.

ok'ed by Frank van der Linden.
2004-02-20 18:04:06 +00:00
drochner
fdeec1f029 define AMD64's CPUID_NOX bit (I'm curious where Intel puts this bit in the
ia32 extension just announced)
XXX there should be a better separation between generic and vendor
specific feature flags
2004-02-19 17:09:39 +00:00
wiz
d20841bb64 Uppercase CPU, plural is CPUs. 2004-02-13 11:36:08 +00:00
soren
535d4588f0 Add Pentium M MSR definitions from Michael Eriksson. 2004-02-02 08:28:00 +00:00
yamt
d113fe51e0 spllower: lower spl before checking pending interrupts.
otherwise, interrupts happened immediately after the check might be left
pending for a while. (until the next tick in the worse case.)
2004-01-14 11:41:27 +00:00
yamt
7246e2cc80 issue memory read barrier for BUS_DMASYNC_POSTREAD operation.
PR/21665 from Stephan Uphoff.
2004-01-14 11:31:55 +00:00