diff options
author | Aurelien Jarno <aurelien@aurel32.net> | 2007-09-25 09:40:12 -0400 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2007-10-11 18:46:02 -0400 |
commit | 1c0c13eb935c95fd2ca0b0aca6dd4860487fb242 (patch) | |
tree | a274a6e2e56f519900fb35c544ddf279f38ca8d6 /include/asm-mips | |
parent | ea202c632a52c4a83f1bd82d8d06bc8e04f2689a (diff) |
[MIPS] Add support for BCM47XX CPUs.
Note that the BCM4710 does not support the wait instruction, this
is not a mistake in the code.
It originally comes from the OpenWrt patches.
Cc: Michael Buesch <mb@bu3sch.de>
Cc: Felix Fietkau <nbd@openwrt.org>
Cc: Florian Schirmer <jolt@tuxbox.org>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'include/asm-mips')
-rw-r--r-- | include/asm-mips/bootinfo.h | 6 | ||||
-rw-r--r-- | include/asm-mips/cpu.h | 12 | ||||
-rw-r--r-- | include/asm-mips/mach-bcm47xx/bcm47xx.h | 27 |
3 files changed, 43 insertions, 2 deletions
diff --git a/include/asm-mips/bootinfo.h b/include/asm-mips/bootinfo.h index 1bb4bf657701..efa8158f61eb 100644 --- a/include/asm-mips/bootinfo.h +++ b/include/asm-mips/bootinfo.h | |||
@@ -215,6 +215,12 @@ | |||
215 | #define MACH_GROUP_WINDRIVER 28 /* Windriver boards */ | 215 | #define MACH_GROUP_WINDRIVER 28 /* Windriver boards */ |
216 | #define MACH_WRPPMC 1 | 216 | #define MACH_WRPPMC 1 |
217 | 217 | ||
218 | /* | ||
219 | * Valid machtype for group Broadcom | ||
220 | */ | ||
221 | #define MACH_GROUP_BRCM 23 /* Broadcom */ | ||
222 | #define MACH_BCM47XX 1 /* Broadcom BCM47XX */ | ||
223 | |||
218 | #define CL_SIZE COMMAND_LINE_SIZE | 224 | #define CL_SIZE COMMAND_LINE_SIZE |
219 | 225 | ||
220 | const char *get_system_type(void); | 226 | const char *get_system_type(void); |
diff --git a/include/asm-mips/cpu.h b/include/asm-mips/cpu.h index 3857358fb6de..d67f43b09964 100644 --- a/include/asm-mips/cpu.h +++ b/include/asm-mips/cpu.h | |||
@@ -106,6 +106,13 @@ | |||
106 | #define PRID_IMP_SR71000 0x0400 | 106 | #define PRID_IMP_SR71000 0x0400 |
107 | 107 | ||
108 | /* | 108 | /* |
109 | * These are the PRID's for when 23:16 == PRID_COMP_BROADCOM | ||
110 | */ | ||
111 | |||
112 | #define PRID_IMP_BCM4710 0x4000 | ||
113 | #define PRID_IMP_BCM3302 0x9000 | ||
114 | |||
115 | /* | ||
109 | * Definitions for 7:0 on legacy processors | 116 | * Definitions for 7:0 on legacy processors |
110 | */ | 117 | */ |
111 | 118 | ||
@@ -217,8 +224,9 @@ | |||
217 | #define CPU_R14000 64 | 224 | #define CPU_R14000 64 |
218 | #define CPU_LOONGSON1 65 | 225 | #define CPU_LOONGSON1 65 |
219 | #define CPU_LOONGSON2 66 | 226 | #define CPU_LOONGSON2 66 |
220 | 227 | #define CPU_BCM3302 67 | |
221 | #define CPU_LAST 66 | 228 | #define CPU_BCM4710 68 |
229 | #define CPU_LAST 68 | ||
222 | 230 | ||
223 | /* | 231 | /* |
224 | * ISA Level encodings | 232 | * ISA Level encodings |
diff --git a/include/asm-mips/mach-bcm47xx/bcm47xx.h b/include/asm-mips/mach-bcm47xx/bcm47xx.h new file mode 100644 index 000000000000..a2fb5e8dd6c6 --- /dev/null +++ b/include/asm-mips/mach-bcm47xx/bcm47xx.h | |||
@@ -0,0 +1,27 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2007 Aurelien Jarno <aurelien@aurel32.net> | ||
3 | * | ||
4 | * This program is free software; you can redistribute it and/or | ||
5 | * modify it under the terms of the GNU General Public License | ||
6 | * as published by the Free Software Foundation; either version 2 | ||
7 | * of the License, or (at your option) any later version. | ||
8 | * | ||
9 | * This program is distributed in the hope that it will be useful, | ||
10 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
11 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
12 | * GNU General Public License for more details. | ||
13 | * | ||
14 | * You should have received a copy of the GNU General Public License | ||
15 | * along with this program; if not, write to the Free Software | ||
16 | * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. | ||
17 | */ | ||
18 | |||
19 | #ifndef __ASM_BCM47XX_H | ||
20 | #define __ASM_BCM47XX_H | ||
21 | |||
22 | /* SSB bus */ | ||
23 | extern struct ssb_bus ssb_bcm47xx; | ||
24 | |||
25 | extern void bcm47xx_time_init(void); | ||
26 | |||
27 | #endif /* __ASM_BCM47XX_H */ | ||