1 /* 2 * include/linux/amlogic/media/video_sink/v4lvideo_ext.h 3 * 4 * Copyright (C) 2017 Amlogic, Inc. All rights reserved. 5 * 6 * This program is free software; you can redistribute it and/or modify 7 * it under the terms of the GNU General Public License as published by 8 * the Free Software Foundation; either version 2 of the License, or 9 * (at your option) any later version. 10 * 11 * This program is distributed in the hope that it will be useful, but WITHOUT 12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 14 * more details. 15 * 16 */ 17 18 #ifndef V4LVIDEO_EXT_H 19 #define V4LVIDEO_EXT_H 20 21 int v4lvideo_assign_map(char **receiver_name, int *inst); 22 23 int v4lvideo_alloc_map(int *inst); 24 25 void v4lvideo_release_map(int inst); 26 27 struct file_private_data { 28 struct vframe_s vf; 29 struct vframe_s *vf_p; 30 bool is_keep; 31 int keep_id; 32 int keep_head_id; 33 struct file *file; 34 ulong v4l_dev_handle; 35 ulong v4l_inst_handle; 36 u32 v4l_inst_id; 37 }; 38 39 struct v4l_data_t { 40 struct vframe_s *vf; 41 char *dst_addr; 42 }; 43 44 void v4lvideo_data_copy(struct v4l_data_t *v4l_data); 45 struct vframe_s *v4lvideo_get_vf(int fd); 46 void dim_post_keep_cmd_release2(struct vframe_s *vframe); 47 48 #endif /* V4LVIDEO_EXT_H */ 49 50