2 * (c) 2009 Technische Universität Dresden
3 * This file is part of TUD:OS and distributed under the terms of the
4 * GNU General Public License 2.
5 * Please see the COPYING-GPL-2 file for details.
8 #include <l4/arm_drivers/lcd.h>
9 #include <l4/sys/cache.h>
16 Lcd_drv_fb::setup_drv(Prog_args *pa)
18 struct arm_lcd_ops *lcd;
20 if (!(lcd = arm_lcd_probe(pa->config_str)))
22 printf("Could not find LCD.\n");
26 printf("Using LCD driver: %s\n", lcd->get_info());
28 _vidmem_start = (l4_addr_t)lcd->get_fb();
32 printf("Driver init failed\n");
36 _vidmem_size = lcd->get_video_mem_size();
37 _vidmem_end = _vidmem_start + _vidmem_size;
39 if (lcd->get_fbinfo((l4re_video_view_info_t *)&_view_info))
41 printf("Failed to get driver framebuffer info\n");
45 _screen_info.width = _view_info.width;
46 _screen_info.height = _view_info.height;
47 _screen_info.flags = L4Re::Video::Goos::F_auto_refresh;
48 _screen_info.pixel_info = _view_info.pixel_info;
49 _view_info.buffer_offset = 0;
55 splash_display(&_screen_info, _vidmem_start);
58 //l4_cache_dma_coherent(_vidmem_start, _vidmem_start + _vidmem_size);
59 l4_cache_dma_coherent_full();