aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRalf Baechle <ralf@linux-mips.org>2005-11-29 11:01:32 -0500
committerRalf Baechle <ralf@linux-mips.org>2005-12-01 06:05:16 -0500
commitdea91002d45e4f0fe83768703288e1cde917371c (patch)
tree310ddf176806bfb3e4a74774c1c2cbd255083ef7
parentedcb98d1db7d0320d7b1920c05a4f1cafe7cb798 (diff)
[MIPS] Alchemy: Fix BCSR accesses.
Fixes BCSR accesses in the board setup/reset code. The registers are actually 16-bit, and their addresses are different between DBAu1550 and other DBAu1xx0 boards. From Sergei Shtylylov <sshtylyov@ru.mvista.com>. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
-rw-r--r--arch/mips/au1000/db1x00/board_setup.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/arch/mips/au1000/db1x00/board_setup.c b/arch/mips/au1000/db1x00/board_setup.c
index ac05ba0ff63f..f00ec3b175d8 100644
--- a/arch/mips/au1000/db1x00/board_setup.c
+++ b/arch/mips/au1000/db1x00/board_setup.c
@@ -45,13 +45,12 @@
45#include <asm/mach-au1x00/au1000.h> 45#include <asm/mach-au1x00/au1000.h>
46#include <asm/mach-db1x00/db1x00.h> 46#include <asm/mach-db1x00/db1x00.h>
47 47
48/* not correct for db1550 */ 48static BCSR * const bcsr = (BCSR *)BCSR_KSEG1_ADDR;
49static BCSR * const bcsr = (BCSR *)0xAE000000;
50 49
51void board_reset (void) 50void board_reset (void)
52{ 51{
53 /* Hit BCSR.SYSTEM_CONTROL[SW_RST] */ 52 /* Hit BCSR.SYSTEM_CONTROL[SW_RST] */
54 au_writel(0x00000000, 0xAE00001C); 53 bcsr->swreset = 0x0000;
55} 54}
56 55
57void __init board_setup(void) 56void __init board_setup(void)
@@ -75,7 +74,7 @@ void __init board_setup(void)
75 bcsr->resets |= BCSR_RESETS_IRDA_MODE_OFF; 74 bcsr->resets |= BCSR_RESETS_IRDA_MODE_OFF;
76 au_sync(); 75 au_sync();
77#endif 76#endif
78 au_writel(0, 0xAE000010); /* turn off pcmcia power */ 77 bcsr->pcmcia = 0x0000; /* turn off PCMCIA power */
79 78
80#ifdef CONFIG_MIPS_MIRAGE 79#ifdef CONFIG_MIPS_MIRAGE
81 /* enable GPIO[31:0] inputs */ 80 /* enable GPIO[31:0] inputs */