Merge tag 'locking-urgent-2020-12-27' of git://git.kernel.org/pub/scm/linux/kernel...
[linux/fpc-iii.git] / arch / sh / include / asm / bugs.h
blobfe52abb69cea319374554322ddfd57376f900a97
1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef __ASM_SH_BUGS_H
3 #define __ASM_SH_BUGS_H
5 /*
6 * This is included by init/main.c to check for architecture-dependent bugs.
8 * Needs:
9 * void check_bugs(void);
13 * I don't know of any Super-H bugs yet.
16 #include <asm/processor.h>
18 extern void select_idle_routine(void);
20 static void __init check_bugs(void)
22 extern unsigned long loops_per_jiffy;
23 char *p = &init_utsname()->machine[2]; /* "sh" */
25 select_idle_routine();
27 current_cpu_data.loops_per_jiffy = loops_per_jiffy;
29 switch (current_cpu_data.family) {
30 case CPU_FAMILY_SH2:
31 *p++ = '2';
32 break;
33 case CPU_FAMILY_SH2A:
34 *p++ = '2';
35 *p++ = 'a';
36 break;
37 case CPU_FAMILY_SH3:
38 *p++ = '3';
39 break;
40 case CPU_FAMILY_SH4:
41 *p++ = '4';
42 break;
43 case CPU_FAMILY_SH4A:
44 *p++ = '4';
45 *p++ = 'a';
46 break;
47 case CPU_FAMILY_SH4AL_DSP:
48 *p++ = '4';
49 *p++ = 'a';
50 *p++ = 'l';
51 *p++ = '-';
52 *p++ = 'd';
53 *p++ = 's';
54 *p++ = 'p';
55 break;
56 case CPU_FAMILY_UNKNOWN:
58 * Specifically use CPU_FAMILY_UNKNOWN rather than
59 * default:, so we're able to have the compiler whine
60 * about unhandled enumerations.
62 break;
65 printk("CPU: %s\n", get_cpu_subtype(&current_cpu_data));
67 #ifndef __LITTLE_ENDIAN__
68 /* 'eb' means 'Endian Big' */
69 *p++ = 'e';
70 *p++ = 'b';
71 #endif
72 *p = '\0';
74 #endif /* __ASM_SH_BUGS_H */