uboot启动流程(针对SH4架构st)
来源:互联网 发布:柳橙网 知乎 编辑:程序博客网 时间:2024/06/12 01:52
uboot程序流程
1.
cpu/sh/start.S
_start:
set_sr://(设置特殊寄存器MD=1,RB=0,BL=0,FD=0,IMASK=0XF)
MOV_CONST32_R0 0x400000F0
ldc r0, sr
disable_watchdog://(禁止看门狗定时器)
MOV_CONST32_R0 ST40_CPG_WTCSR
mov r0,r1
MOV_CONST16_R0 0xA500 /* WTCSR.TME=0 */
mov.w r0, @r1
#ifdef CFG_BOOT_FROM_NAND //NAND启动;在config.h中配置
#if defined(CFG_NAND_SKIP_BAD_BLOCKS_ON_RELOCATING)//自动跳过坏区
#if defined(CFG_BOOT_FROM_SPI) //从SPI启动,默认fast read
#if defined(CONFIG_SH_FLI7510)//定义则ST40_EMI_SPI_CLOCKDIV = 6,否则为4
#if defined(CONFIG_SH_STB7100) /* LMI-Sys UN-cached */
#elif defined(CONFIG_SH_STX5197) && defined(CONFIG_SH_MB704)
#elif defined(CONFIG_SH_STX5197) && defined(CONFIG_SH_5197CAB)
#elif defined(CONFIG_SH_STX7105) && defined(CONFIG_SH_MB680)
..........//定义各种板子的执行
#if defined(CFG_ENV_IS_IN_EEPROM)
lib_sh/board.c
void start_sh4boot (void)
通过此循环依次完成soc_init,timer_init,board_init,env_init,init_baudrate,serial_init,console_init_f,check_board,display_banner,init_func_ram等功能。
for (init_fnc_ptr = init_sequence; *init_fnc_ptr; ++init_fnc_ptr) {
if ((*init_fnc_ptr) () != 0) {
hang ();
}
}
然后配置有效flash bank,完成内存初始化mem_malloc_init ()。然后执行spi_init();将CFG_CTRL_M的SPI_BOOTNOTCOMMS位设置为1。使用SSC0,PIO1[7:6]无效,设置波特率发生器,禁止I2C,执行软中断。使能SSC控制器,spi_probe_serial_flash(chipsel)。
env_relocate()重置环境,env_crc_update ();CRC校验。
getenv ("ethaddr");获取MAC环境;getenv_IPaddr ("ipaddr");获取网卡IP地址
devices_init()初始化各种设备,drv_system_init ();初始化串口和Null设备
jumptable_init ();命令初始化。
console_init_r ();控制台初始化
for(;;)main_loop();
- uboot启动流程(针对SH4架构st)
- uboot启动流程和架构
- [mips-uboot]mips架构u-boot 启动流程(代码)
- 基于mips架构的uboot 启动流程 (1)
- 基于mips架构的uboot 启动流程 (2)
- 基于mips架构的uboot启动流程(3)
- 基于mips架构的uboot启动流程(4)
- 基于mips架构的uboot 启动流程 (1)
- 基于mips架构的uboot 启动流程 (2)
- 基于mips架构的uboot启动流程(3)
- 基于mips架构的uboot启动流程(4)
- uboot启动流程
- uboot启动流程
- uboot 启动流程分析
- Uboot 启动流程简介
- Uboot启动流程分析
- uboot启动流程
- uboot启动流程
- extjs 在ie8下不能正常显示解决方法
- Web网站测试技术要领集合
- Hibernate的创建过程
- 口腔修复工考试培训通知
- 探索 Linux 通用 SCSI 驱动器
- uboot启动流程(针对SH4架构st)
- CKEditor插件编写
- 学习SQL SERVER游标的使用
- MTK----获取系统时间的函数大全
- Css样式不能正常显示
- 我也想对广大程序员说一些话
- split 命令 将文件分割成几段。
- HTML连续英文字符串强制换行
- su 命令 更改与会话关联的用户标识。