Rev 867 | Rev 1702 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
| Rev 867 | Rev 883 | ||
|---|---|---|---|
| Line 31... | Line 31... | ||
| 31 | */ |
31 | */ |
| 32 | 32 | ||
| 33 | #ifndef __sparc64_MMU_TRAP_H__ |
33 | #ifndef __sparc64_MMU_TRAP_H__ |
| 34 | #define __sparc64_MMU_TRAP_H__ |
34 | #define __sparc64_MMU_TRAP_H__ |
| 35 | 35 | ||
| - | 36 | #include <arch/stack.h> |
|
| - | 37 | ||
| 36 | #define TT_FAST_INSTRUCTION_ACCESS_MMU_MISS 0x64 |
38 | #define TT_FAST_INSTRUCTION_ACCESS_MMU_MISS 0x64 |
| 37 | #define TT_FAST_DATA_ACCESS_MMU_MISS 0x68 |
39 | #define TT_FAST_DATA_ACCESS_MMU_MISS 0x68 |
| 38 | #define TT_FAST_DATA_ACCESS_PROTECTION 0x6c |
40 | #define TT_FAST_DATA_ACCESS_PROTECTION 0x6c |
| 39 | 41 | ||
| 40 | #define FAST_MMU_HANDLER_SIZE 128 |
42 | #define FAST_MMU_HANDLER_SIZE 128 |
| 41 | 43 | ||
| 42 | #ifdef __ASM__ |
44 | #ifdef __ASM__ |
| 43 | .macro FAST_INSTRUCTION_ACCESS_MMU_MISS_HANDLER |
45 | .macro FAST_INSTRUCTION_ACCESS_MMU_MISS_HANDLER |
| - | 46 | save %sp, -STACK_WINDOW_SAVE_AREA_SIZE, %sp |
|
| 44 | call fast_instruction_access_mmu_miss |
47 | call fast_instruction_access_mmu_miss |
| 45 | nop |
48 | nop |
| - | 49 | restore |
|
| 46 | retry |
50 | retry |
| 47 | .endm |
51 | .endm |
| 48 | 52 | ||
| 49 | .macro FAST_DATA_ACCESS_MMU_MISS_HANDLER |
53 | .macro FAST_DATA_ACCESS_MMU_MISS_HANDLER |
| - | 54 | save %sp, -STACK_WINDOW_SAVE_AREA_SIZE, %sp |
|
| 50 | call fast_data_access_mmu_miss |
55 | call fast_data_access_mmu_miss |
| 51 | nop |
56 | nop |
| - | 57 | restore |
|
| 52 | retry |
58 | retry |
| 53 | .endm |
59 | .endm |
| 54 | 60 | ||
| 55 | .macro FAST_DATA_ACCESS_PROTECTION_HANDLER |
61 | .macro FAST_DATA_ACCESS_PROTECTION_HANDLER |
| - | 62 | save %sp, -STACK_WINDOW_SAVE_AREA_SIZE, %sp |
|
| 56 | call fast_data_access_protection |
63 | call fast_data_access_protection |
| 57 | nop |
64 | nop |
| - | 65 | restore |
|
| 58 | retry |
66 | retry |
| 59 | .endm |
67 | .endm |
| 60 | #endif /* __ASM__ */ |
68 | #endif /* __ASM__ */ |
| 61 | 69 | ||
| 62 | #endif |
70 | #endif |