Changeset da1bafb in mainline for kernel/arch/ppc32/include/asm.h
- Timestamp:
- 2010-05-24T18:57:31Z (14 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 0095368
- Parents:
- 666f492
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/arch/ppc32/include/asm.h
r666f492 rda1bafb 39 39 #include <config.h> 40 40 #include <arch/cpu.h> 41 #include <arch/mm/asid.h> 41 42 42 43 static inline uint32_t msr_read(void) … … 58 59 :: [msr] "r" (msr) 59 60 ); 61 } 62 63 static inline void sr_set(uint32_t flags, asid_t asid, uint32_t sr) 64 { 65 asm volatile ( 66 "mtsrin %[value], %[sr]\n" 67 :: [value] "r" ((flags << 16) + (asid << 4) + sr), 68 [sr] "r" (sr << 28) 69 ); 70 } 71 72 static inline uint32_t sr_get(uint32_t vaddr) 73 { 74 uint32_t vsid; 75 76 asm volatile ( 77 "mfsrin %[vsid], %[vaddr]\n" 78 : [vsid] "=r" (vsid) 79 : [vaddr] "r" (vaddr) 80 ); 81 82 return vsid; 83 } 84 85 static inline uint32_t sdr1_get(void) 86 { 87 uint32_t sdr1; 88 89 asm volatile ( 90 "mfsdr1 %[sdr1]\n" 91 : [sdr1] "=r" (sdr1) 92 ); 93 94 return sdr1; 60 95 } 61 96
Note:
See TracChangeset
for help on using the changeset viewer.