freebsd-skq/sys/i386/include
marius d60b8a3096 Make the PCI code aware of PCI domains (aka PCI segments) so we can
support machines having multiple independently numbered PCI domains
and don't support reenumeration without ambiguity amongst the
devices as seen by the OS and represented by PCI location strings.
This includes introducing a function pci_find_dbsf(9) which works
like pci_find_bsf(9) but additionally takes a domain number argument
and limiting pci_find_bsf(9) to only search devices in domain 0 (the
only domain in single-domain systems). Bge(4) and ofw_pcibus(4) are
changed to use pci_find_dbsf(9) instead of pci_find_bsf(9) in order
to no longer report false positives when searching for siblings and
dupe devices in the same domain respectively.
Along with this change the sole host-PCI bridge driver converted to
actually make use of PCI domain support is uninorth(4), the others
continue to use domain 0 only for now and need to be converted as
appropriate later on.
Note that this means that the format of the location strings as used
by pciconf(8) has been changed and that consumers of <sys/pciio.h>
potentially need to be recompiled.

Suggested by:	jhb
Reviewed by:	grehan, jhb, marcel
Approved by:	re (kensmith), jhb (PCI maintainer hat)
2007-09-30 11:05:18 +00:00
..
pc Remove the internal use of __packed and put it on the structures 2007-07-11 22:34:34 +00:00
_bus.h
_inttypes.h
_limits.h Move MINSIGSTKSZ from <machine/signal.h> to <machine/_limits.h> and rename 2005-08-20 16:44:41 +00:00
_stdint.h
_types.h By popular demand, move __HAVE_ACPI and __PCI_REROUTE_INTERRUPT into 2006-01-09 06:05:57 +00:00
acpica_machdep.h Catch up with ACPI-CA 20070320 import. 2007-03-22 18:16:43 +00:00
apicreg.h
apicvar.h Handle CPUs with APIC IDs higher than 32 (at least one IBM server uses 2007-05-08 22:01:04 +00:00
apm_bios.h
apm_segments.h
asm.h Define an END() macro for use in i386 and amd64 assembly code, akin 2007-08-22 04:26:07 +00:00
asmacros.h Define an END() macro for use in i386 and amd64 assembly code, akin 2007-08-22 04:26:07 +00:00
atomic.h Fix oops in previous commit. 2006-12-29 15:48:18 +00:00
bootinfo.h
bus_dma.h
bus.h Fix -Wundef warnings found when compiling i386 LINT, GENERIC and 2005-12-05 11:58:35 +00:00
clock.h Cleaned up declaration and initialization of clock_lock. It is only 2007-01-23 08:01:20 +00:00
cpu.h Clean out sysctl machdep.* related defines. 2006-05-11 17:29:25 +00:00
cpufunc.h Add "show sysregs" command to ddb. On i386, this gives gdt, idt, ldt, 2007-08-09 20:14:35 +00:00
cputypes.h
cserial.h Prepare for sconfig(8) update. 2006-01-30 13:34:57 +00:00
db_machdep.h
elan_mmcr.h
elf.h PR: 2006-10-04 21:37:10 +00:00
endian.h
exec.h
float.h
floatingpoint.h
frame.h Tweak how the MD code calls the fooclock() methods some. Instead of 2005-12-22 22:16:09 +00:00
gdb_machdep.h
ieeefp.h
if_wl_wavelan.h
in_cksum.h
intr_machdep.h Minor fixes and tweaks to the x86 interrupt code: 2007-05-08 21:29:14 +00:00
ioctl_bt848.h
ioctl_meteor.h
iodev.h
kdb.h Add kdb_cpu_sync_icache(), intended to synchronize instruction 2007-06-09 21:55:17 +00:00
legacyvar.h Make the PCI code aware of PCI domains (aka PCI segments) so we can 2007-09-30 11:05:18 +00:00
limits.h
md_var.h Initialise (if necessary) the VIA C3/C7 features. 2006-07-12 19:46:08 +00:00
memdev.h
metadata.h
minidump.h Merge minidumps from amd64 where they were originally developed. 2006-04-21 04:28:43 +00:00
mp_watchdog.h
mptable.h guard function decls with _KERNEL so user code can include this file 2006-02-22 21:38:33 +00:00
mutex.h Move clock_lock prototype into <machine/clock.h>, where it is more 2006-05-19 18:53:50 +00:00
npx.h Use the method described in IA-32 Intel Architecture Software Developer's 2006-05-30 23:44:21 +00:00
param.h By popular demand, move __HAVE_ACPI and __PCI_REROUTE_INTERRUPT into 2006-01-09 06:05:57 +00:00
pcaudioio.h
pcb_ext.h Explicitly switch to the new TSS by updating the current CPU's TSS selector 2005-09-15 17:30:08 +00:00
pcb.h Remove pcb_switchout, it has not been used for a long time. 2005-12-29 13:23:48 +00:00
pci_cfgreg.h
pcpu.h Rework the PCPU_* (MD) interface: 2007-06-04 21:38:48 +00:00
pecoff_machdep.h
perfmon.h
pmap.h MFamd64 2007-04-12 17:00:56 +00:00
pmc_mdep.h MFP4: 2005-06-09 19:45:09 +00:00
ppireg.h - Move timerreg.h to <arch>/include and split i8253 specific defines into 2005-05-14 09:10:02 +00:00
privatespace.h Test commit after repoman upgrade. Remove one of my many email addresses 2006-05-12 22:38:53 +00:00
proc.h - Move GDT/LDT locking into a seperate spinlock, removing the global 2007-05-20 22:03:57 +00:00
profile.h i386/include/profile.h: 2006-10-28 11:03:03 +00:00
psl.h
ptrace.h Add support for XMM registers in GDB for x86 processors that support 2005-05-31 09:43:04 +00:00
reg.h - Add macro constants for the various fields in %dr7 and use them in place 2006-11-17 19:20:32 +00:00
reloc.h
resource.h
runq.h
segments.h
setjmp.h Remove 3rd clause, renumber, ok per email 2007-01-12 07:26:21 +00:00
sf_buf.h
sigframe.h
signal.h Move MINSIGSTKSZ from <machine/signal.h> to <machine/_limits.h> and rename 2005-08-20 16:44:41 +00:00
smapi.h
smp.h Fix some entries in the locks static table of witness. 2007-09-20 20:38:43 +00:00
speaker.h Add /dev/speaker support to amd64. 2005-11-11 09:57:32 +00:00
specialreg.h Add a driver for the on-die digital thermal sensor found on Intel Core 2007-08-15 19:26:03 +00:00
stdarg.h Use __builtin_va_start instead of __builtin_stdarg_start. GCC4 obsoletes 2006-09-21 01:37:02 +00:00
sysarch.h
timerreg.h Change the spkr_set_pitch() function to a macro to fix low level profiling. 2005-05-28 13:40:27 +00:00
trap.h Add POSIX siginfo_t's si_code, this is for upcoming POSIX realtime signal 2005-10-14 03:01:14 +00:00
tss.h
ucontext.h MFamd64: use register_t's. 2005-09-12 03:34:05 +00:00
varargs.h
vm86.h
vmparam.h Change the management of cached pages (PQ_CACHE) in two fundamental 2007-09-25 06:25:06 +00:00
xbox.h Committed the xbox syscons(8)-able console driver. 2006-03-03 14:52:57 +00:00