|
最近正在学习u-boot移植,首先是走读hfrk提供的已经移植好的u-boot1.1.1代码。
看到cpu/s3c44b0/start.S中的时候看到如下代码,有些不解:
/*
* mask all IRQs by clearing all bits in the INTMRs
*/
ldr r1,=INTMSK
ldr r0, =0x03fffeff
str r0, [r1]
/* ... */
#if CONFIG_S3C44B0_CLOCK_SPEED==60
ldr r0, =0x88042 /* 60MHz (Quartz=10MHz) */
#elif CONFIG_S3C44B0_CLOCK_SPEED==75
ldr r0, =0xac042 /* 75MHz */
#else
# error CONFIG_S3C44B0_CLOCK_SPEED undefined
#endif
就拿屏蔽中断的那三行来说吧。
如果根据44b0手册所讲,是不是将中断屏蔽寄存器INTMSK的26~0位全部置位就可以了?
这样的话为什么不直接把一个0x07FFFFFF存入INTMSK呢?
不知我对上面那段代码是否理解有误,
我觉得它的意思好像是想把内存地址0x03FFFEFF中的内容传递给INTMSK。
为什么要这么做呢?
另外,想顺便请教一下学习u-boot移植的推荐过程,从哪些文件开始比较合理?
谢谢。 |
|