From 8d1ec38a1d8721330798dbfc55be456ecd964bdf Mon Sep 17 00:00:00 2001 From: Rafaël Carré Date: Mon, 24 May 2010 14:32:38 +0000 Subject: as3525: show unmasked interrupts on unhandled IRQ git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26250 a1c6a512-1295-4272-9138-f99709370657 --- firmware/target/arm/as3525/system-as3525.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'firmware/target/arm/as3525') diff --git a/firmware/target/arm/as3525/system-as3525.c b/firmware/target/arm/as3525/system-as3525.c index 44e210a3cc..80804d41da 100644 --- a/firmware/target/arm/as3525/system-as3525.c +++ b/firmware/target/arm/as3525/system-as3525.c @@ -88,7 +88,13 @@ static const char * const irqname[] = static void UIRQ(void) { unsigned int irq_no = 0; + bool masked = false; int status = VIC_IRQ_STATUS; + if(status == 0) + { + status = VIC_RAW_INTR; /* masked interrupts */ + masked = true; + } if(status == 0) panicf("Unhandled IRQ (source unknown!)"); @@ -96,7 +102,8 @@ static void UIRQ(void) while((status >>= 1)) irq_no++; - panicf("Unhandled IRQ %02X: %s", irq_no, irqname[irq_no]); + panicf("Unhandled %smasked IRQ %02X: %s (status 0x%8X)", + masked ? "" : "no", irq_no, irqname[irq_no], status); } struct vec_int_src -- cgit v1.2.3