blob: 17c7915b7acde81c90c0ea1f67a2576689e601e8 [file] [log] [blame]
Arnaud Patard20fd5762005-09-09 13:10:07 -07001/*
Uwe Zeisbergerf30c2262006-10-03 23:01:26 +02002 * linux/drivers/video/s3c2410fb.h
Arnaud Patard20fd5762005-09-09 13:10:07 -07003 * 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
Ben Dooksaff39a82007-07-31 00:37:37 -070033 struct resource *mem;
34 void __iomem *io;
35
Arnaud Patard20fd5762005-09-09 13:10:07 -070036 struct s3c2410fb_mach_info *mach_info;
37
38 /* raw memory addresses */
39 dma_addr_t map_dma; /* physical */
40 u_char * map_cpu; /* virtual */
41 u_int map_size;
42
43 struct s3c2410fb_hw regs;
44
45 /* addresses of pieces placed in raw buffer */
46 u_char * screen_cpu; /* virtual address of buffer */
47 dma_addr_t screen_dma; /* physical address of buffer */
48 unsigned int palette_ready;
49
50 /* keep these registers in case we need to re-write palette */
51 u32 palette_buffer[256];
52 u32 pseudo_pal[16];
53};
54
55#define PALETTE_BUFF_CLEAR (0x80000000) /* entry is clear/invalid */
56
57int s3c2410fb_init(void);
58
59#endif