亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区
Chinaunix
標(biāo)題:
我對這個版比較依賴,因為高手多。發(fā)在其它版的帖子沒人回復(fù)。
[打印本頁]
作者:
冬天的落陽
時間:
2012-05-25 16:20
標(biāo)題:
我對這個版比較依賴,因為高手多。發(fā)在其它版的帖子沒人回復(fù)。
http://www.72891.cn/forum.p ... ;extra=#pid22126501
u-boot-2012.04版本,arch/arm/cpu/arm920t/start.S中有這么一句:
# if defined(CONFIG_S3C2410)
ldr r1, =0x3ff
ldr r0, =INTSUBMSK
str r1, [r0]
# endif
大意是通過設(shè)置INTSUBMSK屏蔽中斷。代碼將INTSUBMSK賦值為3FF,而我的理解應(yīng)該賦值為7FF。
理由:
2410芯片的pdf(英文)中14-18頁有個表,上面說INTSUBMSK的[0:10]為各種中斷。那么,為了屏蔽所有中斷,bit[0:10]都應(yīng)該set 1,也就是0x7FF。而uboot的代碼中,賦值為3FF,也就是說,bit10(對應(yīng)的為INT_ADC)沒有賦值。
很奇怪,沒聽說啟動時用到ADC中斷呀。
作者:
冬天的落陽
時間:
2012-05-27 09:38
自己頂。。。。。
作者:
amarant
時間:
2012-05-27 09:53
上下文沒說清楚呀。這里是為什麼屏蔽中斷?是剛上電嗎?那么可能有兩種可能:
1,代碼寫錯了,但是因為剛上電沒用到ADC的功能,所以一直也不會出現(xiàn)問題。
2,代碼就是這么寫的,出于某些原因
作者:
冬天的落陽
時間:
2012-05-27 13:51
感謝回復(fù)。
是u-boot剛上電的時候的底層初始化代碼。我個人覺得原代碼是寫錯了,確切的說,是bug。
當(dāng)然正如你說的,一直也沒出什么問題,所以大家都忽略了。
貼一下start.s的部分代碼:
/*
* the actual reset code
*/
reset:
/*
* set the cpu to SVC32 mode
*/
mrs r0,cpsr
bic r0,r0,#0x1f
orr r0,r0,#0xd3
msr cpsr,r0
/* turn off the watchdog */
#if defined(CONFIG_S3C2400)
# define pWTCON 0x15300000
# define INTMSK 0x14400008 /* Interupt-Controller base addresses */
# define CLKDIVN 0x14800014 /* clock divisor register */
#elif defined(CONFIG_S3C2410)
# define pWTCON 0x53000000
# define INTMSK 0x4A000008 /* Interupt-Controller base addresses */
# define INTSUBMSK 0x4A00001C
# define CLKDIVN 0x4C000014 /* clock divisor register */
#endif
#if defined(CONFIG_S3C2400) || defined(CONFIG_S3C2410)
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
復(fù)制代碼
歡迎光臨 Chinaunix (http://www.72891.cn/)
Powered by Discuz! X3.2