Commit | Line | Data |
---|---|---|
f30c2269 | 1 | /* linux/include/asm-arm/arch-s3c2410/fb.h |
20fd5767 AP |
2 | * |
3 | * Copyright (c) 2004 Arnaud Patard <arnaud.patard@rtp-net.org> | |
4 | * | |
5 | * Inspired by pxafb.h | |
6 | * | |
7 | * This program is free software; you can redistribute it and/or modify | |
8 | * it under the terms of the GNU General Public License version 2 as | |
9 | * published by the Free Software Foundation. | |
20fd5767 AP |
10 | */ |
11 | ||
12 | #ifndef __ASM_ARM_FB_H | |
13 | #define __ASM_ARM_FB_H | |
14 | ||
15 | #include <asm/arch/regs-lcd.h> | |
16 | ||
20fd5767 AP |
17 | struct s3c2410fb_hw { |
18 | unsigned long lcdcon1; | |
19 | unsigned long lcdcon2; | |
20 | unsigned long lcdcon3; | |
21 | unsigned long lcdcon4; | |
22 | unsigned long lcdcon5; | |
23 | }; | |
24 | ||
09fe75f6 KH |
25 | /* LCD description */ |
26 | struct s3c2410fb_display { | |
27 | /* LCD type */ | |
28 | unsigned type; | |
357b819d | 29 | |
20fd5767 | 30 | /* Screen size */ |
09fe75f6 KH |
31 | unsigned short width; |
32 | unsigned short height; | |
20fd5767 AP |
33 | |
34 | /* Screen info */ | |
09fe75f6 KH |
35 | unsigned short xres; |
36 | unsigned short yres; | |
37 | unsigned short bpp; | |
20fd5767 | 38 | |
1f411537 KH |
39 | unsigned short left_margin; /* value in pixels (TFT) or HCLKs (STN) */ |
40 | unsigned short right_margin; /* value in pixels (TFT) or HCLKs (STN) */ | |
41 | unsigned short hsync_len; /* value in pixels (TFT) or HCLKs (STN) */ | |
42 | unsigned short upper_margin; /* value in lines (TFT) or 0 (STN) */ | |
43 | unsigned short lower_margin; /* value in lines (TFT) or 0 (STN) */ | |
44 | unsigned short vsync_len; /* value in lines (TFT) or 0 (STN) */ | |
45 | ||
20fd5767 | 46 | /* lcd configuration registers */ |
f28ef573 | 47 | unsigned long lcdcon1; |
f28ef573 | 48 | unsigned long lcdcon5; |
09fe75f6 KH |
49 | }; |
50 | ||
51 | struct s3c2410fb_mach_info { | |
09fe75f6 KH |
52 | |
53 | struct s3c2410fb_display *displays; /* attached diplays info */ | |
54 | unsigned num_displays; /* number of defined displays */ | |
55 | unsigned default_display; | |
20fd5767 AP |
56 | |
57 | /* GPIOs */ | |
58 | ||
59 | unsigned long gpcup; | |
60 | unsigned long gpcup_mask; | |
61 | unsigned long gpccon; | |
62 | unsigned long gpccon_mask; | |
63 | unsigned long gpdup; | |
64 | unsigned long gpdup_mask; | |
65 | unsigned long gpdcon; | |
66 | unsigned long gpdcon_mask; | |
67 | ||
68 | /* lpc3600 control register */ | |
69 | unsigned long lpcsel; | |
70 | }; | |
71 | ||
893b0309 | 72 | extern void __init s3c24xx_fb_set_platdata(struct s3c2410fb_mach_info *); |
20fd5767 AP |
73 | |
74 | #endif /* __ASM_ARM_FB_H */ |