]> git.ipfire.org Git - thirdparty/qemu.git/commitdiff
mips/malta: fix CBUS UART interrupt pin
authorAurelien Jarno <aurelien@aurel32.net>
Wed, 14 Nov 2012 14:04:42 +0000 (15:04 +0100)
committerMichael Roth <mdroth@linux.vnet.ibm.com>
Fri, 30 Nov 2012 22:05:41 +0000 (16:05 -0600)
According to the MIPS Malta Developement Platform User's Manual, the
i8259 interrupt controller is supposed to be connected to the hardware
IRQ0, and the CBUS UART to the hardware interrupt 2.

In QEMU they are both connected to hardware interrupt 0, the CBUS UART
interrupt being wrong. This patch fixes that. It should be noted that
the irq array in QEMU includes the software interrupts, hence
env->irq[2] is the first hardware interrupt.

Cc: Ralf Baechle <ralf@linux-mips.org>
Reviewed-by: Eric Johnson <ericj@mips.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
(cherry picked from commit 68d001928b151a0c50f367c0bdca645b3d5e9ed3)

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
hw/mips_malta.c

index ad23f26e597f9ff886d72c173ee5b0caefbb2871..9289a28f7fa464886428ba953af77e76eee550d6 100644 (file)
@@ -860,7 +860,8 @@ void mips_malta_init (ram_addr_t ram_size,
     be = 0;
 #endif
     /* FPGA */
-    malta_fpga_init(system_memory, FPGA_ADDRESS, env->irq[2], serial_hds[2]);
+    /* The CBUS UART is attached to the MIPS CPU INT2 pin, ie interrupt 4 */
+    malta_fpga_init(system_memory, FPGA_ADDRESS, env->irq[4], serial_hds[2]);
 
     /* Load firmware in flash / BIOS. */
     dinfo = drive_get(IF_PFLASH, 0, fl_idx);