blob: 2782542c9c8148e81e168fe8e6add2fd56180047 [file] [log] [blame]
codeworkxf1be2fe2012-03-24 17:38:29 +01001/*
2 * Copyright@ Samsung Electronics Co. LTD
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16
17#ifndef _S3CFB_LCD_
18#define _S3CFB_LCD_
19
20/*
21 * S T R U C T U R E S F O R C U S T O M I O C T L S
22 *
23*/
24struct s3cfb_user_window {
25 int x;
26 int y;
27};
28
29struct s3cfb_user_plane_alpha {
30 int channel;
31 unsigned char red;
32 unsigned char green;
33 unsigned char blue;
34};
35
36struct s3cfb_user_chroma {
37 int enabled;
38 unsigned char red;
39 unsigned char green;
40 unsigned char blue;
41};
42
43typedef struct {
44 unsigned int phy_start_addr;
45 unsigned int xres; /* visible resolution*/
46 unsigned int yres;
47 unsigned int xres_virtual; /* virtual resolution*/
48 unsigned int yres_virtual;
49 unsigned int xoffset; /* offset from virtual to visible */
50 unsigned int yoffset; /* resolution */
51 unsigned int lcd_offset_x;
52 unsigned int lcd_offset_y;
53} s3c_fb_next_info_t;
54
55#ifdef BOARD_USE_V4L2_ION
56struct s3c_fb_user_ion_client {
57 int fd;
codeworkxf1be2fe2012-03-24 17:38:29 +010058};
59#endif
60
61/*
62 * C U S T O M I O C T L S
63 *
64*/
65
66#define S3CFB_WIN_POSITION _IOW ('F', 203, struct s3cfb_user_window)
67#define S3CFB_WIN_SET_PLANE_ALPHA _IOW ('F', 204, struct s3cfb_user_plane_alpha)
68#define S3CFB_WIN_SET_CHROMA _IOW ('F', 205, struct s3cfb_user_chroma)
69#define S3CFB_SET_VSYNC_INT _IOW ('F', 206, unsigned int)
70#define S3CFB_SET_SUSPEND_FIFO _IOW ('F', 300, unsigned long)
71#define S3CFB_SET_RESUME_FIFO _IOW ('F', 301, unsigned long)
72#define S3CFB_GET_LCD_WIDTH _IOR ('F', 302, int)
73#define S3CFB_GET_LCD_HEIGHT _IOR ('F', 303, int)
74#define S3CFB_GET_FB_PHY_ADDR _IOR ('F', 310, unsigned int)
75#define S3C_FB_GET_CURR_FB_INFO _IOR ('F', 305, s3c_fb_next_info_t)
76#define S3CFB_GET_ION_USER_HANDLE _IOWR('F', 208, struct s3c_fb_user_ion_client)
77
78/***************** LCD frame buffer *****************/
79#define FB0_NAME "/dev/fb0"
80#define FB1_NAME "/dev/fb1"
81#define FB2_NAME "/dev/fb2"
82#define FB3_NAME "/dev/fb3"
83#define FB4_NAME "/dev/fb4"
84
85#endif