am 84a0fc9c: am e83cfe69: Merge commit \'504c5d9c6e05cecabcb2404a2fd1a05259602858...
[GitHub/LineageOS/android_hardware_samsung_slsi_exynos5.git] / include / s3c_lcd.h
CommitLineData
20c51683
JC
1/*
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
55struct s3c_fb_user_ion_client {
56 int fd;
57 int offset;
58};
59
60/*
61 * C U S T O M I O C T L S
62 *
63*/
64
65#define S3CFB_WIN_POSITION _IOW ('F', 203, struct s3cfb_user_window)
66#define S3CFB_WIN_SET_PLANE_ALPHA _IOW ('F', 204, struct s3cfb_user_plane_alpha)
67#define S3CFB_WIN_SET_CHROMA _IOW ('F', 205, struct s3cfb_user_chroma)
68#define S3CFB_SET_VSYNC_INT _IOW ('F', 206, unsigned int)
69#define S3CFB_SET_SUSPEND_FIFO _IOW ('F', 300, unsigned long)
70#define S3CFB_SET_RESUME_FIFO _IOW ('F', 301, unsigned long)
71#define S3CFB_GET_LCD_WIDTH _IOR ('F', 302, int)
72#define S3CFB_GET_LCD_HEIGHT _IOR ('F', 303, int)
73#define S3CFB_GET_FB_PHY_ADDR _IOR ('F', 310, unsigned int)
74#define S3C_FB_GET_CURR_FB_INFO _IOR ('F', 305, s3c_fb_next_info_t)
75#define S3CFB_GET_ION_USER_HANDLE _IOWR('F', 208, struct s3c_fb_user_ion_client)
76
77/***************** LCD frame buffer *****************/
78#define FB0_NAME "/dev/fb0"
79#define FB1_NAME "/dev/fb1"
80#define FB2_NAME "/dev/fb2"
81#define FB3_NAME "/dev/fb3"
82#define FB4_NAME "/dev/fb4"
83
84#endif