On Sat, Jun 11, 2011 at 7:27 AM, Hamo <[email protected]> wrote: > Dear lists, > First of all, let me say thanks to Stefan for his patch and help on > porting. Without his patch, I couldn't figure out what shall I do and > what to do with CBFS on ARM. Following is the first thought on how to > implement it, justing using qemu-arm (versatilepb) as an example. > After power on, At 0x0, start execution at reset from > src/cpu/arm/arm926ejs/start.S. It will simply jump to the actual start > code. Following, it will set CPU to SVC32 mode and do some basic setup > then go toboard-specific lowlevel_init function to init the ram. After > that, ram is ready to use. Because it is easier initing ram than X86, > no romstage needed. After set the sp pointer, we move to CBFS and find > the ramstage then move it to ram and run it. > We do some init in ramstage and then move to payload. > > src/mainboard/emulation/qemu-arm will be the dir for this board. In > this dir, Kconfig will set some configs for this board, including CPU > and its variant type, rambase address of this board and so on. > lowlevel.S will be the place where ram and console init code placed. > src/arch/arm will be the key dir that holds arm-specific lib, headers > and Makefile just like X86's. > src/cpu/arm/arm926ejs is for all cpu that uses arm926ejs core. CPU > variant will be a subdir under this dir and holding CPU > variant-specific lib and headers. > > Thanks, > Hamo
Hi Hamo, This seems like a reasonable layout. Do you have any specific concerns about the implementation? Marc -- http://se-eng.com -- coreboot mailing list: [email protected] http://www.coreboot.org/mailman/listinfo/coreboot

