[U-Boot] Bus Fault when calling irq_install_handler

Hi,
I'm trying to add a interrupt handler. My board is based of taishan 440gx. I'm using external irq0. the moment i add the interrupt i get
Bus Fault @ 0x00000000, fixup 0x00000000 Machine check in kernel mode. Caused by (from msr): regs 0c21ec28 Unknown values in msr NIP: 00000000 XER: 20000000 LR: 0C345878 REGS: 0c21ec28 TRAP: 0200 DAR: 00000000 MSR: 00000000 EE: 0 PR: 0 FP: 0 ME: 0 IR/DR: 00
GPR00: 00000000 0C21ED18 7FFFFFFF 00000000 0E37EBDB 0C37EBDC 0C361D48 20600000 GPR08: 00000100 0C37EBDC 0C361D44 27BC86AE 0C21EC20 00200000 0C364F00 0C363000 GPR16: 00000000 00000001 00000000 00000001 00001000 0C21ED58 00000000 0C32519C GPR24: 0C325EC8 FFFFFFF7 0C34586C 00000017 0C362248 0C21EF2C 0C366538 80000000 Call backtrace: machine check
this happens in ppc4xx/interrupt.c function irq_install_handler the moment a call to mtdcr (uicer, mfdcr (uicer) | (0x80000000>> i));
FYI CONFIG_440 is set and so is CONFIG_4xx and this is not running in compatibility mode.
i checked and rechecked the polarity, trigger register setting they all seem to be correct.
Any pointers would be appreciated.
thanks !
_________________________________________________________________ Store, manage and share up to 5GB with Windows Live SkyDrive. http://skydrive.live.com/welcome.aspx?provision=1?ocid=TXT_TAGLM_WL_skydrive...

On Wednesday 05 November 2008, k b wrote:
I'm trying to add a interrupt handler. My board is based of taishan 440gx. I'm using external irq0. the moment i add the interrupt i get
Bus Fault @ 0x00000000, fixup 0x00000000 Machine check in kernel mode. Caused by (from msr): regs 0c21ec28 Unknown values in msr NIP: 00000000 XER: 20000000 LR: 0C345878 REGS: 0c21ec28 TRAP: 0200 DAR: 00000000 MSR: 00000000 EE: 0 PR: 0 FP: 0 ME: 0 IR/DR: 00
GPR00: 00000000 0C21ED18 7FFFFFFF 00000000 0E37EBDB 0C37EBDC 0C361D48 20600000 GPR08: 00000100 0C37EBDC 0C361D44 27BC86AE 0C21EC20 00200000 0C364F00 0C363000 GPR16: 00000000 00000001 00000000 00000001 00001000 0C21ED58 00000000 0C32519C GPR24: 0C325EC8 FFFFFFF7 0C34586C 00000017 0C362248 0C21EF2C 0C366538 80000000 Call backtrace: machine check
this happens in ppc4xx/interrupt.c function irq_install_handler the moment a call to mtdcr (uicer, mfdcr (uicer) | (0x80000000>> i));
This doesn't seem to be the latest code. Which U-Boot version are you using? I re-structured the 4xx interrupt handling a few months ago and now it's much "simpler".
FYI CONFIG_440 is set and so is CONFIG_4xx and this is not running in compatibility mode.
i checked and rechecked the polarity, trigger register setting they all seem to be correct.
Those are my first thoughts as well.
Any pointers would be appreciated.
Again, switch to the current U-Boot version and give it another try.
Best regards, Stefan
===================================================================== DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-0 Fax: +49-8142-66989-80 Email: office@denx.de =====================================================================
participants (2)
-
k b
-
Stefan Roese