]> rtime.felk.cvut.cz Git - l4.git/blob - l4/pkg/l4con/server/src/ARCH-arm/gmode-arch.c
update
[l4.git] / l4 / pkg / l4con / server / src / ARCH-arm / gmode-arch.c
1 /**
2  * \file        con/server/src/ARCH-x86/gmode-arch.c
3  * \brief       graphics mode initialization, x86 specific
4  *
5  * \date        2005
6  * \author      Frank Mehnert <fm3@os.inf.tu-dresden.de> */
7 /*
8  * (c) 2005-2009 Author(s)
9  *     economic rights: Technische Universität Dresden (Germany)
10  *
11  * This file is part of TUD:OS and distributed under the terms of the
12  * GNU General Public License 2.
13  * Please see the COPYING-GPL-2 file for details.
14  */
15
16 #include <stdio.h>
17 #include <stdlib.h>
18
19 #include <l4/sys/l4int.h>
20 #include <l4/drivers/lcd.h>
21 #include <l4/util/macros.h>
22
23 #include "gmode.h"
24 #include "vc.h"
25
26 void
27 init_gmode(void)
28 {
29   struct arm_lcd_ops *lcd;
30
31   if (!(lcd = arm_lcd_probe(NULL)))
32     {
33       printf("Could not find LCD.\n");
34       return;
35     }
36
37   printf("Using LCD driver: %s\n", lcd->get_info());
38
39   if (lcd->get_fbinfo(&fb_info))
40     {
41       printf("Could not get framebuffer info\n");
42       return;
43     }
44
45   YRES_CLIENT           = fb_info.height - status_area;
46   fb_info.buffer_offset = 0;
47
48   gr_vmem         = lcd->get_fb();
49   gr_vmem_size    = lcd->get_video_mem_size();
50   gr_vmem_maxmap  = gr_vmem + gr_vmem_size;
51   vis_vmem        = gr_vmem;
52   if (!gr_vmem)
53     {
54       printf("Could not setup video memory\n");
55       exit(1);
56     }
57
58   lcd->enable();
59 }