diff options
author | Greg Ungerer <gerg@uclinux.org> | 2009-05-19 00:38:08 -0400 |
---|---|---|
committer | Greg Ungerer <gerg@uclinux.org> | 2009-09-15 19:43:50 -0400 |
commit | f2154bef817ac3d0ea67b52526fd8e88898b66f9 (patch) | |
tree | 3ffa5cf5c3ec82a59f75728a580bd9332a32ebee /arch/m68knommu/platform/5249/config.c | |
parent | 5187995f0a9253e915dfee83684eae7b692213e6 (diff) |
m68knommu: merge old ColdFire interrupt controller masking macros
Currently the code that supports setting the old style ColdFire interrupt
controller mask registers is macros in the include files of each of the
CPU types. Merge all these into a set of real masking functions in the
old Coldfire interrupt controller code proper. All the macros are basically
the same (excepting a register size difference on really early parts).
Signed-off-by: Greg Ungerer <gerg@uclinux.org>
Diffstat (limited to 'arch/m68knommu/platform/5249/config.c')
-rw-r--r-- | arch/m68knommu/platform/5249/config.c | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/arch/m68knommu/platform/5249/config.c b/arch/m68knommu/platform/5249/config.c index 365fb6c52700..7261a3d28adc 100644 --- a/arch/m68knommu/platform/5249/config.c +++ b/arch/m68knommu/platform/5249/config.c | |||
@@ -48,11 +48,11 @@ static void __init m5249_uart_init_line(int line, int irq) | |||
48 | if (line == 0) { | 48 | if (line == 0) { |
49 | writeb(MCFSIM_ICR_LEVEL6 | MCFSIM_ICR_PRI1, MCF_MBAR + MCFSIM_UART1ICR); | 49 | writeb(MCFSIM_ICR_LEVEL6 | MCFSIM_ICR_PRI1, MCF_MBAR + MCFSIM_UART1ICR); |
50 | writeb(irq, MCF_MBAR + MCFUART_BASE1 + MCFUART_UIVR); | 50 | writeb(irq, MCF_MBAR + MCFUART_BASE1 + MCFUART_UIVR); |
51 | mcf_setimr(mcf_getimr() & ~MCFSIM_IMR_UART1); | 51 | mcf_clrimr(MCFINTC_UART0); |
52 | } else if (line == 1) { | 52 | } else if (line == 1) { |
53 | writeb(MCFSIM_ICR_LEVEL6 | MCFSIM_ICR_PRI2, MCF_MBAR + MCFSIM_UART2ICR); | 53 | writeb(MCFSIM_ICR_LEVEL6 | MCFSIM_ICR_PRI2, MCF_MBAR + MCFSIM_UART2ICR); |
54 | writeb(irq, MCF_MBAR + MCFUART_BASE2 + MCFUART_UIVR); | 54 | writeb(irq, MCF_MBAR + MCFUART_BASE2 + MCFUART_UIVR); |
55 | mcf_setimr(mcf_getimr() & ~MCFSIM_IMR_UART2); | 55 | mcf_clrimr(MCFINTC_UART1); |
56 | } | 56 | } |
57 | } | 57 | } |
58 | 58 | ||
@@ -75,13 +75,13 @@ void mcf_settimericr(unsigned int timer, unsigned int level) | |||
75 | 75 | ||
76 | if (timer <= 2) { | 76 | if (timer <= 2) { |
77 | switch (timer) { | 77 | switch (timer) { |
78 | case 2: icr = MCFSIM_TIMER2ICR; imr = MCFSIM_IMR_TIMER2; break; | 78 | case 2: icr = MCFSIM_TIMER2ICR; imr = MCFINTC_TIMER2; break; |
79 | default: icr = MCFSIM_TIMER1ICR; imr = MCFSIM_IMR_TIMER1; break; | 79 | default: icr = MCFSIM_TIMER1ICR; imr = MCFINTC_TIMER1; break; |
80 | } | 80 | } |
81 | 81 | ||
82 | icrp = (volatile unsigned char *) (MCF_MBAR + icr); | 82 | icrp = (volatile unsigned char *) (MCF_MBAR + icr); |
83 | *icrp = MCFSIM_ICR_AUTOVEC | (level << 2) | MCFSIM_ICR_PRI3; | 83 | *icrp = MCFSIM_ICR_AUTOVEC | (level << 2) | MCFSIM_ICR_PRI3; |
84 | mcf_setimr(mcf_getimr() & ~imr); | 84 | mcf_clrimr(imr); |
85 | } | 85 | } |
86 | } | 86 | } |
87 | 87 | ||
@@ -100,7 +100,6 @@ void m5249_cpu_reset(void) | |||
100 | 100 | ||
101 | void __init config_BSP(char *commandp, int size) | 101 | void __init config_BSP(char *commandp, int size) |
102 | { | 102 | { |
103 | mcf_setimr(MCFSIM_IMR_MASKALL); | ||
104 | mach_reset = m5249_cpu_reset; | 103 | mach_reset = m5249_cpu_reset; |
105 | } | 104 | } |
106 | 105 | ||