Procházet zdrojové kódy

m68knommu: fix 5249 ColdFire UART vector setup

The address of the IVUR register is not correct, it should be offset
into the MBAR region. Without this the vector is not set to the correct
number.

Signed-off-by: Greg Ungerer <gerg@uclinux.org>
Greg Ungerer před 17 roky
rodič
revize
d62db60659
1 změnil soubory, kde provedl 2 přidání a 2 odebrání
  1. 2 2
      arch/m68knommu/platform/5249/config.c

+ 2 - 2
arch/m68knommu/platform/5249/config.c

@@ -52,11 +52,11 @@ static void __init m5249_uart_init_line(int line, int irq)
 {
 	if (line == 0) {
 		writeb(MCFSIM_ICR_LEVEL6 | MCFSIM_ICR_PRI1, MCF_MBAR + MCFSIM_UART1ICR);
-		writeb(irq, MCFUART_BASE1 + MCFUART_UIVR);
+		writeb(irq, MCF_MBAR + MCFUART_BASE1 + MCFUART_UIVR);
 		mcf_setimr(mcf_getimr() & ~MCFSIM_IMR_UART1);
 	} else if (line == 1) {
 		writeb(MCFSIM_ICR_LEVEL6 | MCFSIM_ICR_PRI2, MCF_MBAR + MCFSIM_UART2ICR);
-		writeb(irq, MCFUART_BASE2 + MCFUART_UIVR);
+		writeb(irq, MCF_MBAR + MCFUART_BASE2 + MCFUART_UIVR);
 		mcf_setimr(mcf_getimr() & ~MCFSIM_IMR_UART2);
 	}
 }