Subversion Repositories HelenOS

Rev

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

Rev 3343 Rev 3742
Line 92... Line 92...
92
            visual = VISUAL_RGB_0_8_8_8;
92
            visual = VISUAL_RGB_0_8_8_8;
93
            break;
93
            break;
94
        default:
94
        default:
95
            panic("Unsupported bits per pixel");
95
            panic("Unsupported bits per pixel");
96
        }
96
        }
-
 
97
        fb_properties_t prop = {
-
 
98
            .addr = bootinfo.screen.addr,
-
 
99
            .offset = 0,
-
 
100
            .x = bootinfo.screen.width,
-
 
101
            .y = bootinfo.screen.height,
97
        fb_init(bootinfo.screen.addr, bootinfo.screen.width, bootinfo.screen.height, bootinfo.screen.scanline, visual);
102
            .scan = bootinfo.screen.scanline,
-
 
103
            .visual = visual,
-
 
104
        };
-
 
105
        fb_init(&prop);
98
       
106
       
99
        /* Initialize IRQ routing */
107
        /* Initialize IRQ routing */
100
        irq_init(IRQ_COUNT, IRQ_COUNT);
108
        irq_init(IRQ_COUNT, IRQ_COUNT);
101
   
109
   
102
        /* Initialize PIC */
110
        /* Initialize PIC */
103
        pic_init(bootinfo.keyboard.addr, PAGE_SIZE);
111
        pic_init(bootinfo.keyboard.addr, PAGE_SIZE);
104
       
112
       
105
        /* Initialize I/O controller */
113
        /* Initialize I/O controller */
-
 
114
        cuda_init(device_assign_devno(),
106
        cuda_init(device_assign_devno(), bootinfo.keyboard.addr + 0x16000, 2 * PAGE_SIZE);
115
            bootinfo.keyboard.addr + 0x16000, 2 * PAGE_SIZE);
107
       
116
       
108
        /* Merge all zones to 1 big zone */
117
        /* Merge all zones to 1 big zone */
109
        zone_merge_all();
118
        zone_merge_all();
110
    }
119
    }
111
}
120
}
Line 126... Line 135...
126
{
135
{
127
}
136
}
128
 
137
 
129
void userspace(uspace_arg_t *kernel_uarg)
138
void userspace(uspace_arg_t *kernel_uarg)
130
{
139
{
131
    userspace_asm((uintptr_t) kernel_uarg->uspace_uarg, (uintptr_t) kernel_uarg->uspace_stack + THREAD_STACK_SIZE - SP_DELTA, (uintptr_t) kernel_uarg->uspace_entry);
140
    userspace_asm((uintptr_t) kernel_uarg->uspace_uarg,
-
 
141
        (uintptr_t) kernel_uarg->uspace_stack +
-
 
142
        THREAD_STACK_SIZE - SP_DELTA,
-
 
143
        (uintptr_t) kernel_uarg->uspace_entry);
132
   
144
   
133
    /* Unreachable */
145
    /* Unreachable */
134
    for (;;)
146
    for (;;)
135
        ;
147
        ;
136
}
148
}