diff options
Diffstat (limited to 'arch/mips/kernel/cpu-probe.c')
| -rw-r--r-- | arch/mips/kernel/cpu-probe.c | 14 | 
1 files changed, 9 insertions, 5 deletions
diff --git a/arch/mips/kernel/cpu-probe.c b/arch/mips/kernel/cpu-probe.c index d5e335e6846a..9635c1db3ae6 100644 --- a/arch/mips/kernel/cpu-probe.c +++ b/arch/mips/kernel/cpu-probe.c @@ -1,3 +1,4 @@ +// SPDX-License-Identifier: GPL-2.0-or-later  /*   * Processor capabilities determination functions.   * @@ -5,11 +6,6 @@   * Copyright (C) 1994 - 2006 Ralf Baechle   * Copyright (C) 2003, 2004  Maciej W. Rozycki   * Copyright (C) 2001, 2004, 2011, 2012	 MIPS Technologies, Inc. - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License - * as published by the Free Software Foundation; either version - * 2 of the License, or (at your option) any later version.   */  #include <linux/init.h>  #include <linux/kernel.h> @@ -1973,6 +1969,14 @@ static inline void cpu_probe_ingenic(struct cpuinfo_mips *c, unsigned int cpu)  		panic("Unknown Ingenic Processor ID!");  		break;  	} + +	/* +	 * The config0 register in the Xburst CPUs with a processor ID of +	 * PRID_COMP_INGENIC_D0 report themselves as MIPS32r2 compatible, +	 * but they don't actually support this ISA. +	 */ +	if ((c->processor_id & PRID_COMP_MASK) == PRID_COMP_INGENIC_D0) +		c->isa_level &= ~MIPS_CPU_ISA_M32R2;  }  static inline void cpu_probe_netlogic(struct cpuinfo_mips *c, int cpu)  |