| From 825cc67e56b5e624a05f6850a86d91508b786848 Mon Sep 17 00:00:00 2001 |
| From: Jonas Gorski <jogo@openwrt.org> |
| Date: Sat, 7 Dec 2013 14:36:56 +0100 |
| Subject: [PATCH 24/44] MIPS: BCM63XX: detect BCM6368 variants |
| |
| The DSL-less BCM6368 variant BCM6367 uses a different chip id. Apart |
| from missing DSL, there is no difference to BCM6368, so treat it such. |
| |
| Signed-off-by: Jonas Gorski <jogo@openwrt.org> |
| --- |
| arch/mips/bcm63xx/cpu.c | 4 ++++ |
| arch/mips/include/asm/mach-bcm63xx/bcm63xx_cpu.h | 3 +++ |
| 2 files changed, 7 insertions(+) |
| |
| --- a/arch/mips/bcm63xx/cpu.c |
| +++ b/arch/mips/bcm63xx/cpu.c |
| @@ -393,8 +393,12 @@ void __init bcm63xx_cpu_init(void) |
| |
| break; |
| case BCM6368_CPU_ID: |
| + case BCM6369_CPU_ID: |
| bcm63xx_regs_base = bcm6368_regs_base; |
| bcm63xx_irqs = bcm6368_irqs; |
| + |
| + /* BCM6369 is a BCM6368 without xDSL, so treat it the same */ |
| + bcm63xx_cpu_id = BCM6368_CPU_ID; |
| break; |
| default: |
| panic("unsupported broadcom CPU %x", bcm63xx_cpu_id); |
| --- a/arch/mips/include/asm/mach-bcm63xx/bcm63xx_cpu.h |
| +++ b/arch/mips/include/asm/mach-bcm63xx/bcm63xx_cpu.h |
| @@ -21,6 +21,7 @@ |
| #define BCM6361_CPU_ID 0x6361 |
| #define BCM6362_CPU_ID 0x6362 |
| #define BCM6368_CPU_ID 0x6368 |
| +#define BCM6369_CPU_ID 0x6369 |
| |
| void __init bcm63xx_cpu_init(void); |
| u32 bcm63xx_get_cpu_variant(void); |
| @@ -107,6 +108,8 @@ static inline u16 __pure bcm63xx_get_cpu |
| (bcm63xx_get_cpu_variant() == BCM6362_CPU_ID) |
| #define BCMCPU_VARIANT_IS_6368() \ |
| (bcm63xx_get_cpu_variant() == BCM6368_CPU_ID) |
| +#define BCMCPU_VARIANT_IS_6369() \ |
| + (bcm63xx_get_cpu_variant() == BCM6369_CPU_ID) |
| |
| /* |
| * While registers sets are (mostly) the same across 63xx CPU, base |