blob: be40968f899e42ce0f9e7e54eebab337ca1ae92d [file] [log] [blame]
Arnaud Patard20fd5762005-09-09 13:10:07 -07001/*
2 * linux/drivers/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