#ifndef _THEAD_VIDEO_H_ #define _THEAD_VIDEO_H_ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include "subdev.h" #define video_info(fmt, ...) printk(KERN_DEBUG pr_fmt(fmt), ##__VA_ARGS__) #define video_warn(fmt, ...) printk(KERN_WARNING pr_fmt(fmt), ##__VA_ARGS__) #define video_err(fmt, ...) printk(KERN_ERR pr_fmt(fmt), ##__VA_ARGS__) typedef struct { int sub_dev_num; sub_dev_info_t sub_dev[20]; } pipline_t; typedef struct video_drvdata { struct cdev cdev; struct device *dev; dev_t devt; struct class *class; int device_idx; struct mutex mutex; bool actived; pid_t actived_owner; int pipline_num; pipline_t piplines[20]; int vi_mem_pool_region_id; void *private; } video_drvdata_t; typedef struct { char *subdev_name; char *sensor_name; unsigned int path_type; unsigned int pipeline_id; } pathtype_set_t; int video_create_capabilities_sysfs(struct platform_device *pdev); int video_remove_capabilities_sysfs(struct platform_device *pdev); int vedio_get_path_type(const char *subdev_name, const char *path_name); #endif /* _THEAD_VIDEO_H_ */