/* * This file is subject to the terms and conditions of the GNU General Public * License. See the file "COPYING" in the main directory of this archive * for more details. * * Copyright (C) 1994 Waldorf GMBH * Copyright (C) 1995, 1996, 1997, 1998, 1999, 2001, 2002, 2003 Ralf Baechle * Copyright (C) 1996 Paul M. Antoine * Copyright (C) 1999, 2000 Silicon Graphics, Inc. * Copyright (C) 2004 Maciej W. Rozycki
*/ #ifndef __ASM_CPU_INFO_H #define __ASM_CPU_INFO_H
#include <linux/cache.h> #include <linux/types.h>
#include <asm/mipsregs.h>
/* * Descriptor for a cache
*/ struct cache_desc { unsignedint waysize; /* Bytes per way */ unsignedshort sets; /* Number of lines per set */ unsignedchar ways; /* Number of ways */ unsignedchar linesz; /* Size of line in bytes */ unsignedchar waybit; /* Bits to select in a cache set */ unsignedchar flags; /* Flags describing cache properties */
};
#ifdef CONFIG_CPU_LOONGSON3_CPUCFG_EMULATION /* CPUCFG data for this CPU, synthesized at probe time. * * CPUCFG select 0 is PRId, 4 and above are unimplemented for now. * So the only stored values are for CPUCFG selects 1-3 inclusive.
*/
u32 loongson3_cpucfg_data[3]; #endif
} __attribute__((aligned(SMP_CACHE_BYTES)));
staticinlineunsignedint cpu_cluster(struct cpuinfo_mips *cpuinfo)
{ /* Optimisation for systems where multiple clusters aren't used */ if (!IS_ENABLED(CONFIG_CPU_MIPSR5) && !IS_ENABLED(CONFIG_CPU_MIPSR6)) return 0;
staticinlineunsignedint cpu_vpe_id(struct cpuinfo_mips *cpuinfo)
{ /* Optimisation for systems where VP(E)s aren't used */ if (!IS_ENABLED(CONFIG_MIPS_MT_SMP) && !IS_ENABLED(CONFIG_CPU_MIPSR6)) return 0;
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.