blob: 4790491ba9d0b71de50e96635859181fed4e4b9a [file] [log] [blame]
Arnaud Patard20fd5762005-09-09 13:10:07 -07001/* linux/include/asm/arch-s3c2410/fb.h
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.
10 *
11 *
12 * Changelog:
13 * 07-Sep-2004 RTP Created file
14 * 03-Nov-2004 BJD Updated and minor cleanups
15 * 03-Aug-2005 RTP Renamed to fb.h
Ben Dooks893b0302005-10-28 15:31:45 +010016 * 26-Oct-2005 BJD Changed name of platdata init
Arnaud Patard20fd5762005-09-09 13:10:07 -070017*/
18
19#ifndef __ASM_ARM_FB_H
20#define __ASM_ARM_FB_H
21
22#include <asm/arch/regs-lcd.h>
23
24struct s3c2410fb_val {
25 unsigned int defval;
26 unsigned int min;
27 unsigned int max;
28};
29
30struct s3c2410fb_hw {
31 unsigned long lcdcon1;
32 unsigned long lcdcon2;
33 unsigned long lcdcon3;
34 unsigned long lcdcon4;
35 unsigned long lcdcon5;
36};
37
38struct s3c2410fb_mach_info {
39 unsigned char fixed_syncs; /* do not update sync/border */
40
41 /* Screen size */
42 int width;
43 int height;
44
45 /* Screen info */
46 struct s3c2410fb_val xres;
47 struct s3c2410fb_val yres;
48 struct s3c2410fb_val bpp;
49
50 /* lcd configuration registers */
51 struct s3c2410fb_hw regs;
52
53 /* GPIOs */
54
55 unsigned long gpcup;
56 unsigned long gpcup_mask;
57 unsigned long gpccon;
58 unsigned long gpccon_mask;
59 unsigned long gpdup;
60 unsigned long gpdup_mask;
61 unsigned long gpdcon;
62 unsigned long gpdcon_mask;
63
64 /* lpc3600 control register */
65 unsigned long lpcsel;
66};
67
Ben Dooks893b0302005-10-28 15:31:45 +010068extern void __init s3c24xx_fb_set_platdata(struct s3c2410fb_mach_info *);
Arnaud Patard20fd5762005-09-09 13:10:07 -070069
70#endif /* __ASM_ARM_FB_H */