AMD64 Solo Hang - news

Eric W. Biederman ebiederman at lnxi.com
Thu Nov 20 22:34:00 CET 2003


Stefan Reinauer <stepan at suse.de> writes:

> Hi,
> 
> it seems that the Solo motherboard is the only motherboard tested so far
> that is based on an Athlon64 instead of Opteron CPUs..
> 
> The following code in src/northbridge/amd/amdk8/misc_control.c relies on
> more than one hypertransport link being available:
> 
>         cmd = pci_read_config32(dev, 0xdc);
>         if((cmd & 0x0000ff00) != 0x02500) {
>                 cmd &= 0xffff00ff;
>                 cmd |= 0x00002500;
>                 pci_write_config32(dev, 0xdc, cmd );
>                 printk_debug("resetting cpu\n");
>                 hard_reset();
>         }
> 
> This implicitly changes CPU0 Link1 FIFO Read Pointer Optimization, not
> taking into regard that LDT1 might not be there.
> 
> It seems this code should rather check all links to see whether they are
> connected and optimize _all_ of the connected.
> 
> Is the CPU reset here really needed for the setting to become active?
> The BKDG does not state this explicitly ... (Therefore I vote for
> removing it)

The acid test for needing the reset would be to find a benchmark that
cares about this optimization and see if it just setting the bits is sufficient
or if it requires the hypertransport link to be shut off.  The fact
that the settings persist through reset hint that a reset is required.

I am dropping a #warning into my tree so I won't forget and I will see if
I can find the appropriate benchmark.

Eric



More information about the coreboot mailing list