2 * (c) 2009 Adam Lackorzynski <adam@os.inf.tu-dresden.de>
3 * economic rights: Technische Universität Dresden (Germany)
5 * This file is part of TUD:OS and distributed under the terms of the
6 * GNU General Public License 2.
7 * Please see the COPYING-GPL-2 file for details.
10 #include <l4/drivers/lcd.h>
11 #include <l4/sys/cache.h>
18 Lcd_drv_fb::setup_drv(Prog_args *pa)
20 struct arm_lcd_ops *lcd;
22 if (!(lcd = arm_lcd_probe(pa->config_str)))
24 printf("Could not find LCD.\n");
28 printf("Using LCD driver: %s\n", lcd->get_info());
30 _vidmem_start = (l4_addr_t)lcd->get_fb();
34 printf("Driver init failed\n");
38 _vidmem_size = lcd->get_video_mem_size();
39 _vidmem_end = _vidmem_start + _vidmem_size;
41 if (lcd->get_fbinfo((l4re_video_view_info_t *)&_view_info))
43 printf("Failed to get driver framebuffer info\n");
47 _screen_info.width = _view_info.width;
48 _screen_info.height = _view_info.height;
49 _screen_info.flags = L4Re::Video::Goos::F_auto_refresh;
50 _screen_info.pixel_info = _view_info.pixel_info;
51 _view_info.buffer_offset = 0;
57 splash_display(&_screen_info, _vidmem_start);
60 //l4_cache_dma_coherent(_vidmem_start, _vidmem_start + _vidmem_size);
61 l4_cache_dma_coherent_full();