1/*
2 * linux/drivers/video/s3c2410fb.h
3 * Copyright (c) Arnaud Patard
4 *
5 * This file is subject to the terms and conditions of the GNU General Public
6 * License.  See the file COPYING in the main directory of this archive for
7 * more details.
8 *
9 *	    S3C2410 LCD Controller Frame Buffer Driver
10 *	    based on skeletonfb.c, sa1100fb.h
11 *
12 * ChangeLog
13 *
14 * 2004-12-04: Arnaud Patard <arnaud.patard@rtp-net.org>
15 *      - Moved dprintk to s3c2410fb.c
16 *
17 * 2004-09-07: Arnaud Patard <arnaud.patard@rtp-net.org>
18 * 	- Renamed from h1940fb.h to s3c2410fb.h
19 * 	- Chenged h1940 to s3c2410
20 *
21 * 2004-07-15: Arnaud Patard <arnaud.patard@rtp-net.org>
22 *	- First version
23 */
24
25#ifndef __S3C2410FB_H
26#define __S3C2410FB_H
27
28struct s3c2410fb_info {
29	struct fb_info		*fb;
30	struct device		*dev;
31	struct clk		*clk;
32
33	struct s3c2410fb_mach_info *mach_info;
34
35	/* raw memory addresses */
36	dma_addr_t		map_dma;	/* physical */
37	u_char *		map_cpu;	/* virtual */
38	u_int			map_size;
39
40	struct s3c2410fb_hw	regs;
41
42	/* addresses of pieces placed in raw buffer */
43	u_char *		screen_cpu;	/* virtual address of buffer */
44	dma_addr_t		screen_dma;	/* physical address of buffer */
45	unsigned int		palette_ready;
46
47	/* keep these registers in case we need to re-write palette */
48	u32			palette_buffer[256];
49	u32			pseudo_pal[16];
50};
51
52#define PALETTE_BUFF_CLEAR (0x80000000)	/* entry is clear/invalid */
53
54int s3c2410fb_init(void);
55
56#endif
57