Changes in kernel/arch/arm32/include/asm.h [7a0359b:d99c1d2] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/arch/arm32/include/asm.h
r7a0359b rd99c1d2 41 41 #include <config.h> 42 42 #include <arch/interrupt.h> 43 #include <trace.h>44 43 45 44 /** No such instruction on ARM to sleep CPU. */ 46 NO_TRACEstatic inline void cpu_sleep(void)45 static inline void cpu_sleep(void) 47 46 { 48 47 } 49 48 50 NO_TRACEstatic inline void pio_write_8(ioport8_t *port, uint8_t v)49 static inline void pio_write_8(ioport8_t *port, uint8_t v) 51 50 { 52 51 *port = v; 53 52 } 54 53 55 NO_TRACEstatic inline void pio_write_16(ioport16_t *port, uint16_t v)54 static inline void pio_write_16(ioport16_t *port, uint16_t v) 56 55 { 57 56 *port = v; 58 57 } 59 58 60 NO_TRACEstatic inline void pio_write_32(ioport32_t *port, uint32_t v)59 static inline void pio_write_32(ioport32_t *port, uint32_t v) 61 60 { 62 61 *port = v; 63 62 } 64 63 65 NO_TRACEstatic inline uint8_t pio_read_8(ioport8_t *port)64 static inline uint8_t pio_read_8(ioport8_t *port) 66 65 { 67 66 return *port; 68 67 } 69 68 70 NO_TRACEstatic inline uint16_t pio_read_16(ioport16_t *port)69 static inline uint16_t pio_read_16(ioport16_t *port) 71 70 { 72 71 return *port; 73 72 } 74 73 75 NO_TRACEstatic inline uint32_t pio_read_32(ioport32_t *port)74 static inline uint32_t pio_read_32(ioport32_t *port) 76 75 { 77 76 return *port; … … 85 84 * 86 85 */ 87 NO_TRACEstatic inline uintptr_t get_stack_base(void)86 static inline uintptr_t get_stack_base(void) 88 87 { 89 88 uintptr_t v; 90 91 89 asm volatile ( 92 90 "and %[v], sp, %[size]\n" … … 94 92 : [size] "r" (~(STACK_SIZE - 1)) 95 93 ); 96 97 94 return v; 98 95 }
Note:
See TracChangeset
for help on using the changeset viewer.