1 /* 2 * This file is auto-generated. Modifications will be lost. 3 * 4 * See https://android.googlesource.com/platform/bionic/+/master/libc/kernel/ 5 * for more information. 6 */ 7 #ifndef __MSM_VIDC_PRIVATE_H__ 8 #define __MSM_VIDC_PRIVATE_H__ 9 #include <linux/videodev2.h> 10 #define VIDIOC_VIDEO_CMD _IOWR('V', BASE_VIDIOC_PRIVATE_VIDEO, struct msm_vidc_arg) 11 #define MSM_VIDC_CMD_START 0x10000000 12 #define MSM_CVP_START (MSM_VIDC_CMD_START + 0x1000) 13 #define MSM_CVP_GET_SESSION_INFO (MSM_CVP_START + 1) 14 #define MSM_CVP_REQUEST_POWER (MSM_CVP_START + 2) 15 #define MSM_CVP_REGISTER_BUFFER (MSM_CVP_START + 3) 16 #define MSM_CVP_UNREGISTER_BUFFER (MSM_CVP_START + 4) 17 #define MSM_CVP_FLAG_UNSECURE 0x00000000 18 #define MSM_CVP_FLAG_SECURE 0x00000001 19 #define MSM_CVP_BUFTYPE_INPUT 0x00000001 20 #define MSM_CVP_BUFTYPE_OUTPUT 0x00000002 21 #define MSM_CVP_BUFTYPE_INTERNAL_1 0x00000003 22 #define MSM_CVP_BUFTYPE_INTERNAL_2 0x00000004 23 struct msm_cvp_session_info { 24 unsigned int session_id; 25 unsigned int reserved[10]; 26 }; 27 struct msm_cvp_request_power { 28 unsigned int clock_cycles_a; 29 unsigned int clock_cycles_b; 30 unsigned int ddr_bw; 31 unsigned int sys_cache_bw; 32 unsigned int reserved[8]; 33 }; 34 struct msm_cvp_buffer { 35 unsigned int index; 36 unsigned int type; 37 unsigned int fd; 38 unsigned int size; 39 unsigned int offset; 40 unsigned int pixelformat; 41 unsigned int flags; 42 unsigned int reserved[5]; 43 }; 44 struct msm_vidc_arg { 45 unsigned int type; 46 union data_t { 47 struct msm_cvp_session_info session; 48 struct msm_cvp_request_power req_power; 49 struct msm_cvp_buffer regbuf; 50 struct msm_cvp_buffer unregbuf; 51 } data; 52 unsigned int reserved[12]; 53 }; 54 #endif 55