|  | 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 |