Changeset a35b458 in mainline for kernel/arch/ppc32/include
- Timestamp:
- 2018-03-02T20:10:49Z (8 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- f1380b7
- Parents:
- 3061bc1
- git-author:
- Jiří Zárevúcky <zarevucky.jiri@…> (2018-02-28 17:38:31)
- git-committer:
- Jiří Zárevúcky <zarevucky.jiri@…> (2018-03-02 20:10:49)
- Location:
- kernel/arch/ppc32/include/arch
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/arch/ppc32/include/arch/asm.h
r3061bc1 ra35b458 45 45 { 46 46 uint32_t msr; 47 47 48 48 asm volatile ( 49 49 "mfmsr %[msr]\n" 50 50 : [msr] "=r" (msr) 51 51 ); 52 52 53 53 return msr; 54 54 } … … 77 77 { 78 78 uint32_t vsid; 79 79 80 80 asm volatile ( 81 81 "mfsrin %[vsid], %[vaddr]\n" … … 83 83 : [vaddr] "r" (vaddr) 84 84 ); 85 85 86 86 return vsid; 87 87 } … … 90 90 { 91 91 uint32_t sdr1; 92 92 93 93 asm volatile ( 94 94 "mfsdr1 %[sdr1]\n" 95 95 : [sdr1] "=r" (sdr1) 96 96 ); 97 97 98 98 return sdr1; 99 99 } … … 173 173 { 174 174 uintptr_t base; 175 175 176 176 asm volatile ( 177 177 "and %[base], %%sp, %[mask]\n" … … 179 179 : [mask] "r" (~(STACK_SIZE - 1)) 180 180 ); 181 181 182 182 return base; 183 183 } -
kernel/arch/ppc32/include/arch/atomic.h
r3061bc1 ra35b458 41 41 { 42 42 atomic_count_t tmp; 43 43 44 44 asm volatile ( 45 45 "1:\n" … … 59 59 { 60 60 atomic_count_t tmp; 61 61 62 62 asm volatile ( 63 63 "1:\n" -
kernel/arch/ppc32/include/arch/barrier.h
r3061bc1 ra35b458 77 77 { 78 78 unsigned int i; 79 79 80 80 for (i = 0; i < len; i += COHERENCE_INVAL_MIN) 81 81 asm volatile ( … … 83 83 :: [addr] "r" (addr + i) 84 84 ); 85 85 86 86 memory_barrier(); 87 87 88 88 for (i = 0; i < len; i += COHERENCE_INVAL_MIN) 89 89 asm volatile ( … … 91 91 :: [addr] "r" (addr + i) 92 92 ); 93 93 94 94 instruction_barrier(); 95 95 } -
kernel/arch/ppc32/include/arch/cycle.h
r3061bc1 ra35b458 43 43 uint32_t upper; 44 44 uint32_t tmp; 45 45 46 46 do { 47 47 asm volatile ( … … 54 54 ); 55 55 } while (upper != tmp); 56 56 57 57 return ((uint64_t) upper << 32) + (uint64_t) lower; 58 58 } -
kernel/arch/ppc32/include/arch/mm/frame.h
r3061bc1 ra35b458 49 49 { 50 50 uint32_t physmem; 51 51 52 52 asm volatile ( 53 53 "mfsprg3 %[physmem]\n" 54 54 : [physmem] "=r" (physmem) 55 55 ); 56 56 57 57 return physmem; 58 58 } -
kernel/arch/ppc32/include/arch/mm/page.h
r3061bc1 ra35b458 165 165 { 166 166 pte_t *entry = &pt[i]; 167 167 168 168 return (((!entry->page_cache_disable) << PAGE_CACHEABLE_SHIFT) | 169 169 ((!entry->present) << PAGE_PRESENT_SHIFT) | … … 178 178 { 179 179 pte_t *entry = &pt[i]; 180 180 181 181 entry->page_cache_disable = !(flags & PAGE_CACHEABLE); 182 182 entry->present = !(flags & PAGE_NOT_PRESENT);
Note:
See TracChangeset
for help on using the changeset viewer.
