下载此文档

u-boot-2011.06启动流程分析.docx


文档分类:IT计算机 | 页数:约28页 举报非法文档有奖
1/28
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/28 下载此文档
文档列表 文档介绍
此文来源:SD博客,希望帮到更多的人:http://blog./zhaocju-boot支持许多CPU,以及一些常见的开发板。本文以u-boot-,简要介绍一下u-boot在smdk2410上的启动流程。 首先系统是从arch/arm/cpu/,并且实际开始执行的代码是从第117行开始:117:start_code:118:     /*119:     *setthecputoSVC32mode120:    */121:    mrs r0,cpsr122:    bic  r0,r0,#0x1f123:    orr  r0,r0,#0xd3124:    msr cpsr,r0上述代码的含义是设置cpu为SVC32模式,即超级保护模式,用于操作系统使用。 140:#ifdefCONFIG_S3C24X0141:    /*turnoffthewatchdog*/142:143:#ifdefined(CONFIG_S3C2400)144:# definepWTCON   0x**********:# defineINTMSK    0x14400008   /*Interupt-Controllerbaseaddresses*/146:# defineCLKDIVN  0x14800014   /*clockdivisorregister*/147:#else148:# definepWTCON   0x53000000149:# defineINTMSK    0x4A000008  /*Interupt-Controllerbaseaddresses*/150:# defineINTSUBMSK    0x4A00001C151:# defineCLKDIVN  0x4C000014  /*clockdivisorregister*/152:#endif153:154:    ldr  r0,=pWTCON155:    movr1,#0x0156:    str   r1,[r0]157:158:    /*159:    *maskallIRQsbysettingallbitsintheINTMR-default160:    */161:    movr1,#0xffffffff162:    ldr  r0,=INTMSK163:    str   r1,[r0]164:#ifdefined(CONFIG_S3C2410)165:    ldr  r1,=0x3ff166:    ldr  r0,=INTSUBMSK167:    str   r1,[r0]168:#endif169:170:    /*FCLK:HCLK:PCLK=1:2:4*/171:    /*defaultFCLKis120MHz!*/172:    ldr  r0,=CLKDIVN173:    movr1,#3174:    str   r1,[r0]175:#endif  /*CONFIG_S3C24X0*/该段代码的含义为,先定义几个需要的寄存器,然后关闭开门狗定时器,以及屏蔽所有中断和子中断,最后设置三个时钟频率之间的比值。 181:#ifndefCONFIG_SKIP_LOWLEVEL_INIT182:    bl   cpu_init_crit183:#endif在第182行中,程序跳转到cpu_init_crit中,,函数的位置在第328行至第356行,它的作用是设置一些重要的寄存器(如MMU和caches等)以及内存时序。其中在第353行,程序又跳转到了lowlevel_init函数,它是在board/samsung/,这个文件的目的就是为了设置内存的时序。 186:call_board_init_f:187:    ldr  sp,=(CONFIG_SYS_INIT_SP_ADDR)188:    bic  sp,sp,#7/*8-pliance*/189:    ldr  r0,=0x00000000190:    bl   board_init_f从cpu_init_crit返回后,来到了调用board_init_f的函数处。首先进行堆栈的设置,然后就跳转到board_init_f函数,其中传递给该函数的参数为0。board_init_f这个函数是在arch/arm/,函数的位置是在第268行至第422行,它的作用是初始化开发板。需要注意的是,此时程序是在flash中运行的。 下面我们就来分析boar

u-boot-2011.06启动流程分析 来自淘豆网m.daumloan.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数28
  • 收藏数0 收藏
  • 顶次数0
  • 上传人435638
  • 文件大小145 KB
  • 时间2019-02-10