[LinuxBIOS] Intel 440bx
Alfred Wanga
awanga at gmail.com
Tue Mar 27 04:37:36 CEST 2007
Corey Osgood wrote:
> So, I commented all the do_ram_commands out (since I can't see
> the problem with it) and did ram init using pci_write_config16, setting
> what I know the values should be, and then NOP would not report as being
> set (and ram still failed). So, I set up a for loop to set NOP until the
> northbridge reported that it was set...I got an infinite loop. My loop
> might be wrong (it's a bit hackish), can someone tell me if it should
> work? Or does NOP simply not set?
>
> /* 3. Apply NOP. */
> RAM_DEBUG_MESSAGE("Ram Enable 3: Apply NOP\r\n");
> int s;
> for( s = 0; s != 0110; s = pci_read_config16( ctrl->d0, SDRAMC ) ) {
> RAM_DEBUG_MESSAGE("Do NOPs til it cooperates!\r\n");
> pci_write_config8(ctrl->d0, SDRAMC, 0x0110);
> read32(0x04000000);
> EXTRA_DELAY
> }
Hello Everyone,
I am also new to LinuxBIOS and I've been working on porting and
updating the SPD code from v1 assembly to v2. I think odinhorse's
previous comment is likely to be true, although I think this is
probably what he meant to say:
for( s = 0; (s & 0x3ff) != 0x0110; s = pci_read_config16( ctrl->d0,
SDRAMC ) ) {
or:
for( s = 0; s != 0x0110; s = pci_read_config16( ctrl->d0, SDRAMC ) & 0x3fff ) {
I don't know which one is more correct, so whatever floats your boat.
Other than that, I don't see why it wouldn't work. I don't have a
suitable test system to test this with, so hope it helps!
Alfred
More information about the coreboot
mailing list