diff options
Diffstat (limited to 'src/northbridge/amd')
-rw-r--r-- | src/northbridge/amd/amdk8/coherent_ht.c | 13 | ||||
-rw-r--r-- | src/northbridge/amd/amdk8/incoherent_ht.c | 3 |
2 files changed, 9 insertions, 7 deletions
diff --git a/src/northbridge/amd/amdk8/coherent_ht.c b/src/northbridge/amd/amdk8/coherent_ht.c index baff9deb1f..43054ed6e3 100644 --- a/src/northbridge/amd/amdk8/coherent_ht.c +++ b/src/northbridge/amd/amdk8/coherent_ht.c @@ -385,10 +385,10 @@ static struct setup_smp_result setup_smp(void) clear_temp_row(0); /* delete temporary connection */ - result.needs_reset = optimize_connection( - NODE_HT(0), 0x80 + link_to_register(link_connection(0,1)), - NODE_HT(1), 0x80 + link_to_register(link_connection(1,0)) ); - + result.needs_reset = + optimize_connection(NODE_HT(0), 0x80 + link_to_register(link_connection(0,1)), + NODE_HT(1), 0x80 + link_to_register(link_connection(1,0)) ); + #if CONFIG_MAX_CPUS > 2 result.cpus=4; @@ -451,7 +451,8 @@ static struct setup_smp_result setup_smp(void) NODE_HT(2), 0x80 + link_to_register(link_connection(2,3)), NODE_HT(3), 0x80 + link_to_register(link_connection(3,2)) ); -#endif +#endif /* CONFIG_MAX_CPUS > 2 */ + print_debug_hex8(result.cpus); print_debug(" nodes initialized.\r\n"); return result; @@ -644,8 +645,10 @@ static int setup_coherent_ht_domain(void) result = setup_smp(); result.cpus = verify_mp_capabilities(result.cpus); #endif + coherent_ht_finalize(result.cpus); result.needs_reset = apply_cpu_errata_fixes(result.cpus, result.needs_reset); + #if CONFIG_MAX_CPUS > 1 /* Why doesn't this work on the solo? */ result.needs_reset = optimize_link_read_pointers(result.cpus, result.needs_reset); #endif diff --git a/src/northbridge/amd/amdk8/incoherent_ht.c b/src/northbridge/amd/amdk8/incoherent_ht.c index db44650a1d..c8eb3c36a3 100644 --- a/src/northbridge/amd/amdk8/incoherent_ht.c +++ b/src/northbridge/amd/amdk8/incoherent_ht.c @@ -316,8 +316,7 @@ static int ht_setup_chains(const struct ht_chain *ht_c, int ht_c_num) reset_needed = 0; next_unitid = 1; - - for(i=0;i<ht_c_num;i++) { + for (i = 0; i < ht_c_num; i++) { uint32_t reg; uint8_t reg8; reg = pci_read_config32(PCI_DEV(0,0x18,1), ht_c[i].devreg); |