Changeset a33c990 in mainline
- Timestamp:
- 2006-05-20T22:51:05Z (19 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 7ca8b36b
- Parents:
- 125e944
- Location:
- arch/ppc32/src
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
arch/ppc32/src/asm.S
r125e944 ra33c990 135 135 iret_syscall: 136 136 137 # reset decrementer 138 139 li r31, 1000 140 mtdec r31 141 137 142 # disable interrupts 138 143 -
arch/ppc32/src/dummy.s
r125e944 ra33c990 30 30 31 31 .global asm_delay_loop 32 .global userspace33 32 .global sys_tls_set 34 .global tlb_invalidate_asid35 .global tlb_invalidate_pages36 37 tlb_invalidate_asid:38 b tlb_invalidate_asid39 40 tlb_invalidate_pages:41 b tlb_invalidate_pages42 33 43 34 sys_tls_set: -
arch/ppc32/src/exception.S
r125e944 ra33c990 206 206 .global exc_decrementer 207 207 exc_decrementer: 208 CONTEXT_STORE 208 CONTEXT_STORE 209 209 210 210 lis r12, exc_dispatch@ha -
arch/ppc32/src/mm/page.c
r125e944 ra33c990 182 182 void pht_refill(bool data, istate_t *istate) 183 183 { 184 asid_t asid;185 184 __address badvaddr; 186 185 pte_t *pte; … … 205 204 badvaddr = istate->pc; 206 205 207 spinlock_lock(&as->lock);208 asid = as->asid;209 spinlock_unlock(&as->lock);210 211 206 page_table_lock(as, lock); 212 207 -
arch/ppc32/src/mm/tlb.c
r125e944 ra33c990 37 37 void tlb_arch_init(void) 38 38 { 39 asm volatile ( 40 "tlbia\n" 41 ); 39 tlb_invalidate_all(); 42 40 } 43 41 … … 45 43 void tlb_invalidate_all(void) 46 44 { 45 asm volatile ( 46 "tlbia\n" 47 "tlbsync\n" 48 ); 47 49 } 50 51 52 /** Invalidate all entries in TLB that belong to specified address space. 53 * 54 * @param asid This parameter is ignored as the architecture doesn't support it. 55 */ 56 void tlb_invalidate_asid(asid_t asid) 57 { 58 tlb_invalidate_all(); 59 } 60 61 /** Invalidate TLB entries for specified page range belonging to specified address space. 62 * 63 * @param asid This parameter is ignored as the architecture doesn't support it. 64 * @param page Address of the first page whose entry is to be invalidated. 65 * @param cnt Number of entries to invalidate. 66 */ 67 void tlb_invalidate_pages(asid_t asid, __address page, count_t cnt) 68 { 69 tlb_invalidate_all(); 70 } 71 48 72 49 73 -
arch/ppc32/src/proc/scheduler.c
r125e944 ra33c990 42 42 { 43 43 pht_init(); 44 tlb_invalidate_all(); 44 45 asm volatile ( 45 46 "mtsprg0 %0\n"
Note:
See TracChangeset
for help on using the changeset viewer.