diff options
Diffstat (limited to 'arch/mips/include')
| -rw-r--r-- | arch/mips/include/asm/cpu-features.h | 2 | ||||
| -rw-r--r-- | arch/mips/include/asm/mach-generic/spaces.h | 4 | ||||
| -rw-r--r-- | arch/mips/include/asm/uasm.h | 37 | ||||
| -rw-r--r-- | arch/mips/include/uapi/asm/siginfo.h | 7 |
4 files changed, 23 insertions, 27 deletions
diff --git a/arch/mips/include/asm/cpu-features.h b/arch/mips/include/asm/cpu-features.h index 1dc086087a72..fa44f3ec5302 100644 --- a/arch/mips/include/asm/cpu-features.h +++ b/arch/mips/include/asm/cpu-features.h | |||
| @@ -17,6 +17,8 @@ | |||
| 17 | #define current_cpu_type() current_cpu_data.cputype | 17 | #define current_cpu_type() current_cpu_data.cputype |
| 18 | #endif | 18 | #endif |
| 19 | 19 | ||
| 20 | #define boot_cpu_type() cpu_data[0].cputype | ||
| 21 | |||
| 20 | /* | 22 | /* |
| 21 | * SMP assumption: Options of CPU 0 are a superset of all processors. | 23 | * SMP assumption: Options of CPU 0 are a superset of all processors. |
| 22 | * This is true for all known MIPS systems. | 24 | * This is true for all known MIPS systems. |
diff --git a/arch/mips/include/asm/mach-generic/spaces.h b/arch/mips/include/asm/mach-generic/spaces.h index 5b2f2e68e57f..9488fa5f8866 100644 --- a/arch/mips/include/asm/mach-generic/spaces.h +++ b/arch/mips/include/asm/mach-generic/spaces.h | |||
| @@ -25,8 +25,12 @@ | |||
| 25 | #else | 25 | #else |
| 26 | #define CAC_BASE _AC(0x80000000, UL) | 26 | #define CAC_BASE _AC(0x80000000, UL) |
| 27 | #endif | 27 | #endif |
| 28 | #ifndef IO_BASE | ||
| 28 | #define IO_BASE _AC(0xa0000000, UL) | 29 | #define IO_BASE _AC(0xa0000000, UL) |
| 30 | #endif | ||
| 31 | #ifndef UNCAC_BASE | ||
| 29 | #define UNCAC_BASE _AC(0xa0000000, UL) | 32 | #define UNCAC_BASE _AC(0xa0000000, UL) |
| 33 | #endif | ||
| 30 | 34 | ||
| 31 | #ifndef MAP_BASE | 35 | #ifndef MAP_BASE |
| 32 | #ifdef CONFIG_KVM_GUEST | 36 | #ifdef CONFIG_KVM_GUEST |
diff --git a/arch/mips/include/asm/uasm.h b/arch/mips/include/asm/uasm.h index 370d967725c2..c33a9564fb41 100644 --- a/arch/mips/include/asm/uasm.h +++ b/arch/mips/include/asm/uasm.h | |||
| @@ -13,12 +13,8 @@ | |||
| 13 | 13 | ||
| 14 | #ifdef CONFIG_EXPORT_UASM | 14 | #ifdef CONFIG_EXPORT_UASM |
| 15 | #include <linux/export.h> | 15 | #include <linux/export.h> |
| 16 | #define __uasminit | ||
| 17 | #define __uasminitdata | ||
| 18 | #define UASM_EXPORT_SYMBOL(sym) EXPORT_SYMBOL(sym) | 16 | #define UASM_EXPORT_SYMBOL(sym) EXPORT_SYMBOL(sym) |
| 19 | #else | 17 | #else |
| 20 | #define __uasminit __cpuinit | ||
| 21 | #define __uasminitdata __cpuinitdata | ||
| 22 | #define UASM_EXPORT_SYMBOL(sym) | 18 | #define UASM_EXPORT_SYMBOL(sym) |
| 23 | #endif | 19 | #endif |
| 24 | 20 | ||
| @@ -54,43 +50,36 @@ | |||
| 54 | #endif | 50 | #endif |
| 55 | 51 | ||
| 56 | #define Ip_u1u2u3(op) \ | 52 | #define Ip_u1u2u3(op) \ |
| 57 | void __uasminit \ | 53 | void ISAOPC(op)(u32 **buf, unsigned int a, unsigned int b, unsigned int c) |
| 58 | ISAOPC(op)(u32 **buf, unsigned int a, unsigned int b, unsigned int c) | ||
| 59 | 54 | ||
| 60 | #define Ip_u2u1u3(op) \ | 55 | #define Ip_u2u1u3(op) \ |
| 61 | void __uasminit \ | 56 | void ISAOPC(op)(u32 **buf, unsigned int a, unsigned int b, unsigned int c) |
| 62 | ISAOPC(op)(u32 **buf, unsigned int a, unsigned int b, unsigned int c) | ||
| 63 | 57 | ||
| 64 | #define Ip_u3u1u2(op) \ | 58 | #define Ip_u3u1u2(op) \ |
| 65 | void __uasminit \ | 59 | void ISAOPC(op)(u32 **buf, unsigned int a, unsigned int b, unsigned int c) |
| 66 | ISAOPC(op)(u32 **buf, unsigned int a, unsigned int b, unsigned int c) | ||
| 67 | 60 | ||
| 68 | #define Ip_u1u2s3(op) \ | 61 | #define Ip_u1u2s3(op) \ |
| 69 | void __uasminit \ | 62 | void ISAOPC(op)(u32 **buf, unsigned int a, unsigned int b, signed int c) |
| 70 | ISAOPC(op)(u32 **buf, unsigned int a, unsigned int b, signed int c) | ||
| 71 | 63 | ||
| 72 | #define Ip_u2s3u1(op) \ | 64 | #define Ip_u2s3u1(op) \ |
| 73 | void __uasminit \ | 65 | void ISAOPC(op)(u32 **buf, unsigned int a, signed int b, unsigned int c) |
| 74 | ISAOPC(op)(u32 **buf, unsigned int a, signed int b, unsigned int c) | ||
| 75 | 66 | ||
| 76 | #define Ip_u2u1s3(op) \ | 67 | #define Ip_u2u1s3(op) \ |
| 77 | void __uasminit \ | 68 | void ISAOPC(op)(u32 **buf, unsigned int a, unsigned int b, signed int c) |
| 78 | ISAOPC(op)(u32 **buf, unsigned int a, unsigned int b, signed int c) | ||
| 79 | 69 | ||
| 80 | #define Ip_u2u1msbu3(op) \ | 70 | #define Ip_u2u1msbu3(op) \ |
| 81 | void __uasminit \ | 71 | void ISAOPC(op)(u32 **buf, unsigned int a, unsigned int b, unsigned int c, \ |
| 82 | ISAOPC(op)(u32 **buf, unsigned int a, unsigned int b, unsigned int c, \ | ||
| 83 | unsigned int d) | 72 | unsigned int d) |
| 84 | 73 | ||
| 85 | #define Ip_u1u2(op) \ | 74 | #define Ip_u1u2(op) \ |
| 86 | void __uasminit ISAOPC(op)(u32 **buf, unsigned int a, unsigned int b) | 75 | void ISAOPC(op)(u32 **buf, unsigned int a, unsigned int b) |
| 87 | 76 | ||
| 88 | #define Ip_u1s2(op) \ | 77 | #define Ip_u1s2(op) \ |
| 89 | void __uasminit ISAOPC(op)(u32 **buf, unsigned int a, signed int b) | 78 | void ISAOPC(op)(u32 **buf, unsigned int a, signed int b) |
| 90 | 79 | ||
| 91 | #define Ip_u1(op) void __uasminit ISAOPC(op)(u32 **buf, unsigned int a) | 80 | #define Ip_u1(op) void ISAOPC(op)(u32 **buf, unsigned int a) |
| 92 | 81 | ||
| 93 | #define Ip_0(op) void __uasminit ISAOPC(op)(u32 **buf) | 82 | #define Ip_0(op) void ISAOPC(op)(u32 **buf) |
| 94 | 83 | ||
| 95 | Ip_u2u1s3(_addiu); | 84 | Ip_u2u1s3(_addiu); |
| 96 | Ip_u3u1u2(_addu); | 85 | Ip_u3u1u2(_addu); |
| @@ -163,7 +152,7 @@ struct uasm_label { | |||
| 163 | int lab; | 152 | int lab; |
| 164 | }; | 153 | }; |
| 165 | 154 | ||
| 166 | void __uasminit ISAFUNC(uasm_build_label)(struct uasm_label **lab, u32 *addr, | 155 | void ISAFUNC(uasm_build_label)(struct uasm_label **lab, u32 *addr, |
| 167 | int lid); | 156 | int lid); |
| 168 | #ifdef CONFIG_64BIT | 157 | #ifdef CONFIG_64BIT |
| 169 | int ISAFUNC(uasm_in_compat_space_p)(long addr); | 158 | int ISAFUNC(uasm_in_compat_space_p)(long addr); |
| @@ -174,7 +163,7 @@ void ISAFUNC(UASM_i_LA_mostly)(u32 **buf, unsigned int rs, long addr); | |||
| 174 | void ISAFUNC(UASM_i_LA)(u32 **buf, unsigned int rs, long addr); | 163 | void ISAFUNC(UASM_i_LA)(u32 **buf, unsigned int rs, long addr); |
| 175 | 164 | ||
| 176 | #define UASM_L_LA(lb) \ | 165 | #define UASM_L_LA(lb) \ |
| 177 | static inline void __uasminit ISAFUNC(uasm_l##lb)(struct uasm_label **lab, u32 *addr) \ | 166 | static inline void ISAFUNC(uasm_l##lb)(struct uasm_label **lab, u32 *addr) \ |
| 178 | { \ | 167 | { \ |
| 179 | ISAFUNC(uasm_build_label)(lab, addr, label##lb); \ | 168 | ISAFUNC(uasm_build_label)(lab, addr, label##lb); \ |
| 180 | } | 169 | } |
diff --git a/arch/mips/include/uapi/asm/siginfo.h b/arch/mips/include/uapi/asm/siginfo.h index b7a23064841f..88e292b7719e 100644 --- a/arch/mips/include/uapi/asm/siginfo.h +++ b/arch/mips/include/uapi/asm/siginfo.h | |||
| @@ -25,11 +25,12 @@ struct siginfo; | |||
| 25 | /* | 25 | /* |
| 26 | * Careful to keep union _sifields from shifting ... | 26 | * Careful to keep union _sifields from shifting ... |
| 27 | */ | 27 | */ |
| 28 | #if __SIZEOF_LONG__ == 4 | 28 | #if _MIPS_SZLONG == 32 |
| 29 | #define __ARCH_SI_PREAMBLE_SIZE (3 * sizeof(int)) | 29 | #define __ARCH_SI_PREAMBLE_SIZE (3 * sizeof(int)) |
| 30 | #endif | 30 | #elif _MIPS_SZLONG == 64 |
| 31 | #if __SIZEOF_LONG__ == 8 | ||
| 32 | #define __ARCH_SI_PREAMBLE_SIZE (4 * sizeof(int)) | 31 | #define __ARCH_SI_PREAMBLE_SIZE (4 * sizeof(int)) |
| 32 | #else | ||
| 33 | #error _MIPS_SZLONG neither 32 nor 64 | ||
| 33 | #endif | 34 | #endif |
| 34 | 35 | ||
| 35 | #include <asm-generic/siginfo.h> | 36 | #include <asm-generic/siginfo.h> |
