git clone http://review.coreboot.org/p/corebootConifigure:
cd coreboot; make menuconfigSet:
Payload ---> Add a payload ---> FILO Payload ---> FILO version ---> HEAD Debugging ---> Check PIRQ table consistency Debugging ---> Output verbose malloc debug messages Debugging ---> Output verbose ACPI debug messages Debugging ---> Enable debug messages for option ROM execution Debugging ---> Built-in low-level shell Debugging ---> Trace function callsTry to build:
makeIf everything builds correctly you can process. Sometimes there is need to use cross compiler. To build one:
cd util/crossgcc
./buildgccTo explore coreboot code effectively I suggest to create tags and cscope database for coreboot. In my personal workspace I've got process that I go through before I start work (if you use my workspace configuration which is available @github you can follow below steps directly, if not adjust to your enviroment):
- run vim ;)
- :cd /path/to/code
- s<Tab> (fuzzyfinder -> bookmark dir)
- si (fuzzyfinder -> change dir)
- sr (run ctags to generate tags and cscope to build symbol database - ctags -R;cscope -R -q -b -v)
:e src/cpu/x86/16bit/reset16.inc
Put cursor over protected_start and press Ctrl-]. If everything goes ok you should jump to build/mainboard/emulation/qemu-x86/bootblock.s line 537.
In second article we dive into first phase of coreboot execution in emulated environment.
No comments:
Post a Comment