ollie <[EMAIL PROTECTED]> writes:

> Eric W. Biederman wrote:
> 
> >
> >Is there any reason we need to make a far call?  My gut reaction is that
> >it is easier to make a near call and use the high alias.  For the normal
> >LinuxBIOS case this works quite well.
> >
> 
> I forgot the specific reason for this decision, it may be historical (just
> follow what normal BIOS do). But I think it
> should be that accessing DoC requires a lot of trasaction to the DoC window and
> making DS == CS helps a little bit
> in coding. Actually I am asking the same question myself recently.

If there is a codesize justification for ipl.S it makes sense.  I
forgot you had to do: mov %cs:1234, %ax

> >
> >>BTW, after everything is done. The nvram_on in southbridge.c make the F
> segment
> 
> >>mapped
> >>to RAM (for DoC cases). This is because LinuxKernel look F segment for PIRQ
> >>table.
> >>
> >
> >Nice.  Ollie if you are regularly doing this that makes at least
> >one thing easier.  If Ron keeps playing with pcbios compatibility I'll
> >have to move the linuxbios table to segment F.
> >
> 
> I think I should, or where can I put PIRQ table ??
> 
> P.S. Now I think the main reason for far jump is that hand asm it is easier. How
> 
> is the opcode for "near jmp -4KB"  ??

I think it is jmp . - 4096.
But you can also do:
.code16
top:
<code>
<code>
<code>
...
jmp top

Which is probably easier and more maintainable.

Eric

Reply via email to