[U-Boot] Bus Fault when calling irq_install_handler

Stefan Roese sr at denx.de
Wed Nov 5 06:02:35 CET 2008


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 at denx.de
=====================================================================


More information about the U-Boot mailing list