Commits for the new config static device design, to allow more than one static
cpu of a certain type and to eliminate the cpu p5 cpu p6 cpu k7 nonsense in the old config files. Next step is to hook into Eric's pci device stuff. git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1067 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
This commit is contained in:
@@ -1,3 +1,4 @@
|
||||
uses k7
|
||||
uses CPU_FIXUP
|
||||
dir /cpu/p6
|
||||
#object cpufixup.o
|
||||
|
@@ -1,4 +1,6 @@
|
||||
uses CPU_FIXUP
|
||||
dir /cpu/k7
|
||||
config chip.h
|
||||
if CPU_FIXUP
|
||||
object cpufixup.o
|
||||
object apic_timer.o
|
||||
|
@@ -4,6 +4,9 @@
|
||||
#include <cpu/p6/msr.h>
|
||||
#include <cpu/k8/mtrr.h>
|
||||
#include <device/device.h>
|
||||
#include <device/chip.h>
|
||||
|
||||
#include "chip.h"
|
||||
|
||||
void k8_cpufixup(struct mem_range *mem)
|
||||
{
|
||||
@@ -51,3 +54,27 @@ void k8_cpufixup(struct mem_range *mem)
|
||||
msr.lo |= SYSCFG_MSR_MtrrVarDramEn | SYSCFG_MSR_TOM2En;
|
||||
wrmsr(SYSCFG_MSR, msr);
|
||||
}
|
||||
|
||||
static
|
||||
void k8_enable(struct chip *chip, enum chip_pass pass)
|
||||
{
|
||||
|
||||
struct cpu_k8_config *conf = (struct cpu_k8_config *)chip->chip_info;
|
||||
|
||||
switch (pass) {
|
||||
case CONF_PASS_PRE_CONSOLE:
|
||||
break;
|
||||
default:
|
||||
/* nothing yet */
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
struct chip_control cpu_k8_control = {
|
||||
enable: k8_enable,
|
||||
name: "AMD K8"
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
|
@@ -1,5 +1,6 @@
|
||||
uses i686
|
||||
uses INTEL_PPRO_MTRR
|
||||
dir /cpu/p5
|
||||
#object microcode.o
|
||||
object mtrr.o
|
||||
#object l2_cache.o
|
||||
|
@@ -145,18 +145,21 @@ mainboardinit cpu/k8/disable_mmx_sse.inc
|
||||
###
|
||||
northbridge amd/amdk8
|
||||
end
|
||||
southbridge amd/amd8111
|
||||
southbridge amd/amd8111 "amd8111"
|
||||
end
|
||||
southbridge amd/amd8131
|
||||
southbridge amd/amd8131 "amd8131"
|
||||
end
|
||||
#mainboardinit archi386/smp/secondary.inc
|
||||
superio NSC/pc87360
|
||||
register "com1" = "{1}"
|
||||
register "lpt" = "{1}"
|
||||
end
|
||||
dir /pc80
|
||||
# dir /pc80
|
||||
##dir /src/superio/winbond/w83627hf
|
||||
cpu p5 end
|
||||
cpu p6 end
|
||||
cpu k7 end
|
||||
cpu k8 end
|
||||
dir /cpu/k8
|
||||
cpu k8 "cpu0"
|
||||
register "up" = "{.chip = &amd8111, .ht_width=8, .ht_speed=200}"
|
||||
end
|
||||
|
||||
cpu k8 "cpu1"
|
||||
end
|
||||
|
@@ -4,8 +4,30 @@
|
||||
#include <device/pci_ids.h>
|
||||
#include <device/pci_ops.h>
|
||||
|
||||
#include <arch/io.h>
|
||||
#include <device/chip.h>
|
||||
#include "chip.h"
|
||||
|
||||
|
||||
unsigned long initial_apicid[MAX_CPUS] =
|
||||
{
|
||||
0, 1,
|
||||
};
|
||||
|
||||
static void
|
||||
enable(struct chip *chip, enum chip_pass pass)
|
||||
{
|
||||
|
||||
struct mainboard_arima_hdama_config *conf =
|
||||
(struct mainboard_arima_hdama_config *)chip->chip_info;
|
||||
|
||||
switch (pass) {
|
||||
default: break;
|
||||
}
|
||||
|
||||
}
|
||||
struct chip_control mainboard_arima_hdama_control = {
|
||||
enable: enable,
|
||||
name: "Arima HDAMA mainboard "
|
||||
};
|
||||
|
||||
|
Reference in New Issue
Block a user