X-Git-Url: http://pilppa.org/gitweb/gitweb.cgi?a=blobdiff_plain;f=include%2Fasm-mips%2Fbugs.h;h=9dc10df32078e10475dd49c60248c06d31461139;hb=02cbe4749a79f880b29ce42bbb5441b8d57222e4;hp=b14b961c2100c4394305023f0621c50caf3fef31;hpb=5d54e69c68c05b162a56f9914cae72afd7e6f40a;p=linux-2.6-omap-h63xx.git diff --git a/include/asm-mips/bugs.h b/include/asm-mips/bugs.h index b14b961c210..9dc10df3207 100644 --- a/include/asm-mips/bugs.h +++ b/include/asm-mips/bugs.h @@ -1,23 +1,53 @@ /* * This is included by init/main.c to check for architecture-dependent bugs. * + * Copyright (C) 2007 Maciej W. Rozycki + * * Needs: * void check_bugs(void); */ #ifndef _ASM_BUGS_H #define _ASM_BUGS_H -#include +#include +#include + +#include +#include + +extern int daddiu_bug; + +extern void check_bugs64_early(void); extern void check_bugs32(void); extern void check_bugs64(void); +static inline void check_bugs_early(void) +{ +#ifdef CONFIG_64BIT + check_bugs64_early(); +#endif +} + static inline void check_bugs(void) { + unsigned int cpu = smp_processor_id(); + + cpu_data[cpu].udelay_val = loops_per_jiffy; check_bugs32(); #ifdef CONFIG_64BIT check_bugs64(); #endif } +static inline int r4k_daddiu_bug(void) +{ +#ifdef CONFIG_64BIT + WARN_ON(daddiu_bug < 0); + return daddiu_bug != 0; +#else + return 0; +#endif +} + #endif /* _ASM_BUGS_H */