YhLu's patch for multi-ht-chain for S2885

git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1478 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
This commit is contained in:
Li-Ta Lo
2004-03-25 17:50:06 +00:00
parent 30667d75a6
commit edeff59c72
3 changed files with 134 additions and 3 deletions

View File

@@ -149,6 +149,22 @@ static void main(void)
},
#endif
};
static const struct ht_chain ht_c[] = {
{
.udev = PCI_DEV(0, 0x18, 0),
.upos = 0xc0,
.devreg = 0xe2,
.mindev = 1,
},
{
.udev = PCI_DEV(0, 0x18, 0),
.upos = 0x80,
.devreg = 0xe6,
.mindev = 5,
},
};
int needs_reset;
enable_lapic();
init_timer();
@@ -164,11 +180,16 @@ static void main(void)
console_init();
setup_s2885_resource_map();
needs_reset = setup_coherent_ht_domain();
needs_reset |= ht_setup_chain(PCI_DEV(0, 0x18, 0), 0xc0);
// needs_reset |= ht_setup_chain(PCI_DEV(0, 0x18, 0), 0xc0);
needs_reset |= ht_setup_chains(ht_c, sizeof(ht_c)/sizeof(ht_c[0]));
if (needs_reset) {
print_info("ht reset -");
soft_reset();
}
#if 0
dump_pci_devices();
#endif
#if 0
print_pci_devices();

View File

@@ -252,8 +252,10 @@ static void setup_s2885_resource_map(void)
* [31:24] Bus Number Limit i
* This field defines the highest bus number in configuration regin i
*/
PCI_ADDR(0, 0x18, 1, 0xE0), 0x0000FC88, 0x04000203,
PCI_ADDR(0, 0x18, 1, 0xE4), 0x0000FC88, 0x06050003,
PCI_ADDR(0, 0x18, 1, 0xE0), 0x0000FC88, 0x04010207,
PCI_ADDR(0, 0x18, 1, 0xE4), 0x0000FC88, 0x06050007,
// PCI_ADDR(0, 0x18, 1, 0xE0), 0x0000FC88, 0x04000203,
// PCI_ADDR(0, 0x18, 1, 0xE4), 0x0000FC88, 0x06050003,
// PCI_ADDR(0, 0x18, 1, 0xE0), 0x0000FC88, 0x00000203,
// PCI_ADDR(0, 0x18, 1, 0xE4), 0x0000FC88, 0x00000000,
PCI_ADDR(0, 0x18, 1, 0xE8), 0x0000FC88, 0x00000000,