to enable the RAM check look for this bit of code in auto.c
#if 0 static const struct { unsigned long lo, hi; } check_addrs[] = { /* Check 16MB of memory @ 0*/ { 0x00000000, 0x01000000 }, #if TOTAL_CPUS > 1 /* Check 16MB of memory @ 2GB */ { 0x80000000, 0x81000000 }, #endif }; int i; for(i = 0; i < sizeof(check_addrs)/sizeof(check_addrs[0]); i++) { ram_check(check_addrs[i].lo, check_addrs[i].hi); } #endif
change the #if 0 to #if 1 to enable the ram check. be aware that it will fail at a0000 , not sure if the are enough 0's there, but you will see.
There is a bug in rom_cc where the first line after any #else is skipped. Don't think it has been fixed yet. Unless you have changed the settings to use cl2 ram and 133 Mhz bus(default is cl3 and 100Mhz), it will not initialise ram properly.
Do you ever experience any long delays/hangs when booting ? after the 1106 0601 message.
My board is having problems with the smbus code. The first read of the spd data always seems to fail. Not sure if it is my ram modules or a problem with the code. Don't have any problems booting and running with the original bios. Not yet got to the bottom of the problem, kind of been busy of late.
Ben
Tyler Pohl wrote:
At first after flashing the eeprom i soft rebooted my output was: My monitor flashed colors
Serial Output: Ô˜X˜aÓinuxBIOS-2.0.0.0Fallback Tue Oct 3 19:11:16 PDT 2006 starting... 87 is the comm register SMBus controller enabled vt8601 init starting 00000000 is the north 1106 0601 0120d4 is the computed timing NOP PRECHARGE DUMMY READS CBR MRS NORMAL set ref. rate enable multi-page open Slot 00 is SDRAM 08000000 bytes x2 0080 is the chip size 0008 is the MA type Slot 01 is SDRAM 04000000 bytes x2 0040 is the chip size 0008 is the MA type Slot 02 is empty Slot 03 is empty vt8601 done Copying LinuxBIOS to ram. Jumping to LinuxBIOS. LinuxBIOS-2.0.0.0Fallback Tue Oct 3 19:11:16 PDT 2006 booting... Enumerating buses... scan_static_bus for Root Device Finding PCI configuration type. PCI: Using configuration type 1 PCI_DOMAIN: 0000 enabled APIC_CLUSTER: 0 enabled PCI_DOMAIN: 0000 scanning... PCI: pci_scan_bus for bus 0 set_pci_ops: seeking driver for 1106:601 class 60000 PCI: 00:00.0 [1106/0601] ops PCI: 00:00.0 [1106/0601] enabled malloc Enter, size 668, free_mem_ptr 00018000 malloc 0x00018000 set_pci_ops: seeking driver for 1106:8601 class 60400 Capability: 0x07 @ 0x80 Capability: 0x08 @ 0x80 Capability: 0x10 @ 0x80 PCI: 00:01.0 [1106/8601] enabled PCI: devfn 0x10, bad id 0xffffffff PCI: devfn 0x18, bad id 0xffffffff PCI: devfn 0x20, bad id 0xffffffff PCI: devfn 0x28, bad id 0xffffffff PCI: devfn 0x30, bad id 0xffffffff PCI: devfn 0x38, bad id 0xffffffff PCI: devfn 0x40, bad id 0xffffffff PCI: devfn 0x48, bad id 0xffffffff PCI: devfn 0x50, bad id 0xffffffff PCI: devfn 0x58, bad id 0xffffffff PCI: devfn 0x60, bad id 0xffffffff PCI: devfn 0x68, bad id 0xffffffff PCI: devfn 0x70, bad id 0xffffffff PCI: devfn 0x78, bad id 0xffffffff PCI: devfn 0x80, bad id 0xffffffff set_pci_ops: seeking driver for 1106:8231 class 60100 PCI: 00:11.0 [1106/8231] bus ops PCI: 00:11.0 [1106/8231] enabled set_pci_ops: seeking driver for 1106:571 class 1018a PCI: 00:11.1 [1106/0571] ops PCI: 00:11.1 [1106/0571] enabled set_pci_ops: seeking driver for 1106:3038 class c0300 PCI: 00:11.2 [1106/3038] disabled set_pci_ops: seeking driver for 1106:3038 class c0300 PCI: 00:11.3 [1106/3038] disabled set_pci_ops: seeking driver for 1106:8235 class 68000 PCI: 00:11.4 [1106/8235] ops PCI: 00:11.4 [1106/8235] disabled set_pci_ops: seeking driver for 1106:3058 class 40100 PCI: 00:11.5 [1106/3058] disabled set_pci_ops: seeking driver for 1106:3068 class 78000 PCI: 00:11.6 [1106/3068] enabled PCI: devfn 0x8f, bad id 0xffffffff set_pci_ops: seeking driver for 1106:3065 class 20000 PCI: 00:12.0 [1106/3065] ops PCI: 00:12.0 [1106/3065] enabled PCI: devfn 0x98, bad id 0xffffffff PCI: devfn 0xa0, bad id 0xffffffff PCI: devfn 0xa8, bad id 0xffffffff PCI: devfn 0xb0, bad id 0xffffffff PCI: devfn 0xb8, bad id 0xffffffff PCI: devfn 0xc0, bad id 0xffffffff PCI: devfn 0xc8, bad id 0xffffffff PCI: devfn 0xd0, bad id 0xffffffff PCI: devfn 0xd8, bad id 0xffffffff PCI: devfn 0xe0, bad id 0xffffffff PCI: devfn 0xe8, bad id 0xffffffff PCI: devfn 0xf0, bad id 0xffffffff PCI: devfn 0xf8, bad id 0xffffffff do_pci_scan_bridge for PCI: 00:01.0 PCI: pci_scan_bus for bus 1 malloc Enter, size 668, free_mem_ptr 0001829c malloc 0x0001829c set_pci_ops: seeking driver for 1023:8500 class 30000 PCI: 01:00.0 [1023/8500] enabled PCI: devfn 0x8, bad id 0xffffffff PCI: devfn 0x10, bad id 0xffffffff PCI: devfn 0x18, bad id 0xffffffff PCI: devfn 0x20, bad id 0xffffffff PCI: devfn 0x28, bad id 0xffffffff PCI: devfn 0x30, bad id 0xffffffff PCI: devfn 0x38, bad id 0xffffffff PCI: devfn 0x40, bad id 0xffffffff PCI: devfn 0x48, bad id 0xffffffff PCI: devfn 0x50, bad id 0xffffffff PCI: devfn 0x58, bad id 0xffffffff PCI: devfn 0x60, bad id 0xffffffff PCI: devfn 0x68, bad id 0xffffffff PCI: devfn 0x70, bad id 0xffffffff PCI: devfn 0x78, bad id 0xffffffff PCI: devfn 0x80, bad id 0xffffffff PCI: devfn 0x88, bad id 0xffffffff PCI: devfn 0x90, bad id 0xffffffff PCI: devfn 0x98, bad id 0xffffffff PCI: devfn 0xa0, bad id 0xffffffff PCI: devfn 0xa8, bad id 0xffffffff PCI: devfn 0xb0, bad id 0xffffffff PCI: devfn 0xb8, bad id 0xffffffff PCI: devfn 0xc0, bad id 0xffffffff PCI: devfn 0xc8, bad id 0xffffffff PCI: devfn 0xd0, bad id 0xffffffff PCI: devfn 0xd8, bad id 0xffffffff PCI: devfn 0xe0, bad id 0xffffffff PCI: devfn 0xe8, bad id 0xffffffff PCI: devfn 0xf0, bad id 0xffffffff PCI: devfn 0xf8, bad id 0xffffffff PCI: pci_scan_bus returning with max=01 do_pci_scan_bridge returns max 1 scan_static_bus for PCI: 00:11.0 PNP: 002e.0 enabled PNP: 002e.1 disabled PNP: 002e.2 enabled PNP: 002e.3 disabled PNP: 002e.5 enabled PNP: 002e.6 disabled PNP: 002e.7 disabled PNP: 002e.8 disabled PNP: 002e.9 disabled PNP: 002e.a disabled PNP: 002e.b enabled scan_static_bus for PCI: 00:11.0 done PCI: pci_scan_bus returning with max=01 scan_static_bus for Root Device done done Allocating resources... Reading resources... Root Device compute_allocate_io: base: 00000400 size: 00000000 align: 0 gran: 0 Root Device read_resources bus 0 link: 0 PCI_DOMAIN: 0000 read_resources bus 0 link: 0 0
LinuxBIOS-2.0.0.0Fallback Tue Oct 3 19:11:16 PDT 2006 starting... 87 is the comm register SMBus controller enabled vt8601 init starting 00000000 is the north 1106 0601 0120d4 is the computed timing NOP PRECHARGE DUMMY READS CBR MRS NORMAL set ref. rate enable multi-page open Slot 00 is SDRAM 08000000 bytes x2 0080 is the chip size 0008 is the MA type Slot 01 is SDRAM 04000000 bytes x2 0040 is the chip size 0008 is the MA type Slot 02 is empty Slot 03 is empty vt8601 done Copying LinuxBIOS to ram. Jumping to LinuxBIOS.
____________________________________________-
Then I powered down the via board and my output was:
No video at all
serial output: LinuxBIOS-2.0.0.0Normal Tue Oct 3 19:10:30 PDT 2006 starting... 87 is the comm register SMBus controller enabled vt8601 init starting 00000000 is the north 1106 0601 0120d4 is the computed timing NOP PRECHARGE DUMMY READS CBR MRS NORMAL set ref. rate enable multi-page open Slot 00 is SDRAM 08000000 bytes x2 0080 is the chip size 0008 is the MA type Slot 01 is SDRAM 04000000 bytes x2 0040 is the chip size 0008 is the MA type Slot 02 is empty Slot 03 is empty vt8601 done Copying LinuxBIOS to ram. Jumping to LinuxBIOS.
Any sugestions?
How do you enable the RAM test function? In mainboard/via/epia/auto.c ........... I did the following tring to enable the RAM test but when i do a make i get an error
Unblocked the following beacuse i don't know how the conditional assembly works in this case.
ram_check(0x00000000, msr.lo);
static const struct { unsigned long lo, hi; } check_addrs[] = { /* Check 16MB of memory @ 0*/ { 0x00000000, 0x01000000 },
My make error: /home/tyler/LinuxBIOSv2/src/mainboard/via/epia/auto.c -o auto.inc auto.c:113.34: msr undeclared make[1]: *** [auto.inc] Error 1 make[1]: Leaving directory `/home/tyler/LinuxBIOSv2/targets/via/epia/epia/normal' make: *** [normal/linuxbios.rom] Error 1
Where or what should msr be decalred as ?
Thanks Again.