当前位置: 技术问答>linux和unix
专家都哪里去了?--中断问题
来源: 互联网 发布时间:2016-10-23
本文导语: 最近移植Linux2.6.36到mx27板子,此前有同事将Linux2.6.19.2版本移植到该板子上的。 arch中定义的中断号只有数十个,但我内核启动后,接受到错误的中断号4294950914。 我怀疑宏get_irqnr_and_base获取中断号出错, 于是把移植...
最近移植Linux2.6.36到mx27板子,此前有同事将Linux2.6.19.2版本移植到该板子上的。
arch中定义的中断号只有数十个,但我内核启动后,接受到错误的中断号4294950914。
我怀疑宏get_irqnr_and_base获取中断号出错,
于是把移植成功的Linux2.6.19.2版本中,该宏的定义,移植到了Linux2.6.36版本中。
但还是出现一样的错误中断号。
中断号由get_irqnr_and_base获取,难道这个宏定义里的寄存器写(读)操作错误了?
急求专家指点。
arch中定义的中断号只有数十个,但我内核启动后,接受到错误的中断号4294950914。
我怀疑宏get_irqnr_and_base获取中断号出错,
于是把移植成功的Linux2.6.19.2版本中,该宏的定义,移植到了Linux2.6.36版本中。
但还是出现一样的错误中断号。
中断号由get_irqnr_and_base获取,难道这个宏定义里的寄存器写(读)操作错误了?
急求专家指点。
|
你调试一下那个宏应该就OK了,返回的时候不是把中断号放在r0里面的吗,看看r0的值就行了,如果还不行,把那宏改成函数,用low level debug调试一下。如果有JTAG的话,跟踪一下肯定一目了然了。