为了熟悉一下uboot,所以想在uboot中实现一下LED的驱动,现记录一下。
先看看uboot的大概执行流程,real6410板子配套的源代码好像跟原始的Uboot不一样,暂时按其配套的来做:
uboot中最先执行的是start.s,位于\cpu\s3c64xx路径下,通过调用函数start_armboot();跳转到board.c中执行,board.c位于\lib_arm中,接下来会调用cpu_init();board_init();dram_init();main_loop();等函数来初始化开发板中
的硬件资源,最后uboot中的各下载选项菜单就位于main_loop();函数中。这几个函数所在文件的路径分别如下:
cpu_init() --\cpu\s3c64xx\cpu.c
board_init()
dram_init() -- \board\samsung\smdk6410\smdk6410.c
main_loop --\common\main.c
整个执行流程如下图:
start.s
|
|start_armboor();
board.c
--------------------------------------
先看看uboot的大概执行流程,real6410板子配套的源代码好像跟原始的Uboot不一样,暂时按其配套的来做:
uboot中最先执行的是start.s,位于\cpu\s3c64xx路径下,通过调用函数start_armboot();跳转到board.c中执行,board.c位于\lib_arm中,接下来会调用cpu_init();board_init();dram_init();main_loop();等函数来初始化开发板中
的硬件资源,最后uboot中的各下载选项菜单就位于main_loop();函数中。这几个函数所在文件的路径分别如下:
cpu_init() --\cpu\s3c64xx\cpu.c
board_init()
dram_init() -- \board\samsung\smdk6410\smdk6410.c
main_loop --\common\main.c
整个执行流程如下图:
start.s
|
|start_armboor();
board.c
--------------------------------------