Subversion Repositories HelenOS

Rev

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

Rev 1901 Rev 1942
Line 47... Line 47...
47
#include <config.h>
47
#include <config.h>
48
#include <userspace.h>
48
#include <userspace.h>
49
#include <console/console.h>
49
#include <console/console.h>
50
#include <proc/uarg.h>
50
#include <proc/uarg.h>
51
#include <syscall/syscall.h>
51
#include <syscall/syscall.h>
52
 
-
 
53
static int kbd_release=0;
52
#include <ddi/irq.h>
54
 
53
 
55
void arch_pre_main(void)
54
void arch_pre_main(void)
56
{
55
{
57
    /* Setup usermode init tasks. */
56
    /* Setup usermode init tasks. */
58
    init.cnt = 8;
57
    init.cnt = 8;
Line 78... Line 77...
78
{
77
{
79
    /* Set Interruption Vector Address (i.e. location of interruption vector table). */
78
    /* Set Interruption Vector Address (i.e. location of interruption vector table). */
80
    iva_write((uintptr_t) &ivt);
79
    iva_write((uintptr_t) &ivt);
81
    srlz_d();
80
    srlz_d();
82
   
81
   
83
    ski_init_console();
-
 
84
    it_init(); 
-
 
85
}
82
}
86
 
83
 
87
void arch_post_mm_init(void)
84
void arch_post_mm_init(void)
88
{
85
{
-
 
86
    irq_init(INR_COUNT, INR_COUNT);
-
 
87
    ski_init_console();
-
 
88
    it_init(); 
89
    ski_set_console_sysinfo();
89
    ski_set_console_sysinfo();
90
}
90
}
91
 
91
 
92
void arch_post_cpu_init(void)
92
void arch_post_cpu_init(void)
93
{
93
{
Line 143... Line 143...
143
/** Acquire console back for kernel
143
/** Acquire console back for kernel
144
 *
144
 *
145
 */
145
 */
146
void arch_grab_console(void)
146
void arch_grab_console(void)
147
{
147
{
148
    kbd_release=kbd_uspace;
-
 
149
    kbd_uspace=0;
148
    ski_kbd_grab();
150
}
149
}
151
/** Return console to userspace
150
/** Return console to userspace
152
 *
151
 *
153
 */
152
 */
154
void arch_release_console(void)
153
void arch_release_console(void)
155
{
154
{
156
    kbd_uspace=kbd_release;
155
    ski_kbd_release();
157
}
156
}
158
 
157
 
159
/** @}
158
/** @}
160
 */
159
 */