On Tue, Dec 22, 2009 at 02:30:21PM -0700, Myles Watson wrote: > > > On Fri, Dec 18, 2009 at 11:38:46AM -0700, Myles Watson wrote: > > > I would check the early startup code for the remote nodes. It looks > > like > > > you hang right where it gets garbled for Knut. > > > > Hmm, yeah. So I tried enabling just one core by setting > > > > default CONFIG_MAX_PHYSICAL_CPUS=1 > > default CONFIG_MAX_CPUS=1 * CONFIG_MAX_PHYSICAL_CPUS > > default CONFIG_LOGICAL_CPUS=1 > I think you need to set CONFIG_LOGICAL_CPUS=0 to disable the siblings. I > got it to compile by moving the nb_ function it can't find into the #endif > above it. > > * AP 02 didn't start timeout:00000001 > * AP 03 didn't start timeout:00000001 > > > Begin FIDVID MSR 0xc0010071 0x30ae00a3 0x40034c40 > FIDVID on BSP, APIC_id: 00 > BSP fid = 10600 > Wait for AP stage 1: ap_apicid = 1 > fidvid_bsp_stage1: time out while reading from ap 01 > Wait for AP stage 1: ap_apicid = 2 > fidvid_bsp_stage1: time out while reading from ap 02 > Wait for AP stage 1: ap_apicid = 3 > > It's still trying to start the APs.
Right. Setting CONFIG_LOGICAL_CPUS to zero and making sure that conditional
on CONFIG_LOGICAL_CPUS at the top of northbridge.c does not apply fixed that.
Should this go into the tree?
--- northbridge/amd/amdfam10/northbridge.c (revision 4978)
+++ northbridge/amd/amdfam10/northbridge.c (working copy)
@@ -31,10 +31,10 @@
#include <cpu/x86/lapic.h>
-#if CONFIG_LOGICAL_CPUS==1
#include <cpu/amd/quadcore.h>
#include <pc80/mc146818rtc.h>
-#endif
#include "chip.h"
#include "root_complex/chip.h"
> > and by adding a return at the very beginning of start_other_cores in
> >
> > cpu/amd/quadcore/quadcore.c
> >
> > which gets me a bit further, but not much. It hangs in the
> > mcp55_early_pcie_setup function in
> >
> > southbridge/nvidia/mcp55/mcp55_early_setup_car.c
> >
> > Log attached. Anything else I should try?
>
> If inl and outl are hanging, I would dump the routing registers and read the
> device's IDs to see what's going wrong. I'm not very familiar with how the
> fam10 code works, but dumping the routing registers should be mostly cut and
> paste from the k8/util.c code.
Right. I've done that - log attached. I'm dumping with
showallroutes(BIOS_DEBUG, PCI_DEV(0, 0x18, 1));
I'm not sure what to make of the dump though (attached).
Thanks,
Ward.
--
Ward Vandewege <[email protected]>
Free Software Foundation - Senior Systems Administrator
minicom-20091222ad-ram-on-both-cpus.cap
Description: application/cap
-- coreboot mailing list: [email protected] http://www.coreboot.org/mailman/listinfo/coreboot

