Subversion Repositories HelenOS

Rev

Rev 3022 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 3022 Rev 4055
Line 34... Line 34...
34
 
34
 
35
#ifndef KERN_ppc32_ASM_H_
35
#ifndef KERN_ppc32_ASM_H_
36
#define KERN_ppc32_ASM_H_
36
#define KERN_ppc32_ASM_H_
37
 
37
 
38
#include <arch/types.h>
38
#include <arch/types.h>
-
 
39
#include <typedefs.h>
39
#include <config.h>
40
#include <config.h>
40
 
41
 
41
/** Enable interrupts.
42
/** Enable interrupts.
42
 *
43
 *
43
 * Enable interrupts and return previous
44
 * Enable interrupts and return previous
Line 147... Line 148...
147
void cpu_halt(void);
148
void cpu_halt(void);
148
void asm_delay_loop(uint32_t t);
149
void asm_delay_loop(uint32_t t);
149
 
150
 
150
extern void userspace_asm(uintptr_t uspace_uarg, uintptr_t stack, uintptr_t entry);
151
extern void userspace_asm(uintptr_t uspace_uarg, uintptr_t stack, uintptr_t entry);
151
 
152
 
-
 
153
static inline void pio_write_8(ioport8_t *port, uint8_t v)
-
 
154
{
-
 
155
    *port = v; 
-
 
156
}
-
 
157
 
-
 
158
static inline void pio_write_16(ioport16_t *port, uint16_t v)
-
 
159
{
-
 
160
    *port = v; 
-
 
161
}
-
 
162
 
-
 
163
static inline void pio_write_32(ioport32_t *port, uint32_t v)
-
 
164
{
-
 
165
    *port = v; 
-
 
166
}
-
 
167
 
-
 
168
static inline uint8_t pio_read_8(ioport8_t *port)
-
 
169
{
-
 
170
    return *port;
-
 
171
}
-
 
172
 
-
 
173
static inline uint16_t pio_read_16(ioport16_t *port)
-
 
174
{
-
 
175
    return *port;
-
 
176
}
-
 
177
 
-
 
178
static inline uint32_t pio_read_32(ioport32_t *port)
-
 
179
{
-
 
180
    return *port;
-
 
181
}
-
 
182
 
152
#endif
183
#endif
153
 
184
 
154
/** @}
185
/** @}
155
 */
186
 */