答复: 答复: High-End Desktop Support

Yinghai Lu yhlu at tyan.com
Sat Jun 14 16:54:00 CEST 2003


Eric,

Thanks for the quick response.
>> 3. If enable RELOCATION: got error: It can not calculate the file
size, and
>> keep print " 61:rom_read_bytes() - skipping block 16"
>The only difference in the loader that looks relevant
>is the second PT_LOAD segment now has a size.
>You are not running mkelfImage on the etherboot file are you?
>That is only need for the Linux kernel.

Yes, I didn't mkelfImage, I only use that to transfer kernel and add
some tags, at last the ELF files is put into the boot server's
/tftpboot.

In the Config, You said that 5.2 need all drivers to support RELOCATION.
So Does the E1000 driver support RELOCATION yet?

Your snippet is for RELOCATION or not?

Regards

Yinghai Lu

-----ÓʼþÔ­¼þ-----
·¢¼þÈË: Eric W. Biederman [mailto:eric at lnxi.com] ´ú±í Eric W. Biederman
·¢ËÍʱ¼ä: 2003Äê6ÔÂ14ÈÕ 9:23
ÊÕ¼þÈË: YhLu
³­ËÍ: ron minnich; linuxbios at clustermatic.org; Etherboot Developers
Ö÷Ìâ: Re: ´ð¸´: High-End Desktop Support

YhLu <YhLu at tyan.com> writes:

> Eric and Ron,
> 
> I can get into the Etherboot now.  But I meet problem again:
> 
> Etherboot 5.0.10 (Last Product version) only support Intel 82544. Tyan
s2725
> uses Intel 82646EB. (DeviceID is ox1010).
> So It said" No Adapter found". 
> 
> Etherboot 5.1.8 seems support 82546, But I found
> 1. can not make EBI, have to use ELF. It is around 30KB.

Correct.  You can also make zelf if that helps.  There was
a naming cleanup in the extensions used by etherboot.

> 2. If disable RELOCATION : got error: NO HEAP FOUND.
Something is very wrong here even though etherboot got
loaded.  There are PT_LOAD segments.  Etherboot only has one.
Something looks corrupted.

> 3. If enable RELOCATION: got error: It can not calculate the file
size, and
> keep print " 61:rom_read_bytes() - skipping block 16"

The only difference in the loader that looks relevant
is the second PT_LOAD segment now has a size.


You are not running mkelfImage on the etherboot file are you?
That is only need for the Linux kernel.

> My Question is:
> 1. When do you plan to support 82546? In 5.0.11 or 5.2.0.
5.0.x never.  GigE drivers are to large, to easily support there.
Plus the LinuxBIOS support isn't half as good in 5.0.x.  

As for 5.2.x whenever there is enough consensus among the developers
that we are there.  We are quite close but...

p.s. Someone remind me to put calculate the checksum on the
etherboot image in apply_elf_prefix...

> 2. Is there any easy way to modify 5.0.10 to make it work with Intel
82546?

No.


Here is a snippet of what the loader Loading etherboot should look like.
------------------------------

Found ELF candiate at offset 0
Loading Etherboot version: 5.1.8pre5
Dropping non PT_LOAD segment
New segment addr 0x20000 size 0x21aa2 offset 0xc0 filesize 0x61de
(cleaned up) New segment addr 0x20000 size 0x21aa2 offset 0xc0 filesize
0x61de
Loading Segment: addr: 0x0000000000020000 memsz: 0x0000000000021aa2
filesz: 0x00000000000061de
Clearing Segment: addr: 0x00000000000261de memsz: 0x000000000001b8c4
Jumping to boot code at 0x20000
ROM segment 0xdffe length 0xd050 reloc 0x00020000

> 
> 222222222222222222222222222222222222222222222222222
> Welcome to elfboot, the open sourced starter.
> January 2002, Eric Biederman.
> Version 1.2
> 
>     37:init_bytes() - zkernel_start:0xffff0000
zkernel_mask:0x0000ffff
> Found ELF candiate at offset 0
> Dropping non PT_LOAD segment
> New segment addr 0x20000 size 0x10e80c3 offset 0xb0 filesize 0x755c
> (cleaned up) New segment addr 0x20000 size 0x10e80c3 offset 0xb0
filesize
> 0x755c
> 
> Loading Segment: addr: 0x000000003ffca7e8 memsz: 0x000000000000ec0c
filesz:
> 0x00
> 0000000000755c
> Clearing Segment: addr: 0x000000003ffd1d44 memsz: 0x00000000000076b0
> Loading Segment: addr: 0x000000000002ec0c memsz: 0x00000000010d94b7
filesz:
> 0x00
> 00000000000000
> Clearing Segment: addr: 0x000000000002ec0c memsz: 0x00000000010d94b7
> Jumping to boot code at 0x20000
> ROM segment 0x0000 length 0xfbf8 reloc 0x00020000
> CPU 1343 Mhz
> Etherboot 5.1.8 (GPL) Tagged ELF (Multiboot) for [E1000]
> init_heap: No heap found.
> 
> 22222222222222222222222222222222222222222222222222222222222222222
> 
>
333333333333333333333333333333333333333333333333333333333333333333333333
33
> Welcome to elfboot, the open sourced starter.
> January 2002, Eric Biederman.
> Version 1.2
> 
>     37:init_bytes() - zkernel_start:0xffff0000
zkernel_mask:0x0000ffff
> Found ELF candiate at offset 0
> Dropping non PT_LOAD segment
> New segment addr 0x20000 size 0x1106000 offset 0xb0 filesize 0x76bcc3
> (cleaned up) New segment addr 0x20000 size 0x1106000 offset 0xb0
filesize
> 0x76bc
> c3
> Loading Segment: addr: 0x000000003ffca7e8 memsz: 0x000000000000ec0c
filesz:
> 0x00
> 0000000000ec0c
> Loading Segment: addr: 0x000000000002ec0c memsz: 0x00000000010f73f4
filesz:
> 0x00
> 0000000075d0b7
>     61:rom_read_bytes() - skipping block 16
>     61:rom_read_bytes() - skipping block 16
>     61:rom_read_bytes() - skipping block 16
>     61:rom_read_bytes() - skipping block 16
>     61:rom_read_bytes() - skipping block 16
>     61:rom_read_bytes() - skipping block 16
>     61:rom_read_bytes() - skipping block 16
>
333333333333333333333333333333333333333333333333333333333333333333333333
3333
> 3
> 
> -----ÓʼþÔ­¼þ-----
> ·¢¼þÈË: YhLu 
> ·¢ËÍʱ¼ä: 2003Äê6ÔÂ13ÈÕ 0:27
> ÊÕ¼þÈË: ron minnich; ebiederman at lnxi.com
> ³­ËÍ: linuxbios at clustermatic.org
> Ö÷Ìâ: ´ð¸´: High-End Desktop Support
> 
> Eric,
> 
> I am working on porting linuxbios to Tyan s2725. The southbridge is
ICH5.
> 
> I have copied 82801ca to 82801er. And update pci_ids.h to add some
ICH5
> device id.
> 
> I compare the Intel whitepaper, only need to comment out several line
in
> ich5_ioapi.c. because ICH5 has no operation to index 3 reg.
> 
> I didn't initialize USB and Serial ATA. 
> 
> I used e1000.ebi from Etherboot 5.0.8. 
> 
> I only got the following result. The ebi size is 18164, so I set
> ROM_IMAGE_SIZE to 46*1024. 
> 
> I wonder why the size if not right: 0x4564 = 17764. But the EBI is
18164.
> 
> Regards
> 
> Yinghai Lu
> 
> Console output:
> 
> Welcome to elfboot, the open sourced starter.
> January 2002, Eric Biederman.
> Version 1.2
> 
>     37:init_bytes() - zkernel_start:0xffff0000
zkernel_mask:0x0000ffff
> Found ELF candiate at offset 0
> New segment addr 0x94000 size 0x7168 offset 0x60 filesize 0x4564
> (cleaned up) New segment addr 0x94000 size 0x7168 offset 0x60 filesize
> 0x4564
> Loading Segment: addr: 0x0000000000094000 memsz: 0x0000000000007168
filesz:
> 0x00
> 00000000004564
> Clearing Segment: addr: 0x0000000000098564 memsz: 0x0000000000002c04
> Jumping to boot code at
> 0x€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€
> 
>
€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€
€€€€
> 




More information about the coreboot mailing list