1/**************************************************************************** 2 **************************************************************************** 3 *** 4 *** This header was automatically generated from a Linux kernel header 5 *** of the same name, to make information necessary for userspace to 6 *** call into the kernel available to libc. It contains only constants, 7 *** structures, and macros generated from the original header, and thus, 8 *** contains no copyrightable information. 9 *** 10 **************************************************************************** 11 ****************************************************************************/ 12#ifndef _MSM_MDP_H_ 13#define _MSM_MDP_H_ 14 15#include <linux/types.h> 16 17#define MSMFB_IOCTL_MAGIC 'm' 18#define MSMFB_GRP_DISP _IOW(MSMFB_IOCTL_MAGIC, 1, unsigned int) 19#define MSMFB_BLIT _IOW(MSMFB_IOCTL_MAGIC, 2, unsigned int) 20 21enum { 22 MDP_RGB_565, 23 MDP_XRGB_8888, 24 MDP_Y_CBCR_H2V2, 25 MDP_ARGB_8888, 26 MDP_RGB_888, 27 MDP_Y_CRCB_H2V2, 28 MDP_YCRYCB_H2V1, 29 MDP_Y_CRCB_H2V1, 30 MDP_Y_CBCR_H2V1, 31 MDP_RGBA_8888, 32 MDP_BGRA_8888, 33 MDP_IMGTYPE_LIMIT 34}; 35 36enum { 37 PMEM_IMG, 38 FB_IMG, 39}; 40 41#define MDP_ROT_NOP 0 42#define MDP_FLIP_LR 0x1 43#define MDP_FLIP_UD 0x2 44#define MDP_ROT_90 0x4 45#define MDP_ROT_180 (MDP_FLIP_UD|MDP_FLIP_LR) 46#define MDP_ROT_270 (MDP_ROT_90|MDP_FLIP_UD|MDP_FLIP_LR) 47#define MDP_DITHER 0x8 48#define MDP_BLUR 0x10 49 50#define MDP_TRANSP_NOP 0xffffffff 51#define MDP_ALPHA_NOP 0xff 52 53struct mdp_rect { 54 uint32_t x; 55 uint32_t y; 56 uint32_t w; 57 uint32_t h; 58}; 59 60struct mdp_img { 61 uint32_t width; 62 uint32_t height; 63 uint32_t format; 64 uint32_t offset; 65 int memory_id; 66}; 67 68struct mdp_blit_req { 69 struct mdp_img src; 70 struct mdp_img dst; 71 struct mdp_rect src_rect; 72 struct mdp_rect dst_rect; 73 uint32_t alpha; 74 uint32_t transp_mask; 75 uint32_t flags; 76}; 77 78struct mdp_blit_req_list { 79 uint32_t count; 80 struct mdp_blit_req req[]; 81}; 82 83#endif 84