Hi,
I have now reached a state in my 440BX code where the RAM init _could_ work (maybe). The current code I have is mostly a very ugly hack and I won't post any patches until I cleaned up the mess. Also, I'm currently hard-coding some stuff from known-good 'lspci -xxx 0:0.0' values, so that's not really useful for anybody with a different configuration, anyway.
Here's what I'm able to get over serial right now:
[...] Testing DRAM : 10000000-02000000 DRAM fill: 10000000-02000000 10000000 DRAM filled DRAM verify: 10000000-02000000 10000000 DRAM range verified. Done. Copying LinuxBIOS to ram. Jumping to LinuxBIOS.
I'm basically using this code in auto.c (based on bitworks/ims stuff):
sdram_initialize(sizeof(cpu)/sizeof(cpu[0]), cpu); enable_mainboard_devices(); ram_check(0x10000000, 0x2000000);
Is that the canonical way to test whether RAM init works? The above serial output _looks_ fine, but nothing happens after the "Jumping to LinuxBIOS." anymore (but that may have other reasons).
I tried using different payloads (filo, memtest) but with no success. What else do I have to configure for a payload to be able to start? I added uses CONFIG_CONSOLE_VGA uses CONFIG_PCI_ROM_RUN default CONFIG_CONSOLE_VGA=1 default CONFIG_PCI_ROM_RUN=1 to Options.lb in the hope to get VGA output, but no luck. Also, I tried adding some stuff to Config.lb; still no luck. I guess this needs some more work later, but I don't want to fix all of that right now.
What's the absolute minimum config I need to get _something_ to boot, so that I can verify that RAM init works?
Can someone provide a known-good memtest payload with serial support I could use? Is that supposed to work if the ram_check() succeeds?
Uwe.