Subject: CVS commit: src/sys/arch
To: None <source-changes@NetBSD.org>
From: Matthias Drochner <drochner@netbsd.org>
List: source-changes
Date: 03/05/2007 16:51:03
Module Name:	src
Committed By:	drochner
Date:		Mon Mar  5 16:51:03 UTC 2007

Modified Files:
	src/sys/arch/amd64/amd64: cpu.c mainbus.c
	src/sys/arch/amd64/conf: files.amd64
	src/sys/arch/amd64/include: cpu.h
	src/sys/arch/i386/conf: files.i386
	src/sys/arch/i386/i386: cpu.c mainbus.c
	src/sys/arch/i386/include: cpu.h
	src/sys/arch/x86/conf: files.x86
	src/sys/arch/x86/include: apicvar.h cpuvar.h
	src/sys/arch/x86/x86: ioapic.c mpacpi.c mpbios.c
	src/sys/arch/xen/conf: files.xen
	src/sys/arch/xen/i386: cpu.c
	src/sys/arch/xen/include: cpu.h

Log Message:
clean up how cpus and ioapics are attached at the mainbus:
Seperate "cpubus" and "ioapicbus" -- while they share a common "address
space" (the apic id), the kernel doesn't use this fact. There are different
data passed to cpus and apics, which caused some ugly polymorphism. This
also saves the special "submatch" functions needed to distingush cpus
and ioapics for autoconf. (And it makes that "apid" locators wired
in the kernel configuration are honored now; this allows one to dumb down
an mp box to singleprocessor by userconfig.)
Print "apid" locators in the buses "print" function "as everyone does",
so the per-port cpu drivers don't need to do it.
Being here, constify "struct cpu_functions" and g/c the unused MP_PICMODE
flag.


To generate a diff of this commit:
cvs rdiff -r1.14 -r1.15 src/sys/arch/amd64/amd64/cpu.c \
    src/sys/arch/amd64/amd64/mainbus.c
cvs rdiff -r1.31 -r1.32 src/sys/arch/amd64/conf/files.amd64
cvs rdiff -r1.15 -r1.16 src/sys/arch/amd64/include/cpu.h
cvs rdiff -r1.302 -r1.303 src/sys/arch/i386/conf/files.i386
cvs rdiff -r1.34 -r1.35 src/sys/arch/i386/i386/cpu.c
cvs rdiff -r1.70 -r1.71 src/sys/arch/i386/i386/mainbus.c
cvs rdiff -r1.134 -r1.135 src/sys/arch/i386/include/cpu.h
cvs rdiff -r1.23 -r1.24 src/sys/arch/x86/conf/files.x86
cvs rdiff -r1.3 -r1.4 src/sys/arch/x86/include/apicvar.h
cvs rdiff -r1.6 -r1.7 src/sys/arch/x86/include/cpuvar.h
cvs rdiff -r1.17 -r1.18 src/sys/arch/x86/x86/ioapic.c
cvs rdiff -r1.45 -r1.46 src/sys/arch/x86/x86/mpacpi.c
cvs rdiff -r1.34 -r1.35 src/sys/arch/x86/x86/mpbios.c
cvs rdiff -r1.56 -r1.57 src/sys/arch/xen/conf/files.xen
cvs rdiff -r1.7 -r1.8 src/sys/arch/xen/i386/cpu.c
cvs rdiff -r1.16 -r1.17 src/sys/arch/xen/include/cpu.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.