diff options
Diffstat (limited to 'arch/mips/lib')
| -rw-r--r-- | arch/mips/lib/delay.c | 6 | ||||
| -rw-r--r-- | arch/mips/lib/dump_tlb.c | 4 |
2 files changed, 8 insertions, 2 deletions
diff --git a/arch/mips/lib/delay.c b/arch/mips/lib/delay.c index 5995969e8c42..dc81ca8dc0dd 100644 --- a/arch/mips/lib/delay.c +++ b/arch/mips/lib/delay.c | |||
| @@ -15,13 +15,17 @@ | |||
| 15 | #include <asm/compiler.h> | 15 | #include <asm/compiler.h> |
| 16 | #include <asm/war.h> | 16 | #include <asm/war.h> |
| 17 | 17 | ||
| 18 | inline void __delay(unsigned int loops) | 18 | void __delay(unsigned long loops) |
| 19 | { | 19 | { |
| 20 | __asm__ __volatile__ ( | 20 | __asm__ __volatile__ ( |
| 21 | " .set noreorder \n" | 21 | " .set noreorder \n" |
| 22 | " .align 3 \n" | 22 | " .align 3 \n" |
| 23 | "1: bnez %0, 1b \n" | 23 | "1: bnez %0, 1b \n" |
| 24 | #if __SIZEOF_LONG__ == 4 | ||
| 24 | " subu %0, 1 \n" | 25 | " subu %0, 1 \n" |
| 26 | #else | ||
| 27 | " dsubu %0, 1 \n" | ||
| 28 | #endif | ||
| 25 | " .set reorder \n" | 29 | " .set reorder \n" |
| 26 | : "=r" (loops) | 30 | : "=r" (loops) |
| 27 | : "0" (loops)); | 31 | : "0" (loops)); |
diff --git a/arch/mips/lib/dump_tlb.c b/arch/mips/lib/dump_tlb.c index 3f69725556af..a99c1d3fc567 100644 --- a/arch/mips/lib/dump_tlb.c +++ b/arch/mips/lib/dump_tlb.c | |||
| @@ -50,8 +50,9 @@ static void dump_tlb(int first, int last) | |||
| 50 | { | 50 | { |
| 51 | unsigned long s_entryhi, entryhi, asid; | 51 | unsigned long s_entryhi, entryhi, asid; |
| 52 | unsigned long long entrylo0, entrylo1; | 52 | unsigned long long entrylo0, entrylo1; |
| 53 | unsigned int s_index, pagemask, c0, c1, i; | 53 | unsigned int s_index, s_pagemask, pagemask, c0, c1, i; |
| 54 | 54 | ||
| 55 | s_pagemask = read_c0_pagemask(); | ||
| 55 | s_entryhi = read_c0_entryhi(); | 56 | s_entryhi = read_c0_entryhi(); |
| 56 | s_index = read_c0_index(); | 57 | s_index = read_c0_index(); |
| 57 | asid = s_entryhi & 0xff; | 58 | asid = s_entryhi & 0xff; |
| @@ -103,6 +104,7 @@ static void dump_tlb(int first, int last) | |||
| 103 | 104 | ||
| 104 | write_c0_entryhi(s_entryhi); | 105 | write_c0_entryhi(s_entryhi); |
| 105 | write_c0_index(s_index); | 106 | write_c0_index(s_index); |
| 107 | write_c0_pagemask(s_pagemask); | ||
| 106 | } | 108 | } |
| 107 | 109 | ||
| 108 | void dump_tlb_all(void) | 110 | void dump_tlb_all(void) |
