[coreboot] coreboot+filo

sebastien basset sbhome1 at gmail.com
Fri Mar 3 14:57:55 CET 2017


when i see filo.elf with readelf -a :

ELF Header:
  Magic:   7f 45 4c 46 01 01 01 00 00 00 00 00 00 00 00 00
  Class:                             ELF32
  Data:                              2's complement, little endian
  Version:                           1 (current)
  OS/ABI:                            UNIX - System V
  ABI Version:                       0
  Type:                              EXEC (Executable file)
  Machine:                           Intel 80386
  Version:                           0x1
  Entry point address:               0x100000
  Start of program headers:          52 (bytes into file)
  Start of section headers:          1255408 (bytes into file)
  Flags:                             0x0
  Size of this header:               52 (bytes)
  Size of program headers:           32 (bytes)
  Number of program headers:         1
  Size of section headers:           40 (bytes)
  Number of section headers:         10
  Section header string table index: 9

Section Headers:
  [Nr] Name              Type            Addr     Off    Size   ES Flg Lk
Inf Al
  [ 0]                   NULL            00000000 000000 000000 00      0
0  0
  [ 1] .text             PROGBITS        00100000 100000 01e416 00  AX  0
0 16
  [ 2] .boot             PROGBITS        0011e418 11e418 000064 00  AX  0
0  4
  [ 3] .rodata           PROGBITS        0011e480 11e480 0047f7 00   A  0
0 32
  [ 4] .eh_frame         PROGBITS        00122c78 122c78 00d144 00   A  0
0  4
  [ 5] .data             PROGBITS        0012fdc0 12fdc0 002980 00  WA  0
0 32
  [ 6] .hdr.mb           PROGBITS        00132740 132740 00000c 00  WA  0
0  4
  [ 7] .initctx          PROGBITS        00132760 132760 000048 00  WA  0
0 32
  [ 8] .bss              NOBITS          001327c0 1327a8 041920 00  WA  0
0 32
  [ 9] .shstrtab         STRTAB          00000000 1327a8 000045 00      0
0  1
Key to Flags:
  W (write), A (alloc), X (execute), M (merge), S (strings)
  I (info), L (link order), G (group), T (TLS), E (exclude), x (unknown)
  O (extra OS processing required) o (OS specific), p (processor specific)

There are no section groups in this file.

Program Headers:
  Type           Offset   VirtAddr   PhysAddr   FileSiz MemSiz  Flg Align
  LOAD           0x000000 0x00000000 0x00000000 0x1327a8 0x1740e0 RWE
0x200000

 Section to Segment mapping:
  Segment Sections...
   00     .text .boot .rodata .eh_frame .data .hdr.mb .initctx .bss

There is no dynamic section in this file.

There are no relocations in this file.

The decoding of unwind sections for machine type Intel 80386 is not
currently supported.

No version information found in this file.


readelf -a  seabios:

ELF Header:
  Magic:   7f 45 4c 46 01 01 01 00 00 00 00 00 00 00 00 00
  Class:                             ELF32
  Data:                              2's complement, little endian
  Version:                           1 (current)
  OS/ABI:                            UNIX - System V
  ABI Version:                       0
  Type:                              EXEC (Executable file)
  Machine:                           Intel 80386
  Version:                           0x1
  Entry point address:               0xff06e
  Start of program headers:          52 (bytes into file)
  Start of section headers:          114388 (bytes into file)
  Flags:                             0x0
  Size of this header:               52 (bytes)
  Size of program headers:           32 (bytes)
  Number of program headers:         1
  Size of section headers:           40 (bytes)
  Number of section headers:         3
  Section header string table index: 2

Section Headers:
  [Nr] Name              Type            Addr     Off    Size   ES Flg Lk
Inf Al
  [ 0]                   NULL            00000000 000000 000000 00      0
0  0
  [ 1] .text             PROGBITS        000e41a0 000060 01be60 00 WAX  0
0 32
  [ 2] .shstrtab         STRTAB          00000000 01bec0 000011 00      0
0  1
Key to Flags:
  W (write), A (alloc), X (execute), M (merge), S (strings)
  I (info), L (link order), G (group), T (TLS), E (exclude), x (unknown)
  O (extra OS processing required) o (OS specific), p (processor specific)

There are no section groups in this file.

Program Headers:
  Type           Offset   VirtAddr   PhysAddr   FileSiz MemSiz  Flg Align
  LOAD           0x000060 0x000e41a0 0x000e41a0 0x1be60 0x1be60 RWE 0x20

 Section to Segment mapping:
  Segment Sections...
   00     .text

There is no dynamic section in this file.

There are no relocations in this file.

The decoding of unwind sections for machine type Intel 80386 is not
currently supported.

No version information found in this file.




when i use seabios as payload :

Loading segment from ROM address 0xfff1c5f8
  code (compression=1)
  New segment dstaddr 0xe41a0 memsize 0x1be60 srcaddr 0xfff1c630 filesize
0xe6bb
Loading segment from ROM address 0xfff1c614
  Entry Point 0x000ff06e
Payload being loaded at below 1MiB without region being marked as RAM
usable.
Bounce Buffer at 7cbf8000, 397312 bytes
Loading Segment: addr: 0x00000000000e41a0 memsz: 0x000000000001be60 filesz:
0x000000000000e6bb
lb: [0x0000000000100000, 0x0000000000130800)
Post relocation: addr: 0x00000000000e41a0 memsz: 0x000000000001be60 filesz:
0x000000000000e6bb
using LZMA
[ 0x000e41a0, 00100000, 0x00100000) <- fff1c630
dest 000e41a0, end 00100000, bouncebuffer 7cbf8000
Loaded segments
Calling FspNotify(0x00000040)
POST: 0x95
src/soc/intel/braswell/southcluster.c/finalize_chipset ( 0x00000000 )
Finalizing SMM.
BS: BS_PAYLOAD_LOAD times (us): entry 0 run 105509 exit 28406
POST: 0x7b
Jumping to boot code at 000ff06e(7cc8e000)
POST: 0xf8
CPU0: stack: 00127000 - 00128000, lowest used address 00127a70, stack used:
1424 bytes
entry    = 0x000ff06e
lb_start = 0x00100000
lb_size  = 0x00030800
buffer   = 0x7cbf8000
SeaBIOS (version rel-1.9.3-0-ge2fc41e)


for seabios   New segment dstaddr 0xe41a0 memsize 0x1be60 srcaddr
0xfff1c630 filesize 0xe6bb
 and filo New segment dstaddr 0x0 memsize 0x1740e0 srcaddr 0xfff1c630
filesize 0x179c3


why dstaddr 0x0 for filo ? how to change ...



2017-03-03 10:38 GMT+01:00 sebastien basset <sbhome1 at gmail.com>:

> Hi all,
>
> - i use this config:
>
>     582 CONFIG_PAYLOAD_FILO=y
>     589 CONFIG_FILO_MASTER=y
>     590 CONFIG_PAYLOAD_FILE="payloads/external/FILO/filo/build/filo.elf"
>     591 CONFIG_PAYLOAD_OPTIONS=""
>
> My logs:
>
> BS: BS_WRITE_TABLES times (us): entry 166670 run 767112 exit 0
> POST: 0x7a
> CBFS: 'Master Header Locator' located CBFS at [700100:7fffc0)
> CBFS: Locating 'fallback/payload'
> CBFS: Found @ offset 1c4c0 size 179fb
> Loading segment from ROM address 0xfff1c5f8
>   code (compression=1)
>   New segment dstaddr 0x0 memsize 0x1740e0 srcaddr 0xfff1c630 filesize
> 0x179c3
> Loading segment from ROM address 0xfff1c614
>   Entry Point 0x00100000
> SELF Payload doesn't target RAM:
> Failed Segment: 0x0, 1523936 bytes
>  0. 0000000000000000-0000000000000fff: CONFIGURATION TABLES
>  1. 0000000000001000-000000000009ffff: RAM
>  2. 00000000000a0000-00000000000fffff: RESERVED
>  3. 0000000000100000-000000007cc58fff: RAM
>  4. 000000007cc59000-000000007cffffff: CONFIGURATION TABLES
>  5. 000000007d000000-000000007fffffff: RESERVED
>  6. 00000000e0000000-00000000efffffff: RESERVED
>  7. 00000000fea00000-00000000febfffff: RESERVED
>  8. 00000000fed01000-00000000fed01fff: RESERVED
>  9. 00000000fed03000-00000000fed03fff: RESERVED
> 10. 00000000fed06000-00000000fed06fff: RESERVED
> 11. 00000000fed08000-00000000fed08fff: RESERVED
> 12. 00000000fed1c000-00000000fed1cfff: RESERVED
> 13. 00000000fed80000-00000000fed83fff: RESERVED
> Payload not loaded.
>
> Filo can't loading in ram memory at @ 0x0, can you change this address ?
> How to?
>
>
> --
> Sébastien Basset
>



-- 
Sébastien Basset
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.coreboot.org/pipermail/coreboot/attachments/20170303/90206b60/attachment.html>


More information about the coreboot mailing list