uboot 引导arm9 平台

来源:互联网 发布:pscc破解补丁mac版 编辑:程序博客网 时间:2024/06/05 14:32

2011-03-07

15:06:36

 

uboot 引导开机启动顺序,uboot 为1.3.2 以三星920T (CPU) smdk2410 开发板为例。

 

/* 中断设置 */

.globl _start  系统复位位置
_start: b       start_code  各个异常向量对应的跳转代码 0x0
 ldr pc, _undefined_instruction  未定义的指令异常 0x4
 ldr pc, _software_interrupt  软件中断异常 0x8
 ldr pc, _prefetch_abort  内存操作异常 0xc
 ldr pc, _data_abort  数据异常 0x10
 ldr pc, _not_used  未使用 0x14
 ldr pc, _irq  慢速中断异常 0x18
 ldr pc, _fiq  快速中断异常 0x1c

 

/*
  * set the cpu to SVC32 mode

  * 用于操作系统的保护模式
  */
 mrs r0,cpsr  移动cpsr到r0
 bic r0,r0,#0x1f
 orr r0,r0,#0xd3
 msr cpsr,r0

 

/* 关闭看门狗及外部中断,设置CPU的频率 */

 if defined(CONFIG_S3C2400)
#  define pWTCON  0x15300000
#  define INTMSK  0x14400008 /* Interupt-Controller base addresses */
#  define CLKDIVN 0x14800014 /* clock divisor register */
#else
#  define pWTCON  0x53000000
#  define INTMSK  0x4A000008 /* Interupt-Controller base addresses */
#  define INTSUBMSK 0x4A00001C
#  define CLKDIVN 0x4C000014 /* clock divisor register */
# endif

 ldr     r0, =pWTCON
 mov     r1, #0x0
 str     r1, [r0]

 /*
  * mask all IRQs by setting all bits in the INTMR - default
  */
 mov r1, #0xffffffff
 ldr r0, =INTMSK
 str r1, [r0]
# if defined(CONFIG_S3C2410)
 ldr r1, =0x3ff
 ldr r0, =INTSUBMSK
 str r1, [r0]
# endif

 

 

原创粉丝点击