Hello Stefan,
2008/6/25, Zhang Rui zrfail@gmail.com:
- Where is the entrance call of util/x86emu in coreboot v3?
There are several x86EMU_XXX function exported in e86emu.h. But they are called only in run_bios() in biosemu.c. I placed a printk at the beginning of run_bios() but it seems not executed. How does the codes in util/x86emu used? Where is the entrance call of util/x86emu in coreboot v3? Where should I place the code to extract LegacyBIOS to the memory? Should I write a new function and export it?
Stefan, could you help me with this question? Thanks.
I finally find that in arch/x86/, function pci_dev_init() called run_bios() in util/x86emu. The order is : pci_dev_init -->pci_rom_probe -->run_bios(vm86.c/biosemu.c)
my problem is: in pci_rom_probe, most rom_address is 0 and return NULL; only one rom_address is 0x c0000 but the rom_header->signature is 0 so it also return NULL.
So no run_bios is running.
How can I get run_bios() running and test my code in it?
Best regards.
Zhang Rui
Here is the output of qemu:
coreboot-3.0. Thu Jun 19 10:21:30 CST 2008 starting... Choosing fallback boot. LAR: Attempting to open 'fallback/initram/segment0'. LAR: Start 0xfffc0000 len 0x40000 LAR: seen member normal/option_table LAR: seen member normal/initram/segment0 LAR: seen member normal/stage2/segment0 LAR: seen member normal/stage2/segment1 LAR: seen member normal/stage2/segment2 LAR: seen member bootblock LAR: File not found! LAR: Run file fallback/initram/segment0 failed: No such file. Fallback failed. Try normal boot LAR: Attempting to open 'normal/initram/segment0'. LAR: Start 0xfffc0000 len 0x40000 LAR: seen member normal/option_table LAR: seen member normal/initram/segment0 LAR: CHECK normal/initram/segment0 @ 0xfffc0400 start 0xfffc0450 len 432 reallen 432 compression 0 entry 0x00000042 loadaddress 0x00000000 Entry point is 0xfffc0492 RAM init code started. Nothing to do. printktest1: If the immediately preceding line does not say "Nothing to do.", then execution did not start at main() Trying absolute call from non-_MAINOBJECT XIP code. Absolute call successful. Done. run_file returns with 0 Done RAM init code LAR: Attempting to open 'normal/stage2/segment0'. LAR: Start 0xfffc0000 len 0x40000 LAR: seen member normal/option_table LAR: seen member normal/initram/segment0 LAR: seen member normal/stage2/segment0 LAR: CHECK normal/stage2/segment0 @ 0xfffc0600 start 0xfffc0650 len 1 reallen 192928 compression 3 entry 0x00002000 loadaddress 0x00013e20 LAR: Compression algorithm #3 (zeroes) used LAR: Attempting to open 'normal/stage2/segment1'. LAR: Start 0xfffc0000 len 0x40000 LAR: seen member normal/option_table LAR: seen member normal/initram/segment0 LAR: seen member normal/stage2/segment0 LAR: seen member normal/stage2/segment1 LAR: CHECK normal/stage2/segment1 @ 0xfffc0660 start 0xfffc06b0 len 27389 reallen 62884 compression 1 entry 0x00002000 loadaddress 0x00002000 LAR: Compression algorithm #1 (lzma) used LAR: Attempting to open 'normal/stage2/segment2'. LAR: Start 0xfffc0000 len 0x40000 LAR: seen member normal/option_table LAR: seen member normal/initram/segment0 LAR: seen member normal/stage2/segment0 LAR: seen member normal/stage2/segment1 LAR: seen member normal/stage2/segment2 LAR: CHECK normal/stage2/segment2 @ 0xfffc71b0 start 0xfffc7200 len 774 reallen 7696 compression 1 entry 0x00002000 loadaddress 0x00012000 LAR: Compression algorithm #1 (lzma) used LAR: Attempting to open 'normal/stage2/segment3'. LAR: Start 0xfffc0000 len 0x40000 LAR: seen member normal/option_table LAR: seen member normal/initram/segment0 LAR: seen member normal/stage2/segment0 LAR: seen member normal/stage2/segment1 LAR: seen member normal/stage2/segment2 LAR: seen member bootblock LAR: File not found! LAR: load_file: No such file 'normal/stage2/segment3' LAR: load_file_segments: All loaded, entry 0x00002000 Phase 1: Very early setup... Phase 1: done Show all devs... root(Root Device): enabled 1 have_resources 0 initialized 0 cpus: Unknown device path type: 0 cpus(): enabled 1 have_resources 0 initialized 0 pci_0_0(PCI: 00:00.0): enabled 1 have_resources 0 initialized 0 pci_1_0(PCI: 00:01.0): enabled 1 have_resources 0 initialized 0 bus_0(PCI_BUS: 0000): enabled 1 have_resources 0 initialized 0 domain_0(PCI_DOMAIN: 0000): enabled 1 have_resources 0 initialized 0 Phase 2: Early setup... dev_phase2: dev root: ops 0x00012020 ops->phase2_setup_scan_bus 0x00000000 dev_phase2: dev cpus: ops 0x00000000 ops->phase2_setup_scan_bus 0x00000000 dev_phase2: dev pci_0_0: ops 0x00000000 ops->phase2_setup_scan_bus 0x00000000 dev_phase2: dev pci_1_0: ops 0x00013500 ops->phase2_setup_scan_bus 0x00000000 dev_phase2: dev bus_0: ops 0x00000000 ops->phase2_setup_scan_bus 0x00000000 dev_phase2: dev domain_0: ops 0x00013440 ops->phase2_setup_scan_bus 0x00000000 Phase 2: Done. Show all devs... root(Root Device): enabled 1 have_resources 0 initialized 0 cpus: Unknown device path type: 0 cpus(): enabled 1 have_resources 0 initialized 0 pci_0_0(PCI: 00:00.0): enabled 1 have_resources 0 initialized 0 pci_1_0(PCI: 00:01.0): enabled 1 have_resources 0 initialized 0 bus_0(PCI_BUS: 0000): enabled 1 have_resources 0 initialized 0 domain_0(PCI_DOMAIN: 0000): enabled 1 have_resources 0 initialized 0 Phase 3: Enumerating buses... dev_phase3_scan: scanning root(Root Device) scan_static_bus for root (Root Device) cpus: Unknown device path type: 0 cpus() enabled dev_phase5: bus_0(PCI_BUS: 0000) missing ops domain_0(PCI_DOMAIN: 0000) enabled domain_0(PCI_DOMAIN: 0000) scanning... dev_phase3_scan: scanning domain_0(PCI_DOMAIN: 0000) pci_scan_bus start bus 0x00012a80, bus->dev 0x00012840 PCI: pci_scan_bus for bus 00 pci_scan_bus: old_devices 0x00012b40, dev for this bus 0x00012840 (domain_0) PCI: scan devfn 0x0 to 0xff PCI: devfn 0x0 pci_scan_get_dev: list is 0x0008fecc, *list is 0x00012b40 pci_scan_get_dev: check dev bus_0 pci_scan_get_dev: child bus_0(PCI_BUS: 0000) not a pci device: it's type 3 PCI: pci_scan_bus pci_scan_get_dev returns dev None (no dev in tree yet) new_device: devcnt 1 find_device_operations: check all_device_operations[i] 0x000121c0 find_device_operations: cons 0x000121c0, cons id PCI: 1013:00b8 find_device_operations: check all_device_operations[i] 0x00013440 find_device_operations: cons 0x00013440, cons id PCI_DOMAIN: 8086:7190 find_device_operations: check all_device_operations[i] 0x00013500 find_device_operations: cons 0x00013500, cons id PCI: 8086:7010 constructor: constructor is 0x00000000 No ops found and no constructor called for PCI: 8086:1237. find_device_operations: check all_device_operations[i] 0x000121c0 find_device_operations: cons 0x000121c0, cons id PCI: 1013:00b8 find_device_operations: check all_device_operations[i] 0x00013440 find_device_operations: cons 0x00013440, cons id PCI_DOMAIN: 8086:7190 find_device_operations: check all_device_operations[i] 0x00013500 find_device_operations: cons 0x00013500, cons id PCI: 8086:7010 set_pci_ops: dev 0x0001414c(dynamic PCI: 00:00.0) set ops to 0x000120a0 PCI: 00:00.0 [PCI: 8086:1237] enabled PCI: pci_scan_bus pci_probe_dev returns dev 0x0001414c(dynamic PCI: 00:00.0) PCI: devfn 0x8 pci_scan_get_dev: list is 0x0008fecc, *list is 0x00012b40 pci_scan_get_dev: check dev bus_0 pci_scan_get_dev: child bus_0(PCI_BUS: 0000) not a pci device: it's type 3 PCI: pci_scan_bus pci_scan_get_dev returns dev None (no dev in tree yet) new_device: devcnt 2 find_device_operations: check all_device_operations[i] 0x000121c0 find_device_operations: cons 0x000121c0, cons id PCI: 1013:00b8 find_device_operations: check all_device_operations[i] 0x00013440 find_device_operations: cons 0x00013440, cons id PCI_DOMAIN: 8086:7190 find_device_operations: check all_device_operations[i] 0x00013500 find_device_operations: cons 0x00013500, cons id PCI: 8086:7010 constructor: constructor is 0x00000000 No ops found and no constructor called for PCI: 8086:7000. find_device_operations: check all_device_operations[i] 0x000121c0 find_device_operations: cons 0x000121c0, cons id PCI: 1013:00b8 find_device_operations: check all_device_operations[i] 0x00013440 find_device_operations: cons 0x00013440, cons id PCI_DOMAIN: 8086:7190 find_device_operations: check all_device_operations[i] 0x00013500 find_device_operations: cons 0x00013500, cons id PCI: 8086:7010 set_pci_ops: dev 0x00014438(dynamic PCI: 00:01.0) set ops to 0x000120a0 PCI: 00:01.0 [PCI: 8086:7000] enabled PCI: pci_scan_bus pci_probe_dev returns dev 0x00014438(dynamic PCI: 00:01.0) PCI: devfn 0x9 pci_scan_get_dev: list is 0x0008fecc, *list is 0x00012b40 pci_scan_get_dev: check dev bus_0 pci_scan_get_dev: child bus_0(PCI_BUS: 0000) not a pci device: it's type 3 PCI: pci_scan_bus pci_scan_get_dev returns dev None (no dev in tree yet) new_device: devcnt 3 find_device_operations: check all_device_operations[i] 0x000121c0 find_device_operations: cons 0x000121c0, cons id PCI: 1013:00b8 find_device_operations: check all_device_operations[i] 0x00013440 find_device_operations: cons 0x00013440, cons id PCI_DOMAIN: 8086:7190 find_device_operations: check all_device_operations[i] 0x00013500 find_device_operations: cons 0x00013500, cons id PCI: 8086:7010 find_device_operations: match constructor: constructor is 0x00013500 default device constructor called set_pci_ops: dev 0x00014724(dynamic PCI: 00:01.1) already has ops 0x00013500 PCI: 00:01.1 [PCI: 8086:7010] enabled PCI: pci_scan_bus pci_probe_dev returns dev 0x00014724(dynamic PCI: 00:01.1) PCI: devfn 0xa pci_scan_get_dev: list is 0x0008fecc, *list is 0x00012b40 pci_scan_get_dev: check dev bus_0 pci_scan_get_dev: child bus_0(PCI_BUS: 0000) not a pci device: it's type 3 PCI: pci_scan_bus pci_scan_get_dev returns dev None (no dev in tree yet) PCI: devfn 0xa, bad id 0xffffffff PCI: pci_scan_bus pci_probe_dev returns dev 0x00000000(None (not found)) PCI: devfn 0xb pci_scan_get_dev: list is 0x0008fecc, *list is 0x00012b40 pci_scan_get_dev: check dev bus_0 pci_scan_get_dev: child bus_0(PCI_BUS: 0000) not a pci device: it's type 3 PCI: pci_scan_bus pci_scan_get_dev returns dev None (no dev in tree yet) new_device: devcnt 4 find_device_operations: check all_device_operations[i] 0x000121c0 find_device_operations: cons 0x000121c0, cons id PCI: 1013:00b8 find_device_operations: check all_device_operations[i] 0x00013440 find_device_operations: cons 0x00013440, cons id PCI_DOMAIN: 8086:7190 find_device_operations: check all_device_operations[i] 0x00013500 find_device_operations: cons 0x00013500, cons id PCI: 8086:7010 constructor: constructor is 0x00000000 No ops found and no constructor called for PCI: 8086:7113. find_device_operations: check all_device_operations[i] 0x000121c0 find_device_operations: cons 0x000121c0, cons id PCI: 1013:00b8 find_device_operations: check all_device_operations[i] 0x00013440 find_device_operations: cons 0x00013440, cons id PCI_DOMAIN: 8086:7190 find_device_operations: check all_device_operations[i] 0x00013500 find_device_operations: cons 0x00013500, cons id PCI: 8086:7010 set_pci_ops: dev 0x00014a10(dynamic PCI: 00:01.3) set ops to 0x000120a0 PCI: 00:01.3 [PCI: 8086:7113] enabled PCI: pci_scan_bus pci_probe_dev returns dev 0x00014a10(dynamic PCI: 00:01.3) PCI: devfn 0xc pci_scan_get_dev: list is 0x0008fecc, *list is 0x00012b40 pci_scan_get_dev: check dev bus_0 pci_scan_get_dev: child bus_0(PCI_BUS: 0000) not a pci device: it's type 3 PCI: pci_scan_bus pci_scan_get_dev returns dev None (no dev in tree yet) PCI: devfn 0xc, bad id 0xffffffff PCI: pci_scan_bus pci_probe_dev returns dev 0x00000000(None (not found)) PCI: devfn 0xd pci_scan_get_dev: list is 0x0008fecc, *list is 0x00012b40 pci_scan_get_dev: check dev bus_0 pci_scan_get_dev: child bus_0(PCI_BUS: 0000) not a pci device: it's type 3 PCI: pci_scan_bus pci_scan_get_dev returns dev None (no dev in tree yet) PCI: devfn 0xd, bad id 0xffffffff PCI: pci_scan_bus pci_probe_dev returns dev 0x00000000(None (not found)) PCI: devfn 0xe pci_scan_get_dev: list is 0x0008fecc, *list is 0x00012b40 pci_scan_get_dev: check dev bus_0 pci_scan_get_dev: child bus_0(PCI_BUS: 0000) not a pci device: it's type 3 PCI: pci_scan_bus pci_scan_get_dev returns dev None (no dev in tree yet) PCI: devfn 0xe, bad id 0xffffffff PCI: pci_scan_bus pci_probe_dev returns dev 0x00000000(None (not found)) PCI: devfn 0xf pci_scan_get_dev: list is 0x0008fecc, *list is 0x00012b40 pci_scan_get_dev: check dev bus_0 pci_scan_get_dev: child bus_0(PCI_BUS: 0000) not a pci device: it's type 3 PCI: pci_scan_bus pci_scan_get_dev returns dev None (no dev in tree yet) PCI: devfn 0xf, bad id 0xffffffff PCI: pci_scan_bus pci_probe_dev returns dev 0x00000000(None (not found)) PCI: devfn 0x10 pci_scan_get_dev: list is 0x0008fecc, *list is 0x00012b40 pci_scan_get_dev: check dev bus_0 pci_scan_get_dev: child bus_0(PCI_BUS: 0000) not a pci device: it's type 3 PCI: pci_scan_bus pci_scan_get_dev returns dev None (no dev in tree yet) new_device: devcnt 5 find_device_operations: check all_device_operations[i] 0x000121c0 find_device_operations: cons 0x000121c0, cons id PCI: 1013:00b8 find_device_operations: match constructor: constructor is 0x000121c0 default device constructor called set_pci_ops: dev 0x00014cfc(dynamic PCI: 00:02.0) already has ops 0x000121c0 Init VGA device PCI: 00:02.0 [PCI: 1013:00b8] enabled PCI: pci_scan_bus pci_probe_dev returns dev 0x00014cfc(dynamic PCI: 00:02.0) PCI: devfn 0x18 pci_scan_get_dev: list is 0x0008fecc, *list is 0x00012b40 pci_scan_get_dev: check dev bus_0 pci_scan_get_dev: child bus_0(PCI_BUS: 0000) not a pci device: it's type 3 PCI: pci_scan_bus pci_scan_get_dev returns dev None (no dev in tree yet) new_device: devcnt 6 find_device_operations: check all_device_operations[i] 0x000121c0 find_device_operations: cons 0x000121c0, cons id PCI: 1013:00b8 find_device_operations: check all_device_operations[i] 0x00013440 find_device_operations: cons 0x00013440, cons id PCI_DOMAIN: 8086:7190 find_device_operations: check all_device_operations[i] 0x00013500 find_device_operations: cons 0x00013500, cons id PCI: 8086:7010 constructor: constructor is 0x00000000 No ops found and no constructor called for PCI: 10ec:8029. find_device_operations: check all_device_operations[i] 0x000121c0 find_device_operations: cons 0x000121c0, cons id PCI: 1013:00b8 find_device_operations: check all_device_operations[i] 0x00013440 find_device_operations: cons 0x00013440, cons id PCI_DOMAIN: 8086:7190 find_device_operations: check all_device_operations[i] 0x00013500 find_device_operations: cons 0x00013500, cons id PCI: 8086:7010 set_pci_ops: dev 0x00014fe8(dynamic PCI: 00:03.0) set ops to 0x000120a0 PCI: 00:03.0 [PCI: 10ec:8029] enabled PCI: pci_scan_bus pci_probe_dev returns dev 0x00014fe8(dynamic PCI: 00:03.0) PCI: devfn 0x20 pci_scan_get_dev: list is 0x0008fecc, *list is 0x00012b40 pci_scan_get_dev: check dev bus_0 pci_scan_get_dev: child bus_0(PCI_BUS: 0000) not a pci device: it's type 3 PCI: pci_scan_bus pci_scan_get_dev returns dev None (no dev in tree yet) PCI: devfn 0x20, bad id 0xffffffff PCI: pci_scan_bus pci_probe_dev returns dev 0x00000000(None (not found)) PCI: devfn 0x28 pci_scan_get_dev: list is 0x0008fecc, *list is 0x00012b40 pci_scan_get_dev: check dev bus_0 pci_scan_get_dev: child bus_0(PCI_BUS: 0000) not a pci device: it's type 3 PCI: pci_scan_bus pci_scan_get_dev returns dev None (no dev in tree yet) PCI: devfn 0x28, bad id 0xffffffff PCI: pci_scan_bus pci_probe_dev returns dev 0x00000000(None (not found)) PCI: devfn 0x30 pci_scan_get_dev: list is 0x0008fecc, *list is 0x00012b40 pci_scan_get_dev: check dev bus_0 pci_scan_get_dev: child bus_0(PCI_BUS: 0000) not a pci device: it's type 3 PCI: pci_scan_bus pci_scan_get_dev returns dev None (no dev in tree yet) PCI: devfn 0x30, bad id 0xffffffff PCI: pci_scan_bus pci_probe_dev returns dev 0x00000000(None (not found)) PCI: devfn 0x38 pci_scan_get_dev: list is 0x0008fecc, *list is 0x00012b40 pci_scan_get_dev: check dev bus_0 pci_scan_get_dev: child bus_0(PCI_BUS: 0000) not a pci device: it's type 3 PCI: pci_scan_bus pci_scan_get_dev returns dev None (no dev in tree yet) PCI: devfn 0x38, bad id 0xffffffff PCI: pci_scan_bus pci_probe_dev returns dev 0x00000000(None (not found)) PCI: devfn 0x40 pci_scan_get_dev: list is 0x0008fecc, *list is 0x00012b40 pci_scan_get_dev: check dev bus_0 pci_scan_get_dev: child bus_0(PCI_BUS: 0000) not a pci device: it's type 3 PCI: pci_scan_bus pci_scan_get_dev returns dev None (no dev in tree yet) PCI: devfn 0x40, bad id 0xffffffff PCI: pci_scan_bus pci_probe_dev returns dev 0x00000000(None (not found)) PCI: devfn 0x48 pci_scan_get_dev: list is 0x0008fecc, *list is 0x00012b40 pci_scan_get_dev: check dev bus_0 pci_scan_get_dev: child bus_0(PCI_BUS: 0000) not a pci device: it's type 3 PCI: pci_scan_bus pci_scan_get_dev returns dev None (no dev in tree yet) PCI: devfn 0x48, bad id 0xffffffff PCI: pci_scan_bus pci_probe_dev returns dev 0x00000000(None (not found)) PCI: devfn 0x50 pci_scan_get_dev: list is 0x0008fecc, *list is 0x00012b40 pci_scan_get_dev: check dev bus_0 pci_scan_get_dev: child bus_0(PCI_BUS: 0000) not a pci device: it's type 3 PCI: pci_scan_bus pci_scan_get_dev returns dev None (no dev in tree yet) PCI: devfn 0x50, bad id 0xffffffff PCI: pci_scan_bus pci_probe_dev returns dev 0x00000000(None (not found)) PCI: devfn 0x58 pci_scan_get_dev: list is 0x0008fecc, *list is 0x00012b40 pci_scan_get_dev: check dev bus_0 pci_scan_get_dev: child bus_0(PCI_BUS: 0000) not a pci device: it's type 3 PCI: pci_scan_bus pci_scan_get_dev returns dev None (no dev in tree yet) PCI: devfn 0x58, bad id 0xffffffff PCI: pci_scan_bus pci_probe_dev returns dev 0x00000000(None (not found)) PCI: devfn 0x60 pci_scan_get_dev: list is 0x0008fecc, *list is 0x00012b40 pci_scan_get_dev: check dev bus_0 pci_scan_get_dev: child bus_0(PCI_BUS: 0000) not a pci device: it's type 3 PCI: pci_scan_bus pci_scan_get_dev returns dev None (no dev in tree yet) PCI: devfn 0x60, bad id 0xffffffff PCI: pci_scan_bus pci_probe_dev returns dev 0x00000000(None (not found)) PCI: devfn 0x68 pci_scan_get_dev: list is 0x0008fecc, *list is 0x00012b40 pci_scan_get_dev: check dev bus_0 pci_scan_get_dev: child bus_0(PCI_BUS: 0000) not a pci device: it's type 3 PCI: pci_scan_bus pci_scan_get_dev returns dev None (no dev in tree yet) PCI: devfn 0x68, bad id 0xffffffff PCI: pci_scan_bus pci_probe_dev returns dev 0x00000000(None (not found)) PCI: devfn 0x70 pci_scan_get_dev: list is 0x0008fecc, *list is 0x00012b40 pci_scan_get_dev: check dev bus_0 pci_scan_get_dev: child bus_0(PCI_BUS: 0000) not a pci device: it's type 3 PCI: pci_scan_bus pci_scan_get_dev returns dev None (no dev in tree yet) PCI: devfn 0x70, bad id 0xffffffff PCI: pci_scan_bus pci_probe_dev returns dev 0x00000000(None (not found)) PCI: devfn 0x78 pci_scan_get_dev: list is 0x0008fecc, *list is 0x00012b40 pci_scan_get_dev: check dev bus_0 pci_scan_get_dev: child bus_0(PCI_BUS: 0000) not a pci device: it's type 3 PCI: pci_scan_bus pci_scan_get_dev returns dev None (no dev in tree yet) PCI: devfn 0x78, bad id 0xffffffff PCI: pci_scan_bus pci_probe_dev returns dev 0x00000000(None (not found)) PCI: devfn 0x80 pci_scan_get_dev: list is 0x0008fecc, *list is 0x00012b40 pci_scan_get_dev: check dev bus_0 pci_scan_get_dev: child bus_0(PCI_BUS: 0000) not a pci device: it's type 3 PCI: pci_scan_bus pci_scan_get_dev returns dev None (no dev in tree yet) PCI: devfn 0x80, bad id 0xffffffff PCI: pci_scan_bus pci_probe_dev returns dev 0x00000000(None (not found)) PCI: devfn 0x88 pci_scan_get_dev: list is 0x0008fecc, *list is 0x00012b40 pci_scan_get_dev: check dev bus_0 pci_scan_get_dev: child bus_0(PCI_BUS: 0000) not a pci device: it's type 3 PCI: pci_scan_bus pci_scan_get_dev returns dev None (no dev in tree yet) PCI: devfn 0x88, bad id 0xffffffff PCI: pci_scan_bus pci_probe_dev returns dev 0x00000000(None (not found)) PCI: devfn 0x90 pci_scan_get_dev: list is 0x0008fecc, *list is 0x00012b40 pci_scan_get_dev: check dev bus_0 pci_scan_get_dev: child bus_0(PCI_BUS: 0000) not a pci device: it's type 3 PCI: pci_scan_bus pci_scan_get_dev returns dev None (no dev in tree yet) PCI: devfn 0x90, bad id 0xffffffff PCI: pci_scan_bus pci_probe_dev returns dev 0x00000000(None (not found)) PCI: devfn 0x98 pci_scan_get_dev: list is 0x0008fecc, *list is 0x00012b40 pci_scan_get_dev: check dev bus_0 pci_scan_get_dev: child bus_0(PCI_BUS: 0000) not a pci device: it's type 3 PCI: pci_scan_bus pci_scan_get_dev returns dev None (no dev in tree yet) PCI: devfn 0x98, bad id 0xffffffff PCI: pci_scan_bus pci_probe_dev returns dev 0x00000000(None (not found)) PCI: devfn 0xa0 pci_scan_get_dev: list is 0x0008fecc, *list is 0x00012b40 pci_scan_get_dev: check dev bus_0 pci_scan_get_dev: child bus_0(PCI_BUS: 0000) not a pci device: it's type 3 PCI: pci_scan_bus pci_scan_get_dev returns dev None (no dev in tree yet) PCI: devfn 0xa0, bad id 0xffffffff PCI: pci_scan_bus pci_probe_dev returns dev 0x00000000(None (not found)) PCI: devfn 0xa8 pci_scan_get_dev: list is 0x0008fecc, *list is 0x00012b40 pci_scan_get_dev: check dev bus_0 pci_scan_get_dev: child bus_0(PCI_BUS: 0000) not a pci device: it's type 3 PCI: pci_scan_bus pci_scan_get_dev returns dev None (no dev in tree yet) PCI: devfn 0xa8, bad id 0xffffffff PCI: pci_scan_bus pci_probe_dev returns dev 0x00000000(None (not found)) PCI: devfn 0xb0 pci_scan_get_dev: list is 0x0008fecc, *list is 0x00012b40 pci_scan_get_dev: check dev bus_0 pci_scan_get_dev: child bus_0(PCI_BUS: 0000) not a pci device: it's type 3 PCI: pci_scan_bus pci_scan_get_dev returns dev None (no dev in tree yet) PCI: devfn 0xb0, bad id 0xffffffff PCI: pci_scan_bus pci_probe_dev returns dev 0x00000000(None (not found)) PCI: devfn 0xb8 pci_scan_get_dev: list is 0x0008fecc, *list is 0x00012b40 pci_scan_get_dev: check dev bus_0 pci_scan_get_dev: child bus_0(PCI_BUS: 0000) not a pci device: it's type 3 PCI: pci_scan_bus pci_scan_get_dev returns dev None (no dev in tree yet) PCI: devfn 0xb8, bad id 0xffffffff PCI: pci_scan_bus pci_probe_dev returns dev 0x00000000(None (not found)) PCI: devfn 0xc0 pci_scan_get_dev: list is 0x0008fecc, *list is 0x00012b40 pci_scan_get_dev: check dev bus_0 pci_scan_get_dev: child bus_0(PCI_BUS: 0000) not a pci device: it's type 3 PCI: pci_scan_bus pci_scan_get_dev returns dev None (no dev in tree yet) PCI: devfn 0xc0, bad id 0xffffffff PCI: pci_scan_bus pci_probe_dev returns dev 0x00000000(None (not found)) PCI: devfn 0xc8 pci_scan_get_dev: list is 0x0008fecc, *list is 0x00012b40 pci_scan_get_dev: check dev bus_0 pci_scan_get_dev: child bus_0(PCI_BUS: 0000) not a pci device: it's type 3 PCI: pci_scan_bus pci_scan_get_dev returns dev None (no dev in tree yet) PCI: devfn 0xc8, bad id 0xffffffff PCI: pci_scan_bus pci_probe_dev returns dev 0x00000000(None (not found)) PCI: devfn 0xd0 pci_scan_get_dev: list is 0x0008fecc, *list is 0x00012b40 pci_scan_get_dev: check dev bus_0 pci_scan_get_dev: child bus_0(PCI_BUS: 0000) not a pci device: it's type 3 PCI: pci_scan_bus pci_scan_get_dev returns dev None (no dev in tree yet) PCI: devfn 0xd0, bad id 0xffffffff PCI: pci_scan_bus pci_probe_dev returns dev 0x00000000(None (not found)) PCI: devfn 0xd8 pci_scan_get_dev: list is 0x0008fecc, *list is 0x00012b40 pci_scan_get_dev: check dev bus_0 pci_scan_get_dev: child bus_0(PCI_BUS: 0000) not a pci device: it's type 3 PCI: pci_scan_bus pci_scan_get_dev returns dev None (no dev in tree yet) PCI: devfn 0xd8, bad id 0xffffffff PCI: pci_scan_bus pci_probe_dev returns dev 0x00000000(None (not found)) PCI: devfn 0xe0 pci_scan_get_dev: list is 0x0008fecc, *list is 0x00012b40 pci_scan_get_dev: check dev bus_0 pci_scan_get_dev: child bus_0(PCI_BUS: 0000) not a pci device: it's type 3 PCI: pci_scan_bus pci_scan_get_dev returns dev None (no dev in tree yet) PCI: devfn 0xe0, bad id 0xffffffff PCI: pci_scan_bus pci_probe_dev returns dev 0x00000000(None (not found)) PCI: devfn 0xe8 pci_scan_get_dev: list is 0x0008fecc, *list is 0x00012b40 pci_scan_get_dev: check dev bus_0 pci_scan_get_dev: child bus_0(PCI_BUS: 0000) not a pci device: it's type 3 PCI: pci_scan_bus pci_scan_get_dev returns dev None (no dev in tree yet) PCI: devfn 0xe8, bad id 0xffffffff PCI: pci_scan_bus pci_probe_dev returns dev 0x00000000(None (not found)) PCI: devfn 0xf0 pci_scan_get_dev: list is 0x0008fecc, *list is 0x00012b40 pci_scan_get_dev: check dev bus_0 pci_scan_get_dev: child bus_0(PCI_BUS: 0000) not a pci device: it's type 3 PCI: pci_scan_bus pci_scan_get_dev returns dev None (no dev in tree yet) PCI: devfn 0xf0, bad id 0xffffffff PCI: pci_scan_bus pci_probe_dev returns dev 0x00000000(None (not found)) PCI: devfn 0xf8 pci_scan_get_dev: list is 0x0008fecc, *list is 0x00012b40 pci_scan_get_dev: check dev bus_0 pci_scan_get_dev: child bus_0(PCI_BUS: 0000) not a pci device: it's type 3 PCI: pci_scan_bus pci_scan_get_dev returns dev None (no dev in tree yet) PCI: devfn 0xf8, bad id 0xffffffff PCI: pci_scan_bus pci_probe_dev returns dev 0x00000000(None (not found)) PCI: Done for loop bus_0 ========== PCI: Left over static devices. ===================================== dev_phase3_scan: dynamic PCI: 00:00.0: busdevice 0x0001414c enabled 1 ops 0x000120a0 dev_phase3_scan: can not scan from here, returning 0 dev_phase3_scan: dynamic PCI: 00:01.0: busdevice 0x00014438 enabled 1 ops 0x000120a0 dev_phase3_scan: can not scan from here, returning 0 dev_phase3_scan: dynamic PCI: 00:01.1: busdevice 0x00014724 enabled 1 ops 0x00013500 dev_phase3_scan: can not scan from here, returning 0 dev_phase3_scan: dynamic PCI: 00:01.3: busdevice 0x00014a10 enabled 1 ops 0x000120a0 dev_phase3_scan: can not scan from here, returning 0 dev_phase3_scan: dynamic PCI: 00:02.0: busdevice 0x00014cfc enabled 1 ops 0x000121c0 dev_phase3_scan: can not scan from here, returning 0 dev_phase3_scan: dynamic PCI: 00:03.0: busdevice 0x00014fe8 enabled 1 ops 0x000120a0 dev_phase3_scan: can not scan from here, returning 0 PCI: pci_scan_bus returning with max=000 dev_phase3_scan: returning 0 scan_static_bus for root(Root Device) done dev_phase3_scan: returning 0 Phase 3: Done. Show all devs... root(Root Device): enabled 1 have_resources 0 initialized 0 cpus: Unknown device path type: 0 cpus(): enabled 1 have_resources 0 initialized 0 pci_0_0(PCI: 00:00.0): enabled 1 have_resources 0 initialized 0 pci_1_0(PCI: 00:01.0): enabled 1 have_resources 0 initialized 0 bus_0(PCI_BUS: 0000): enabled 1 have_resources 0 initialized 0 domain_0(PCI_DOMAIN: 0000): enabled 1 have_resources 0 initialized 0 dynamic PCI: 00:00.0(PCI: 00:00.0): enabled 1 have_resources 0 initialized 0 dynamic PCI: 00:01.0(PCI: 00:01.0): enabled 1 have_resources 0 initialized 0 dynamic PCI: 00:01.1(PCI: 00:01.1): enabled 1 have_resources 0 initialized 0 dynamic PCI: 00:01.3(PCI: 00:01.3): enabled 1 have_resources 0 initialized 0 dynamic PCI: 00:02.0(PCI: 00:02.0): enabled 1 have_resources 0 initialized 0 dynamic PCI: 00:03.0(PCI: 00:03.0): enabled 1 have_resources 0 initialized 0 Phase 4: Allocating resources... Phase 4: Reading resources... Root Device compute_allocate_io: base: 00000400 size: 00000000 align: 0 gran: 0 read_resources: root(Root Device) read_resources bus 0 link: 0 read_resources: root(Root Device) dtsname cpus have_resources 0 enabled 1 cpus: Unknown device path type: 0 read_resources: cpus() missing phase4_read_resources read_resources: root(Root Device) dtsname domain_0 have_resources 0 enabled 1 read_resources: domain_0(PCI_DOMAIN: 0000) read_resources bus 0 link: 0 read_resources: domain_0(PCI_DOMAIN: 0000) dtsname dynamic PCI: 00:00.0 have_resources 0 enabled 1 read_resources: domain_0(PCI_DOMAIN: 0000) dtsname dynamic PCI: 00:01.0 have_resources 0 enabled 1 read_resources: domain_0(PCI_DOMAIN: 0000) dtsname dynamic PCI: 00:01.1 have_resources 0 enabled 1 read_resources: domain_0(PCI_DOMAIN: 0000) dtsname dynamic PCI: 00:01.3 have_resources 0 enabled 1 read_resources: domain_0(PCI_DOMAIN: 0000) dtsname dynamic PCI: 00:02.0 have_resources 0 enabled 1 read_resources: domain_0(PCI_DOMAIN: 0000) dtsname dynamic PCI: 00:03.0 have_resources 0 enabled 1 read_resources: domain_0(PCI_DOMAIN: 0000) read_resources bus 0 link: 0 done read_resources: root(Root Device) read_resources bus 0 link: 0 done PCI: 00:03.0 10 * [0x00000400 - 0x000004ff] io PCI: 00:01.1 20 * [0x00000800 - 0x0000080f] io Root Device compute_allocate_io: base: 00000810 size: 00000410 align: 8 gran: 0 done Root Device compute_allocate_mem: base: 00000000 size: 00000000 align: 0 gran: 0 read_resources: root(Root Device) read_resources bus 0 link: 0 read_resources: root(Root Device) dtsname cpus have_resources 0 enabled 1 cpus: Unknown device path type: 0 read_resources: cpus() missing phase4_read_resources read_resources: root(Root Device) dtsname domain_0 have_resources 1 enabled 1 read_resources: root(Root Device) read_resources bus 0 link: 0 done PCI: 00:02.0 10 * [0x00000000 - 0x01ffffff] prefmem PCI: 00:02.0 14 * [0x02000000 - 0x02000fff] mem Root Device compute_allocate_mem: base: 02001000 size: 02001000 align: 25 gran: 0 done Phase 4: Done reading resources. Allocating VGA resource PCI: 00:02.0 Setting PCI_BRIDGE_CTL_VGA for bridge PCI_DOMAIN: 0000 Setting PCI_BRIDGE_CTL_VGA for bridge Root Device Phase 4: Setting resources... Root Device compute_allocate_io: base: 00001000 size: 00000410 align: 8 gran: 0 read_resources: root(Root Device) read_resources bus 0 link: 0 read_resources: root(Root Device) dtsname cpus have_resources 0 enabled 1 cpus: Unknown device path type: 0 read_resources: cpus() missing phase4_read_resources read_resources: root(Root Device) dtsname domain_0 have_resources 1 enabled 1 read_resources: root(Root Device) read_resources bus 0 link: 0 done PCI: 00:03.0 10 * [0x00001000 - 0x000010ff] io PCI: 00:01.1 20 * [0x00001400 - 0x0000140f] io Root Device compute_allocate_io: base: 00001410 size: 00000410 align: 8 gran: 0 done Root Device compute_allocate_mem: base: fc000000 size: 02001000 align: 25 gran: 0 read_resources: root(Root Device) read_resources bus 0 link: 0 read_resources: root(Root Device) dtsname cpus have_resources 0 enabled 1 cpus: Unknown device path type: 0 read_resources: cpus() missing phase4_read_resources read_resources: root(Root Device) dtsname domain_0 have_resources 1 enabled 1 read_resources: root(Root Device) read_resources bus 0 link: 0 done PCI: 00:02.0 10 * [0xfc000000 - 0xfdffffff] prefmem PCI: 00:02.0 14 * [0xfe000000 - 0xfe000fff] mem Root Device compute_allocate_mem: base: fe001000 size: 02001000 align: 25 gran: 0 done root(Root Device) assign_resources, bus 0 link: 0 Adding RAM resource (134217728 bytes) domain_0(PCI_DOMAIN: 0000) assign_resources, bus 0 link: 0 PCI: 00:01.1 20 <- [0x0000001400 - 0x000000140f] size 0x00000010 gran 0x04 io PCI: 00:02.0 10 <- [0x00fc000000 - 0x00fdffffff] size 0x02000000 gran 0x19 prefmem PCI: 00:02.0 14 <- [0x00fe000000 - 0x00fe000fff] size 0x00001000 gran 0x0c mem PCI: 00:03.0 10 <- [0x0000001000 - 0x00000010ff] size 0x00000100 gran 0x08 io domain_0(PCI_DOMAIN: 0000) assign_resources, bus 0 link: 0 root(Root Device) assign_resources, bus 0 link: 0 Phase 4: Done setting resources. Phase 4: Done allocating resources. Show all devs... root(Root Device): enabled 1 have_resources 0 initialized 0 cpus: Unknown device path type: 0 cpus(): enabled 1 have_resources 0 initialized 0 pci_0_0(PCI: 00:00.0): enabled 1 have_resources 0 initialized 0 pci_1_0(PCI: 00:01.0): enabled 1 have_resources 0 initialized 0 bus_0(PCI_BUS: 0000): enabled 1 have_resources 0 initialized 0 domain_0(PCI_DOMAIN: 0000): enabled 1 have_resources 1 initialized 0 dynamic PCI: 00:00.0(PCI: 00:00.0): enabled 1 have_resources 1 initialized 0 dynamic PCI: 00:01.0(PCI: 00:01.0): enabled 1 have_resources 1 initialized 0 dynamic PCI: 00:01.1(PCI: 00:01.1): enabled 1 have_resources 1 initialized 0 dynamic PCI: 00:01.3(PCI: 00:01.3): enabled 1 have_resources 1 initialized 0 dynamic PCI: 00:02.0(PCI: 00:02.0): enabled 1 have_resources 1 initialized 0 dynamic PCI: 00:03.0(PCI: 00:03.0): enabled 1 have_resources 1 initialized 0 Phase 5: Enabling resources... cpus: Unknown device path type: 0 dev_phase5: cpus() missing ops pci_dev_enable_resources: dynamic PCI: 00:00.0 (PCI: 00:00.0) cmd <- 140 pci_dev_enable_resources: dynamic PCI: 00:01.0 (PCI: 00:01.0) cmd <- 147 pci_dev_enable_resources: dynamic PCI: 00:01.1 (PCI: 00:01.1) cmd <- 141 pci_dev_enable_resources: dynamic PCI: 00:01.3 (PCI: 00:01.3) cmd <- 140 pci_dev_enable_resources: dynamic PCI: 00:02.0 (PCI: 00:02.0) cmd <- 143 pci_dev_enable_resources: dynamic PCI: 00:03.0 (PCI: 00:03.0) cmd <- 141 Phase 5: Done. Show all devs... root(Root Device): enabled 1 have_resources 0 initialized 0 cpus: Unknown device path type: 0 cpus(): enabled 1 have_resources 0 initialized 0 pci_0_0(PCI: 00:00.0): enabled 1 have_resources 0 initialized 0 pci_1_0(PCI: 00:01.0): enabled 1 have_resources 0 initialized 0 bus_0(PCI_BUS: 0000): enabled 1 have_resources 0 initialized 0 domain_0(PCI_DOMAIN: 0000): enabled 1 have_resources 1 initialized 0 dynamic PCI: 00:00.0(PCI: 00:00.0): enabled 1 have_resources 1 initialized 0 dynamic PCI: 00:01.0(PCI: 00:01.0): enabled 1 have_resources 1 initialized 0 dynamic PCI: 00:01.1(PCI: 00:01.1): enabled 1 have_resources 1 initialized 0 dynamic PCI: 00:01.3(PCI: 00:01.3): enabled 1 have_resources 1 initialized 0 dynamic PCI: 00:02.0(PCI: 00:02.0): enabled 1 have_resources 1 initialized 0 dynamic PCI: 00:03.0(PCI: 00:03.0): enabled 1 have_resources 1 initialized 0 Phase 6: Initializing devices... Phase 6: Root Device init. Phase 6: PCI: 00:01.0 init. Enabling IDE channel 1 Enabling IDE channel 2 Enabling Legacy IDE Phase 6: PCI: 00:00.0 init. PCI: pci_dev_init Probing for option ROM Phase 6: PCI: 00:01.0 init. PCI: pci_dev_init Probing for option ROM Phase 6: PCI: 00:01.1 init. Enabling IDE channel 1 Enabling IDE channel 2 Enabling Legacy IDE Phase 6: PCI: 00:01.3 init. PCI: pci_dev_init Probing for option ROM Phase 6: PCI: 00:02.0 init. PCI: pci_dev_init Probing for option ROM ROM address for PCI: 00:02.0 = c0000 PCI Expansion ROM, signature 0x0000, INIT size 0x0000, data ptr 0x0000 Incorrect Expansion ROM Header Signature 0000 Phase 6: PCI: 00:03.0 init. PCI: pci_dev_init Probing for option ROM Phase 6: Devices initialized. Show all devs... root(Root Device): enabled 1 have_resources 0 initialized 1 cpus: Unknown device path type: 0 cpus(): enabled 1 have_resources 0 initialized 0 pci_0_0(PCI: 00:00.0): enabled 1 have_resources 0 initialized 0 pci_1_0(PCI: 00:01.0): enabled 1 have_resources 0 initialized 1 bus_0(PCI_BUS: 0000): enabled 1 have_resources 0 initialized 0 domain_0(PCI_DOMAIN: 0000): enabled 1 have_resources 1 initialized 0 dynamic PCI: 00:00.0(PCI: 00:00.0): enabled 1 have_resources 1 initialized 1 dynamic PCI: 00:01.0(PCI: 00:01.0): enabled 1 have_resources 1 initialized 1 dynamic PCI: 00:01.1(PCI: 00:01.1): enabled 1 have_resources 1 initialized 1 dynamic PCI: 00:01.3(PCI: 00:01.3): enabled 1 have_resources 1 initialized 1 dynamic PCI: 00:02.0(PCI: 00:02.0): enabled 1 have_resources 1 initialized 1 dynamic PCI: 00:03.0(PCI: 00:03.0): enabled 1 have_resources 1 initialized 1 LAR: Attempting to open 'normal/option_table'. LAR: Start 0xfffc0000 len 0x40000 LAR: seen member normal/option_table LAR: CHECK normal/option_table @ 0xfffc0000 start 0xfffc0050 len 932 reallen 932 compression 0 entry 0x00000000 loadaddress 0x00000000 search_global_resources: mask 4200 type 4200 search_global_resources: dev root, have_resources 0 #resources 2 search_global_resources: dev cpus, have_resources 0 #resources 0 search_global_resources: dev pci_0_0, have_resources 0 #resources 0 search_global_resources: dev pci_1_0, have_resources 0 #resources 0 search_global_resources: dev bus_0, have_resources 0 #resources 0 search_global_resources: dev domain_0, have_resources 1 #resources 3 search_global_resources: dev domain_0, resource 0, flags 40040100 base 0x0 size 0x0 search_global_resources: dev domain_0, resource 1, flags 40040200 base 0x0 size 0x0 search_global_resources: dev domain_0, resource 2, flags e0004200 base 0x0 size 0x8000000 lb_memory_range: start 0x0 size 0x8000000 search_global_resources: dev dynamic PCI: 00:00.0, have_resources 1 #resources 0 search_global_resources: dev dynamic PCI: 00:01.0, have_resources 1 #resources 0 search_global_resources: dev dynamic PCI: 00:01.1, have_resources 1 #resources 1 search_global_resources: dev dynamic PCI: 00:01.1, resource 0, flags 60000100 base 0x1400 size 0x10 search_global_resources: dev dynamic PCI: 00:01.3, have_resources 1 #resources 0 search_global_resources: dev dynamic PCI: 00:02.0, have_resources 1 #resources 2 search_global_resources: dev dynamic PCI: 00:02.0, resource 0, flags 60001200 base 0xfc000000 size 0x2000000 search_global_resources: dev dynamic PCI: 00:02.0, resource 1, flags 60000200 base 0xfe000000 size 0x1000 search_global_resources: dev dynamic PCI: 00:03.0, have_resources 1 #resources 1 search_global_resources: dev dynamic PCI: 00:03.0, resource 0, flags 60000100 base 0x1000 size 0x100 lb_cleanup_memory_ranges: # entries 1 #0: base 0x00000000 size 0x8000000 lb_memory_range: start 0x0 size 0x500 lb_cleanup_memory_ranges: # entries 2 #0: base 0x00000500 size 0x7fffb00 #1: base 0x00000000 size 0x500 lb_memory_range: start 0xf0000 size 0x0 lb_cleanup_memory_ranges: # entries 4 #0: base 0x00000000 size 0x500 #1: base 0x00000500 size 0xefb00 #2: base 0x000f0000 size 0x7f10000 #3: base 0x000f0000 size 0x0 Wrote coreboot table at: 0x00000500 - 0x00000a74 checksum f37f Show all devs... root(Root Device): enabled 1 have_resources 0 initialized 1 cpus: Unknown device path type: 0 cpus(): enabled 1 have_resources 0 initialized 0 pci_0_0(PCI: 00:00.0): enabled 1 have_resources 0 initialized 0 pci_1_0(PCI: 00:01.0): enabled 1 have_resources 0 initialized 1 bus_0(PCI_BUS: 0000): enabled 1 have_resources 0 initialized 0 domain_0(PCI_DOMAIN: 0000): enabled 1 have_resources 1 initialized 0 dynamic PCI: 00:00.0(PCI: 00:00.0): enabled 1 have_resources 1 initialized 1 dynamic PCI: 00:01.0(PCI: 00:01.0): enabled 1 have_resources 1 initialized 1 dynamic PCI: 00:01.1(PCI: 00:01.1): enabled 1 have_resources 1 initialized 1 dynamic PCI: 00:01.3(PCI: 00:01.3): enabled 1 have_resources 1 initialized 1 dynamic PCI: 00:02.0(PCI: 00:02.0): enabled 1 have_resources 1 initialized 1 dynamic PCI: 00:03.0(PCI: 00:03.0): enabled 1 have_resources 1 initialized 1 Stage2 code done. LAR: Attempting to open 'normal/payload/segment0'. LAR: Start 0xfffc0000 len 0x40000 LAR: seen member normal/option_table LAR: seen member normal/initram/segment0 LAR: seen member normal/stage2/segment0 LAR: seen member normal/stage2/segment1 LAR: seen member normal/stage2/segment2 LAR: seen member bootblock LAR: File not found! LAR: load_file: No such file 'normal/payload/segment0' LAR: load_file_segments: Failed for normal/payload FATAL: No usable payload found.