Rev 1702 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
| Rev 1702 | Rev 1780 | ||
|---|---|---|---|
| Line 126... | Line 126... | ||
| 126 | * |
126 | * |
| 127 | * Return the base address of the current stack. |
127 | * Return the base address of the current stack. |
| 128 | * The stack is assumed to be STACK_SIZE bytes long. |
128 | * The stack is assumed to be STACK_SIZE bytes long. |
| 129 | * The stack must start on page boundary. |
129 | * The stack must start on page boundary. |
| 130 | */ |
130 | */ |
| 131 | static inline __address get_stack_base(void) |
131 | static inline uintptr_t get_stack_base(void) |
| 132 | { |
132 | { |
| 133 | __address v; |
133 | uintptr_t v; |
| 134 | 134 | ||
| 135 | asm volatile ( |
135 | asm volatile ( |
| 136 | "and %0, %%sp, %1\n" |
136 | "and %0, %%sp, %1\n" |
| 137 | : "=r" (v) |
137 | : "=r" (v) |
| 138 | : "r" (~(STACK_SIZE - 1)) |
138 | : "r" (~(STACK_SIZE - 1)) |
| Line 143... | Line 143... | ||
| 143 | static inline void cpu_sleep(void) |
143 | static inline void cpu_sleep(void) |
| 144 | { |
144 | { |
| 145 | } |
145 | } |
| 146 | 146 | ||
| 147 | void cpu_halt(void); |
147 | void cpu_halt(void); |
| 148 | void asm_delay_loop(__u32 t); |
148 | void asm_delay_loop(uint32_t t); |
| 149 | 149 | ||
| 150 | extern void userspace_asm(__address uspace_uarg, __address stack, __address entry); |
150 | extern void userspace_asm(uintptr_t uspace_uarg, uintptr_t stack, uintptr_t entry); |
| 151 | 151 | ||
| 152 | #endif |
152 | #endif |
| 153 | 153 | ||
| 154 | /** @} |
154 | /** @} |
| 155 | */ |
155 | */ |