Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
awilliam
GitHub Repository: awilliam/linux-vfio
Path: blob/master/arch/avr32/boards/merisc/display.c
10819 views
1
/*
2
* Display setup code for the Merisc board
3
*
4
* Copyright (C) 2008 Martinsson Elektronik AB
5
*
6
* This program is free software; you can redistribute it and/or modify
7
* it under the terms of the GNU General Public License version 2 as
8
* published by the Free Software Foundation.
9
*/
10
#include <linux/init.h>
11
#include <linux/platform_device.h>
12
#include <linux/fb.h>
13
#include <video/atmel_lcdc.h>
14
#include <asm/setup.h>
15
#include <mach/board.h>
16
#include "merisc.h"
17
18
static struct fb_videomode merisc_fb_videomode[] = {
19
{
20
.refresh = 44,
21
.xres = 640,
22
.yres = 480,
23
.left_margin = 96,
24
.right_margin = 96,
25
.upper_margin = 34,
26
.lower_margin = 8,
27
.hsync_len = 64,
28
.vsync_len = 64,
29
.name = "640x480 @ 44",
30
.pixclock = KHZ2PICOS(25180),
31
.sync = 0,
32
.vmode = FB_VMODE_NONINTERLACED,
33
},
34
};
35
36
static struct fb_monspecs merisc_fb_monspecs = {
37
.manufacturer = "Kyo",
38
.monitor = "TCG075VG2AD",
39
.modedb = merisc_fb_videomode,
40
.modedb_len = ARRAY_SIZE(merisc_fb_videomode),
41
.hfmin = 30000,
42
.hfmax = 33333,
43
.vfmin = 60,
44
.vfmax = 90,
45
.dclkmax = 30000000,
46
};
47
48
struct atmel_lcdfb_info merisc_lcdc_data = {
49
.default_bpp = 24,
50
.default_dmacon = ATMEL_LCDC_DMAEN | ATMEL_LCDC_DMA2DEN,
51
.default_lcdcon2 = (ATMEL_LCDC_DISTYPE_TFT
52
| ATMEL_LCDC_CLKMOD_ALWAYSACTIVE
53
| ATMEL_LCDC_MEMOR_BIG),
54
.default_monspecs = &merisc_fb_monspecs,
55
.guard_time = 2,
56
};
57
58
static int __init merisc_display_init(void)
59
{
60
at32_add_device_lcdc(0, &merisc_lcdc_data, fbmem_start,
61
fbmem_size, 0);
62
63
return 0;
64
}
65
device_initcall(merisc_display_init);
66
67