linuxbios does not start ... i can see: === LinuxBIOS-1.0.0 Mon Sep 22 02:17:36 CEST 2003 starting... Copying LinuxBIOS to ram. Jumping to LinuxBIOS. === that's it. first i tought it is a mem problem (512MB Infineon CL2). i changed 0x350 to 0x150 in src/northbridge/via/vt8623/raminit.inc and i've activated ../freebios/src/ram/ramtest.inc in ../freebios/src/mainboard/via/epia-m/Config. it seems that everything is ok: === LinuxBIOS-1.0.0 Mon Sep 22 12:38:53 CEST 2003 starting... Testing SDRAM : 00000000-0009ffff SDRAM fill: 0009ffff SDRAM verify: 0009ffff Done. Copying LinuxBIOS to ram. Jumping to LinuxBIOS. ===
so i tried to figure out where the stop occurs. i verified if the code is copied correctly: === LinuxBIOS-1.0.0 Mon Sep 22 02:17:36 CEST 2003 starting... Copying LinuxBIOS to ram. NIKI: Jumping to LinuxBIOS. src: 000f0b70 dst: 00004000 size: 0000aa8c src_code: 010f2efa00405215 dst_code: 010f2efa00405215 === -> fine.
unfort i dont know much about x86 asm...
but it seems that the problem is somewhere in c_start.s ...
if i put movl $0xfffe0000, %edi jmp *%edi to the top of the _start: function then linuxbios loops. (i just wanted to check if the copied code is executed...)
is that a better way to find out what's wrong?
by the way: === gcc -x assembler-with-cpp -DASSEMBLY -E ... crt0.S > crt0.s gcc ... -o crt0.o crt0.s crt0.S: Assembler messages: crt0.S:163: Warning: indirect jmp without `*' === instead of: leal _iseg, %edi jmp %edi shouldn't it be: leal _iseg, %edi jmp *%edi ?
niki w. waibel
I think you should get memtest86, set it up to run on serial console, and see if it works or not.
ron
I think you should get memtest86, set it up to run on serial console, and see if it works or not.
hmmm -- you mean with lilo? i've never used memtest86. will give it a try.
niki
On Mon, 22 Sep 2003, Niki Waibel wrote:
i've never used memtest86.
make memtest86 the payload. be sure to build with serial console only.
ron
i've never used memtest86.
make memtest86 the payload. be sure to build with serial console only.
no, no, that does not work. the payload is never loaded/reached. the trouble is caused earier! right after crt0.s a jmp to the copied mem is done. the copied mem is c_start.s at the beginning. there it seems to stop. (otherwise i'd see the messages from hardwaremain.c, am i wrong?)
anyway -- running memtest86 with lilo right now and it seems that everything is fine (test4 is running. it will take some time to finnish). i dont think it is a mem problem (but i might be wrong).
niki
Niki Waibel wrote:
anyway -- running memtest86 with lilo right now and it seems that everything is fine (test4 is running. it will take some time to finnish). i dont think it is a mem problem (but i might be wrong).
But the issue is, is linuxbios setting up ram correctly. I posted some time ago some simple assy language instructions to check each byte as it is copied to ram. Or make your own, but as the C-code is copied test each byte and see if it matches.
Did you try both ram slots? I think only one works with a single SDRAM. Also set CONFIG_COMPRESS=0 is simpler code. What size SDRAM?
-Steve
anyway -- running memtest86 with lilo right now and it seems that everything is fine (test4 is running. it will take some time to finnish). i dont think it is a mem problem (but i might be wrong).
But the issue is, is linuxbios setting up ram correctly. I posted some time ago some simple assy language instructions to check each byte as it is copied to ram. Or make your own, but as the C-code is copied test each byte and see if it matches.
Did you try both ram slots?
there is only one in the epia-m (600mhz).
I think only one works with a single SDRAM. Also set CONFIG_COMPRESS=0 is simpler code. What size SDRAM?
i use CONFIG_COMPRESS=0. size is 512MByte CL2.
have to leave company now. pls Cc ``niki dot waibel at gmx dot net''.
thanks, niki
Niki Waibel wrote:
size is 512MByte CL2.
The only thing I can think of is to try a different/ smaller SDRAM; 64M or 128M. The RAM setup code is not always that smart about configuration. But has anyone else got the epia-m working? I have only used EPIA-800.
-Steve