freebsd-skq/sys
avg c5ddd5cba0 acpi cpu: probe+attach before all other enumerated children on acpi bus
Some current systems dynamically load SSDT(s) when _PDC/_OSC method
of Processor is evaluated.  Other devices in ACPI namespace may access
objects defined in the dynamic SSDT.  Drivers for such devices might
have to have a rather high priority, because of other dependencies.
Good example is acpi_ec driver for EC.
Thus we attach to Processors as early as possible to load the SSDTs
before any other drivers may try to evaluate control methods.
It also seems to be a natural order for a processor in a device
hierarchy.

On the other hand, some child devices on acpi cpu bus need to access
other system resources like PCI configuration space of chipset devices,
so they need to be probed and attached rather late.
For this reason we probe and attach the cpu bus at
SI_SUB_CONFIGURE:SI_ORDER_MIDDLE SYSINIT level.
In the future this could be done more elegantly via multipass.

Please note that acpi drivers that might access ACPI namespace from
device_identify will do that before _PDC/_OSC of Processors are evaluated.

Legacy cpu driver is not affected by this change.

PR:		kern/142561 (in part)
Reviewed by:	jhb
Silence from:	acpi@
MFC after:	5 weeks
2010-02-11 08:50:21 +00:00
..
amd64 Add the options DEADLKRES (introducing the deadlock resolver thread) in 2010-02-10 16:30:04 +00:00
arm Add the options DEADLKRES (introducing the deadlock resolver thread) in 2010-02-10 16:30:04 +00:00
boot Add command-line option -dev to set the default value of the currdev 2010-01-18 06:48:24 +00:00
bsm
cam On probe error, if restart requested, skip any retries and recovery. 2010-02-04 18:56:38 +00:00
cddl Remove two files that are not needed by FreeBSD. 2010-02-05 23:17:59 +00:00
compat - Return EAFNOSUPPORT instead of EINVAL for unsupported address family, 2010-02-09 22:30:51 +00:00
conf SMP support for the mips port. 2010-02-09 06:24:43 +00:00
contrib Uuencode the rt2870 firmware into ascii like the other firmware blobs. 2010-01-29 03:35:01 +00:00
crypto
ddb Replace several instances of 'if (!a & b)' with 'if (!(a &b))' in order 2010-01-08 15:44:49 +00:00
dev acpi cpu: probe+attach before all other enumerated children on acpi bus 2010-02-11 08:50:21 +00:00
fs Patch the experimental NFS client so that there is a timeout 2010-01-31 19:12:24 +00:00
gdb
geom - Give geom_redboot taste of flash/spi. Now there is another provider 2010-02-03 01:12:19 +00:00
gnu Bring in the ext2fs work done by Aditya Sarawgi during and after Google Summer 2010-01-14 14:30:54 +00:00
i386 Add the options DEADLKRES (introducing the deadlock resolver thread) in 2010-02-10 16:30:04 +00:00
ia64 Add the options DEADLKRES (introducing the deadlock resolver thread) in 2010-02-10 16:30:04 +00:00
isa Remove extraneous semicolons, no functional changes. 2010-01-07 21:01:37 +00:00
kern In function umtxq_insert_queue, use parameter q (shared/exclusive queue) 2010-02-10 05:47:34 +00:00
kgssapi
libkern Merge from head at r201628. 2010-01-06 05:58:07 +00:00
mips Add the options DEADLKRES (introducing the deadlock resolver thread) in 2010-02-10 16:30:04 +00:00
modules Hook up the siba_bwn module to the build. 2010-01-31 21:22:45 +00:00
net Add DDB support for printing vnet_sysinit and vnet_sysuninit 2010-02-09 22:39:34 +00:00
net80211 Ensure that tkip_mixing_phase1() is called after a rekeying event when 2010-02-08 18:16:59 +00:00
netatalk
netgraph Declare a new EVENTHANDLER called iflladdr_event which signals that the L2 2010-01-18 20:34:00 +00:00
netinet Properly free resources when destroying the TCP hostcache while 2010-02-09 21:31:53 +00:00
netinet6 Correct a typo. 2010-01-24 10:22:39 +00:00
netipsec
netipx
netnatm
netncp
netsmb
nfs - Move nfs_realign() from the NFS client to the shared NFS code and 2010-02-09 23:45:14 +00:00
nfsclient - Move nfs_realign() from the NFS client to the shared NFS code and 2010-02-09 23:45:14 +00:00
nfsserver - Move nfs_realign() from the NFS client to the shared NFS code and 2010-02-09 23:45:14 +00:00
nlm
opencrypto Add comments trying to explain what bad things happen here, i.e. 2010-01-09 15:43:47 +00:00
pc98 Add the options DEADLKRES (introducing the deadlock resolver thread) in 2010-02-10 16:30:04 +00:00
pci Add initial support for RTL8103E PCIe fastethernet. 2010-01-27 17:49:27 +00:00
powerpc Add the options DEADLKRES (introducing the deadlock resolver thread) in 2010-02-10 16:30:04 +00:00
rpc Replace the static NGROUPS=NGROUPS_MAX+1=1024 with a dynamic 2010-01-12 07:49:34 +00:00
security Make sure we convert audit records that were produced as the result of the 2010-01-31 22:31:01 +00:00
sparc64 Add the options DEADLKRES (introducing the deadlock resolver thread) in 2010-02-10 16:30:04 +00:00
sun4v Add the options DEADLKRES (introducing the deadlock resolver thread) in 2010-02-10 16:30:04 +00:00
sys Add PT_VM_TIMESTAMP and PT_VM_ENTRY so that the tracing process can 2010-02-09 05:52:35 +00:00
teken Fall back to ASCII codepoints for box drawing. 2010-02-08 09:16:59 +00:00
tools
ufs This fix corrects a problem in the file system that treats large 2010-02-10 20:10:35 +00:00
vm The MAP_ENTRY_NEEDS_COPY flag belongs to protoeflags, cow variable 2010-01-29 19:25:45 +00:00
xdr
xen Remove extraneous semicolons, no functional changes. 2010-01-07 21:01:37 +00:00
Makefile