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 */ 24 struct s3cfb_user_window { 25 int x; 26 int y; 27 }; 28 29 struct s3cfb_user_plane_alpha { 30 int channel; 31 unsigned char red; 32 unsigned char green; 33 unsigned char blue; 34 }; 35 36 struct s3cfb_user_chroma { 37 int enabled; 38 unsigned char red; 39 unsigned char green; 40 unsigned char blue; 41 }; 42 43 typedef 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 struct 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 85