Subversion Repositories HelenOS

Rev

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

Rev 4345 Rev 4346
Line 54... Line 54...
54
extern void asm_fake_loop(uint32_t t);
54
extern void asm_fake_loop(uint32_t t);
55
 
55
 
56
 
56
 
57
/** Halt CPU
57
/** Halt CPU
58
 *
58
 *
59
 * Halt the current CPU until interrupt event.
59
 * Halt the current CPU.
60
 *
60
 *
61
 */
61
 */
62
static inline void cpu_halt(void)
62
static inline void cpu_halt(void)
63
{
63
{
64
    asm volatile ("hlt\n");
64
    asm volatile (
-
 
65
        "0:\n"
-
 
66
        "   hlt\n"
-
 
67
        "   jmp 0b\n"
-
 
68
    );
65
}
69
}
66
 
70
 
67
static inline void cpu_sleep(void)
71
static inline void cpu_sleep(void)
68
{
72
{
69
    asm volatile ("hlt\n");
73
    asm volatile ("hlt\n");