Merge 5.0-rc6 into driver-core-next
[linux/fpc-iii.git] / arch / arm / plat-samsung / include / plat / fb-s3c2410.h
blob614240d768b470c90e4195e381b8f34889b264c0
1 /* SPDX-License-Identifier: GPL-2.0 */
2 /*
3 * Copyright (c) 2004 Arnaud Patard <arnaud.patard@rtp-net.org>
5 * Inspired by pxafb.h
6 */
8 #ifndef __ASM_PLAT_FB_S3C2410_H
9 #define __ASM_PLAT_FB_S3C2410_H __FILE__
11 struct s3c2410fb_hw {
12 unsigned long lcdcon1;
13 unsigned long lcdcon2;
14 unsigned long lcdcon3;
15 unsigned long lcdcon4;
16 unsigned long lcdcon5;
19 /* LCD description */
20 struct s3c2410fb_display {
21 /* LCD type */
22 unsigned type;
24 /* Screen size */
25 unsigned short width;
26 unsigned short height;
28 /* Screen info */
29 unsigned short xres;
30 unsigned short yres;
31 unsigned short bpp;
33 unsigned pixclock; /* pixclock in picoseconds */
34 unsigned short left_margin; /* value in pixels (TFT) or HCLKs (STN) */
35 unsigned short right_margin; /* value in pixels (TFT) or HCLKs (STN) */
36 unsigned short hsync_len; /* value in pixels (TFT) or HCLKs (STN) */
37 unsigned short upper_margin; /* value in lines (TFT) or 0 (STN) */
38 unsigned short lower_margin; /* value in lines (TFT) or 0 (STN) */
39 unsigned short vsync_len; /* value in lines (TFT) or 0 (STN) */
41 /* lcd configuration registers */
42 unsigned long lcdcon5;
45 struct s3c2410fb_mach_info {
47 struct s3c2410fb_display *displays; /* attached displays info */
48 unsigned num_displays; /* number of defined displays */
49 unsigned default_display;
51 /* GPIOs */
53 unsigned long gpcup;
54 unsigned long gpcup_mask;
55 unsigned long gpccon;
56 unsigned long gpccon_mask;
57 unsigned long gpdup;
58 unsigned long gpdup_mask;
59 unsigned long gpdcon;
60 unsigned long gpdcon_mask;
62 /* lpc3600 control register */
63 unsigned long lpcsel;
66 extern void __init s3c24xx_fb_set_platdata(struct s3c2410fb_mach_info *);
68 #endif /* __ASM_PLAT_FB_S3C2410_H */