aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/mainboard/amd/quartet/auto.c4
-rw-r--r--src/mainboard/tyan/s2885/auto.c4
-rw-r--r--src/northbridge/amd/amdk8/incoherent_ht.c14
3 files changed, 8 insertions, 14 deletions
diff --git a/src/mainboard/amd/quartet/auto.c b/src/mainboard/amd/quartet/auto.c
index fce5df684d..67bc959496 100644
--- a/src/mainboard/amd/quartet/auto.c
+++ b/src/mainboard/amd/quartet/auto.c
@@ -206,13 +206,9 @@ static void main(void)
static const struct ht_chain ht_c[] = {
{ /* Link 2 of CPU0 */
- .udev = PCI_DEV(0, 0x18, 0),
- .upos = 0xc0,
.devreg = 0xe0, /* Preset bus num in resource map */
},
{ /* Link 1 of CPU1 */
- .udev = PCI_DEV(0, 0x19, 0),
- .upos = 0xa0,
.devreg = 0xe4, /* Preset bus num in resource map */
},
};
diff --git a/src/mainboard/tyan/s2885/auto.c b/src/mainboard/tyan/s2885/auto.c
index b5766c166a..7211429854 100644
--- a/src/mainboard/tyan/s2885/auto.c
+++ b/src/mainboard/tyan/s2885/auto.c
@@ -180,13 +180,9 @@ static void main(unsigned long bist)
#if 1
static const struct ht_chain ht_c[] = {
{ /* Link 2 of CPU0 */
- .udev = PCI_DEV(0, 0x18, 0),
- .upos = 0xc0,
.devreg = 0xe0, /* Preset bus num in resource map */
},
{ /* Link 0 of CPU0 */
- .udev = PCI_DEV(0, 0x18, 0),
- .upos = 0x80,
.devreg = 0xe4, /* Preset bus num in resource map */
},
};
diff --git a/src/northbridge/amd/amdk8/incoherent_ht.c b/src/northbridge/amd/amdk8/incoherent_ht.c
index d55037c9b7..c8e0770534 100644
--- a/src/northbridge/amd/amdk8/incoherent_ht.c
+++ b/src/northbridge/amd/amdk8/incoherent_ht.c
@@ -246,8 +246,6 @@ static int ht_setup_chain(device_t udev, unsigned upos)
}
struct ht_chain {
- device_t udev;
- unsigned upos;
unsigned devreg;
};
static int ht_setup_chainx(device_t udev, unsigned upos, unsigned bus)
@@ -344,20 +342,24 @@ static int ht_setup_chains(const struct ht_chain *ht_c, int ht_c_num)
dword |= (reg & 0xffff0000)>>8;
pci_write_config32( PCI_DEV(0, devpos,0), regpos , dword);
#if 0
- print_debug("PCI_DEV=(0,0x");
+ print_debug("udev=(0,0x");
print_debug_hex8(devpos);
print_debug(",0) 0x");
print_debug_hex8(regpos);
print_debug("=");
print_debug_hex32(dword);
- print_debug("\r\n");
#endif
/* Make certain the HT bus is not enumerated */
ht_collapse_previous_enumeration(busn);
- upos = ht_c[i].upos;
- udev = ht_c[i].udev;
+ upos = ((reg & 0xf00)>>8) * 0x20 + 0x80;
+ udev = PCI_DEV(0, devpos, 0);
+#if 0
+ print_debug("\tupos=0x");
+ print_debug_hex32(upos);
+ print_debug("\r\n");
+#endif
reset_needed |= ht_setup_chainx(udev,upos,busn );