summaryrefslogtreecommitdiff
path: root/src/mainboard/amd/serengeti_cheetah_fam10
diff options
context:
space:
mode:
authorPatrick Georgi <patrick@georgi-clan.de>2010-11-22 14:14:56 +0000
committerPatrick Georgi <patrick.georgi@coresystems.de>2010-11-22 14:14:56 +0000
commit7411eabcdb544205316dfa90e7e708b4b0495074 (patch)
treea22b31164448d14e5415597fa041cd7bd16416d0 /src/mainboard/amd/serengeti_cheetah_fam10
parent394965dd6493943a908a044c5cd3bc3d27e599ec (diff)
downloadcoreboot-7411eabcdb544205316dfa90e7e708b4b0495074.tar.xz
Final set of smp_write_bus -> mptable_write_buses changes.
Signed-off-by: Patrick Georgi <patrick@georgi-clan.de> Acked-by: Patrick Georgi <patrick@georgi-clan.de> git-svn-id: svn://svn.coreboot.org/coreboot/trunk@6114 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
Diffstat (limited to 'src/mainboard/amd/serengeti_cheetah_fam10')
-rw-r--r--src/mainboard/amd/serengeti_cheetah_fam10/get_bus_conf.c18
-rw-r--r--src/mainboard/amd/serengeti_cheetah_fam10/mb_sysconf.h2
-rw-r--r--src/mainboard/amd/serengeti_cheetah_fam10/mptable.c16
3 files changed, 5 insertions, 31 deletions
diff --git a/src/mainboard/amd/serengeti_cheetah_fam10/get_bus_conf.c b/src/mainboard/amd/serengeti_cheetah_fam10/get_bus_conf.c
index 72df5ba78d..b595473304 100644
--- a/src/mainboard/amd/serengeti_cheetah_fam10/get_bus_conf.c
+++ b/src/mainboard/amd/serengeti_cheetah_fam10/get_bus_conf.c
@@ -108,10 +108,6 @@ void get_bus_conf(void)
m = sysconf.mb;
- for(i=0;i<256; i++) {
- m->bus_type[i] = 0;
- }
-
sysconf.hc_possible_num = ARRAY_SIZE(pci1234x);
for(i=0;i<sysconf.hc_possible_num; i++) {
sysconf.pci1234[i] = pci1234x[i];
@@ -120,8 +116,6 @@ void get_bus_conf(void)
get_pci1234();
- m->bus_type[0] = 1; //pci
-
sysconf.sbdn = (sysconf.hcdn[0] >> 8) & 0xff;
m->sbdn3 = sysconf.hcdn[0] & 0xff;
@@ -152,18 +146,6 @@ void get_bus_conf(void)
printk(BIOS_DEBUG, "ERROR - could not find PCI %02x:%02x.0, using defaults\n", m->bus_8132_0, m->sbdn3+1);
}
- for(i=0; i< sysconf.hc_possible_num; i++) {
- if(!(sysconf.pci1234[i] & 0x1) ) continue;
-
- u32 busn = (sysconf.pci1234[i] >> 12) & 0xff;
- u32 busn_max = (sysconf.pci1234[i] >> 20) & 0xff;
- for (j = busn; j <= busn_max; j++)
- m->bus_type[j] = 1;
- if(m->bus_isa <= busn_max)
- m->bus_isa = busn_max + 1;
- printk(BIOS_DEBUG, "i=%d bus range: [%x, %x] bus_isa=%x\n",i, busn, busn_max, m->bus_isa);
- }
-
/* HT chain 1 */
j=0;
for(i=1; i< sysconf.hc_possible_num; i++) {
diff --git a/src/mainboard/amd/serengeti_cheetah_fam10/mb_sysconf.h b/src/mainboard/amd/serengeti_cheetah_fam10/mb_sysconf.h
index 8c655d37c2..f8e69f442f 100644
--- a/src/mainboard/amd/serengeti_cheetah_fam10/mb_sysconf.h
+++ b/src/mainboard/amd/serengeti_cheetah_fam10/mb_sysconf.h
@@ -22,7 +22,6 @@
#define MB_SYSCONF_H
struct mb_sysconf_t {
- u8 bus_isa;
u8 bus_8132_0;
u8 bus_8132_1;
u8 bus_8132_2;
@@ -38,7 +37,6 @@ struct mb_sysconf_t {
u32 sbdn3;
u32 sbdn3a[31];
u32 sbdn5[31];
- u32 bus_type[256];
};
#endif
diff --git a/src/mainboard/amd/serengeti_cheetah_fam10/mptable.c b/src/mainboard/amd/serengeti_cheetah_fam10/mptable.c
index ea62e7c753..3ccc192b1b 100644
--- a/src/mainboard/amd/serengeti_cheetah_fam10/mptable.c
+++ b/src/mainboard/amd/serengeti_cheetah_fam10/mptable.c
@@ -31,7 +31,7 @@
static void *smp_write_config_table(void *v)
{
- int i, j;
+ int i, j, bus_isa;
struct mp_config_table *mc;
struct mb_sysconf_t *m;
@@ -45,13 +45,7 @@ static void *smp_write_config_table(void *v)
m = sysconf.mb;
- /*Bus: Bus ID Type*/
- /* define bus and isa numbers */
- for(j= 0; j < 256 ; j++) {
- if(m->bus_type[j])
- smp_write_bus(mc, j, "PCI ");
- }
- smp_write_bus(mc, m->bus_isa, "ISA ");
+ mptable_write_buses(mc, NULL, &bus_isa);
/*I/O APICs: APIC ID Version State Address*/
smp_write_ioapic(mc, m->apicid_8111, 0x11, IO_APIC_ADDR); //8111
@@ -102,7 +96,7 @@ static void *smp_write_config_table(void *v)
}
- mptable_add_isa_interrupts(mc, m->bus_isa, m->apicid_8111, 0);
+ mptable_add_isa_interrupts(mc, bus_isa, m->apicid_8111, 0);
/* I/O Ints: Type Polarity Trigger Bus ID IRQ APIC ID PIN#*/
//??? What
@@ -185,8 +179,8 @@ static void *smp_write_config_table(void *v)
/* Local Ints: Type Polarity Trigger Bus ID IRQ APIC ID PIN#*/
- smp_write_lintsrc(mc, mp_ExtINT, MP_IRQ_TRIGGER_EDGE|MP_IRQ_POLARITY_HIGH, m->bus_isa, 0x0, MP_APIC_ALL, 0x0);
- smp_write_lintsrc(mc, mp_NMI, MP_IRQ_TRIGGER_EDGE|MP_IRQ_POLARITY_HIGH, m->bus_isa, 0x0, MP_APIC_ALL, 0x1);
+ smp_write_lintsrc(mc, mp_ExtINT, MP_IRQ_TRIGGER_EDGE|MP_IRQ_POLARITY_HIGH, bus_isa, 0x0, MP_APIC_ALL, 0x0);
+ smp_write_lintsrc(mc, mp_NMI, MP_IRQ_TRIGGER_EDGE|MP_IRQ_POLARITY_HIGH, bus_isa, 0x0, MP_APIC_ALL, 0x1);
/* There is no extension information... */
/* Compute the checksums */