Subversion Repositories HelenOS

Rev

Rev 1864 | Rev 1880 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1864 Rev 1865
Line 319... Line 319...
319
static inline void flushw(void)
319
static inline void flushw(void)
320
{
320
{
321
    __asm__ volatile ("flushw\n");
321
    __asm__ volatile ("flushw\n");
322
}
322
}
323
 
323
 
-
 
324
/** Switch to nucleus by setting TL to 1. */
-
 
325
static inline void nucleus_enter(void)
-
 
326
{
-
 
327
    __asm__ volatile ("wrpr %g0, 1, %tl\n");
-
 
328
}
-
 
329
 
-
 
330
/** Switch from nucleus by setting TL to 0. */
-
 
331
static inline void nucleus_leave(void)
-
 
332
{
-
 
333
    __asm__ volatile ("wrpr %g0, %g0, %tl\n");
-
 
334
}
-
 
335
 
324
extern void cpu_halt(void);
336
extern void cpu_halt(void);
325
extern void cpu_sleep(void);
337
extern void cpu_sleep(void);
326
extern void asm_delay_loop(uint32_t t);
338
extern void asm_delay_loop(uint32_t t);
327
 
339
 
328
extern uint64_t read_from_ag_g7(void);
340
extern uint64_t read_from_ag_g7(void);