RE: fallback reset_vector offset

2005-01-26 Thread YhLu
Yes the posion in rom

Linbios_ram.rom
auto.c
entry
failover
reset_vector

just need to make sure entry/failover is in 64k limit.  So enable_rom in
failover can be executed.


YH

> Progress however unless I am mistaken this will fail 
> miserably on an 8111 that only enables 64KiB of ROM by default.
> 
> I think all of failover.c needs to be put in the magic 
> position, if we are going to allow arbitrary memory size code.
> 
> Eric
> 
___
Linuxbios mailing list
Linuxbios@clustermatic.org
http://www.clustermatic.org/mailman/listinfo/linuxbios


Re: fallback reset_vector offset

2005-01-25 Thread Eric W. Biederman
YhLu <[EMAIL PROTECTED]> writes:

> The problem solved.
> 
> I switch the auto.c... before reset.inc in MB Config.lb
> 
> Also add two inc in it
> 
> mainboardinit arch/i386/lib/jmp_auto_out.inc
> after auto.c segment
> 
> mainboardinit arch/i386/lib/jmp_auto.inc
> in old auto.c position
> 
> please advise where to put these two inc.
> 
> jmp_auto_out.inc
> /* -*- asm -*- */
> 
> /* clear boot_complete flag */
> xorl%ebp, %ebp
> jmp __main
> 
> jmp_auto.inc
> 
> /* -*- asm -*- */
> jmp __fpu_start


Progress however unless I am mistaken this will fail miserably on
an 8111 that only enables 64KiB of ROM by default.

I think all of failover.c needs to be put in the magic position,
if we are going to allow arbitrary memory size code.

Eric
___
Linuxbios mailing list
Linuxbios@clustermatic.org
http://www.clustermatic.org/mailman/listinfo/linuxbios


RE: fallback reset_vector offset

2005-01-25 Thread YhLu
The problem solved.

I switch the auto.c... before reset.inc in MB Config.lb

Also add two inc in it

mainboardinit arch/i386/lib/jmp_auto_out.inc
after auto.c segment

mainboardinit arch/i386/lib/jmp_auto.inc
in old auto.c position

please advise where to put these two inc.

jmp_auto_out.inc
/* -*- asm -*- */

/* clear boot_complete flag */
xorl%ebp, %ebp
jmp __main

jmp_auto.inc

/* -*- asm -*- */
jmp __fpu_start


YH



> -Original Message-
> From: ebiederman@lnxi.com [mailto:[EMAIL PROTECTED] 
> Sent: Tuesday, January 25, 2005 12:31 AM
> To: YhLu
> Cc: Ronald G. Minnich; linuxbios@clustermatic.org
> Subject: Re: fallback reset_vector offset
> 
> YhLu <[EMAIL PROTECTED]> writes:
> 
> > in reset16.lds
> > 
> > _ROMTOP = (_start >= 0x) ? 0xfff0 : 0x8;
> > 
> > 
> > 0x8 ?
> 
> And from the line above.
> /* Trigger an error if I have an unuseable start 
> address */ That is exactly what happens correct? 0xfff8 
> does not work does it?
> 
> Show me a less confusing way and I will use it.
> 
> Eric
> 
___
Linuxbios mailing list
Linuxbios@clustermatic.org
http://www.clustermatic.org/mailman/listinfo/linuxbios


RE: fallback reset_vector offset

2005-01-25 Thread YhLu
 I mean 0x8 is 36 bit. and the ld will take 0x.

YH

> -Original Message-
> From: ebiederman@lnxi.com [mailto:[EMAIL PROTECTED] 
> Sent: Tuesday, January 25, 2005 12:31 AM
> To: YhLu
> Cc: Ronald G. Minnich; linuxbios@clustermatic.org
> Subject: Re: fallback reset_vector offset
> 
> YhLu <[EMAIL PROTECTED]> writes:
> 
> > in reset16.lds
> > 
> > _ROMTOP = (_start >= 0x) ? 0xfff0 : 0x8;
> > 
> > 
> > 0x8 ?
> 
> And from the line above.
> /* Trigger an error if I have an unuseable start 
> address */ That is exactly what happens correct? 0xfff8 
> does not work does it?
> 
> Show me a less confusing way and I will use it.
> 
> Eric
> 
___
Linuxbios mailing list
Linuxbios@clustermatic.org
http://www.clustermatic.org/mailman/listinfo/linuxbios


RE: fallback reset_vector offset

2005-01-25 Thread YhLu
Thanks.

I found the reason.

the crt0.s (from reset16.failoverauto...) is too big. So the _start
is across the 0x.

unless move reset16 and entry16 near reset_vector. We have to make crt0.s is
in 64K.

the linuxbios_ram.rom could cross the 64K limit above the crt0.s

YH

> -Original Message-
> From: Ronald G. Minnich [mailto:[EMAIL PROTECTED] 
> Sent: Tuesday, January 25, 2005 7:40 AM
> To: YhLu
> Cc: linuxbios@clustermatic.org
> Subject: Re: fallback reset_vector offset
> 
> send me the config file you are using. This is weird.
> 
> ron
> 
___
Linuxbios mailing list
Linuxbios@clustermatic.org
http://www.clustermatic.org/mailman/listinfo/linuxbios


Re: fallback reset_vector offset

2005-01-25 Thread Ronald G. Minnich
send me the config file you are using. This is weird.

ron

___
Linuxbios mailing list
Linuxbios@clustermatic.org
http://www.clustermatic.org/mailman/listinfo/linuxbios


Re: fallback reset_vector offset

2005-01-25 Thread Eric W. Biederman
YhLu <[EMAIL PROTECTED]> writes:

> in reset16.lds
> 
> _ROMTOP = (_start >= 0x) ? 0xfff0 : 0x8;
> 
> 
> 0x8 ?

And from the line above.
/* Trigger an error if I have an unuseable start address */
That is exactly what happens correct? 0xfff8 does not work does it?

Show me a less confusing way and I will use it.

Eric
___
Linuxbios mailing list
Linuxbios@clustermatic.org
http://www.clustermatic.org/mailman/listinfo/linuxbios


RE: fallback reset_vector offset

2005-01-24 Thread YhLu
in reset16.lds

_ROMTOP = (_start >= 0x) ? 0xfff0 : 0x8;


0x8 ?
___
Linuxbios mailing list
Linuxbios@clustermatic.org
http://www.clustermatic.org/mailman/listinfo/linuxbios


RE: fallback reset_vector offset

2005-01-24 Thread YhLu
you are right.

in linuxbios.map

_start become to 0xfffeeecc

and ROM_TOP and reset_vector become to 0xfff.

YH

___
Linuxbios mailing list
Linuxbios@clustermatic.org
http://www.clustermatic.org/mailman/listinfo/linuxbios


Re: fallback reset_vector offset

2005-01-24 Thread Eric W. Biederman
YhLu <[EMAIL PROTECTED]> writes:

> sometime the linuxbios.strip for fallback reset_vector will have 15 more
> offset.
> 
> here I set ROM_IMAGE_SIZE 0x19200, and the linuxbios.strip will be 15 bytes
> longer.  weird?
> 
> 00191f0:        e900
> 0019200: eeca fffe  e900 ef18 fffe  

You are probably exceeding the 64K jump limit, to the start of the
romcc code.  I trigger a very weird ld case when that happens so the
code will not compile.  It was the best I could do.

If you want to look at what it would take to arbitrarily relax that limit
be my guest.  If I could get a linker section to allocate space backwards
this would be trivial to fix, as it is...

Eric
___
Linuxbios mailing list
Linuxbios@clustermatic.org
http://www.clustermatic.org/mailman/listinfo/linuxbios