[OpenBIOS] Starting linux aint much easy ?

Attarian, Gary GAttarian at microtest.com
Tue Feb 15 12:20:45 CET 2000


Well, I still think you are almost there.  I went through this same
frustration a few months ago so I feel your pain :)

>From the code you sent, I gather that you get the "i" out the serial port.
But that it fails to get to the start_kernel routine.  This is just what I
encountered.  I spent several days pulling out my hair until I discovered
that I did not have the protected mode of the processor set up correctly.
The problem I found was that I had not set the code segment to the proper
value.  

Well after all that hair pulling (of course) I found the
kernel/arch/i386/boot/setup.S file.  This is the code which jumps to Linux
from a floppy boot.  Take a look in there especially the code preceding the
code32: label.  Your jump to 0x101000 has to have the 0x66 prefix or the
last bit of protected mode will not truly be set up.  What that means
essentially, is that the code segment register will not be pointing to the
appropriate location in the GDT.  While some of the code may run, as soon as
head.S trys to jump to another segment the processor will generate a GPF.  

I hope this helps.  The explanation in the setup.S file is more eloquent
that I.  There is also a book "Protected Mode Software Architecture" by Tom
Shanley published by Addison Wesley.  I don't own a copy yet, but I have
heard it contains much information about this issue.  

Most importantly, don't panic I still think you are 3/4 of the way there!
Good luck.
	Gary



P.S. I don't want to panic you, but does your system use the PCI bus?  Have
you properly set that up yet?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://list.sase.de/pipermail/openbios/attachments/20000215/e259ac2d/attachment.htm


More information about the openbios mailing list