diff options
Diffstat (limited to 'arch/m68knommu/platform/5407/config.c')
-rw-r--r-- | arch/m68knommu/platform/5407/config.c | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/arch/m68knommu/platform/5407/config.c b/arch/m68knommu/platform/5407/config.c index 1e8ef74ea156..8aa94837bbc3 100644 --- a/arch/m68knommu/platform/5407/config.c +++ b/arch/m68knommu/platform/5407/config.c | |||
@@ -55,11 +55,11 @@ static void __init m5407_uart_init_line(int line, int irq) | |||
55 | if (line == 0) { | 55 | if (line == 0) { |
56 | writeb(MCFSIM_ICR_LEVEL6 | MCFSIM_ICR_PRI1, MCF_MBAR + MCFSIM_UART1ICR); | 56 | writeb(MCFSIM_ICR_LEVEL6 | MCFSIM_ICR_PRI1, MCF_MBAR + MCFSIM_UART1ICR); |
57 | writeb(irq, MCF_MBAR + MCFUART_BASE1 + MCFUART_UIVR); | 57 | writeb(irq, MCF_MBAR + MCFUART_BASE1 + MCFUART_UIVR); |
58 | mcf_setimr(mcf_getimr() & ~MCFSIM_IMR_UART1); | 58 | mcf_clrimr(MCFINTC_UART0); |
59 | } else if (line == 1) { | 59 | } else if (line == 1) { |
60 | writeb(MCFSIM_ICR_LEVEL6 | MCFSIM_ICR_PRI2, MCF_MBAR + MCFSIM_UART2ICR); | 60 | writeb(MCFSIM_ICR_LEVEL6 | MCFSIM_ICR_PRI2, MCF_MBAR + MCFSIM_UART2ICR); |
61 | writeb(irq, MCF_MBAR + MCFUART_BASE2 + MCFUART_UIVR); | 61 | writeb(irq, MCF_MBAR + MCFUART_BASE2 + MCFUART_UIVR); |
62 | mcf_setimr(mcf_getimr() & ~MCFSIM_IMR_UART2); | 62 | mcf_clrimr(MCFINTC_UART1); |
63 | } | 63 | } |
64 | } | 64 | } |
65 | 65 | ||
@@ -81,13 +81,13 @@ void mcf_settimericr(unsigned int timer, unsigned int level) | |||
81 | 81 | ||
82 | if (timer <= 2) { | 82 | if (timer <= 2) { |
83 | switch (timer) { | 83 | switch (timer) { |
84 | case 2: icr = MCFSIM_TIMER2ICR; imr = MCFSIM_IMR_TIMER2; break; | 84 | case 2: icr = MCFSIM_TIMER2ICR; imr = MCFINTC_TIMER2; break; |
85 | default: icr = MCFSIM_TIMER1ICR; imr = MCFSIM_IMR_TIMER1; break; | 85 | default: icr = MCFSIM_TIMER1ICR; imr = MCFINTC_TIMER1; break; |
86 | } | 86 | } |
87 | 87 | ||
88 | icrp = (volatile unsigned char *) (MCF_MBAR + icr); | 88 | icrp = (volatile unsigned char *) (MCF_MBAR + icr); |
89 | *icrp = MCFSIM_ICR_AUTOVEC | (level << 2) | MCFSIM_ICR_PRI3; | 89 | *icrp = MCFSIM_ICR_AUTOVEC | (level << 2) | MCFSIM_ICR_PRI3; |
90 | mcf_setimr(mcf_getimr() & ~imr); | 90 | mcf_clrimr(imr); |
91 | } | 91 | } |
92 | } | 92 | } |
93 | 93 | ||
@@ -106,8 +106,6 @@ void m5407_cpu_reset(void) | |||
106 | 106 | ||
107 | void __init config_BSP(char *commandp, int size) | 107 | void __init config_BSP(char *commandp, int size) |
108 | { | 108 | { |
109 | mcf_setimr(MCFSIM_IMR_MASKALL); | ||
110 | |||
111 | #if defined(CONFIG_CLEOPATRA) | 109 | #if defined(CONFIG_CLEOPATRA) |
112 | /* Different timer setup - to prevent device clash */ | 110 | /* Different timer setup - to prevent device clash */ |
113 | mcf_timervector = 30; | 111 | mcf_timervector = 30; |