1 /* SPDX-License-Identifier: GPL-2.0 */ 2 /* Copyright (c) 2019 Fuzhou Rockchip Electronics Co., Ltd. */ 3 4 #ifndef _RKISP_ISP_STATS_V1X_H 5 #define _RKISP_ISP_STATS_V1X_H 6 7 #include <linux/rkisp1-config.h> 8 #include <linux/interrupt.h> 9 #include <linux/kfifo.h> 10 #include "common.h" 11 12 struct rkisp_isp_stats_vdev; 13 14 struct rkisp_stats_v1x_ops { 15 void (*get_awb_meas)(struct rkisp_isp_stats_vdev *stats_vdev, 16 struct rkisp1_stat_buffer *pbuf); 17 void (*get_aec_meas)(struct rkisp_isp_stats_vdev *stats_vdev, 18 struct rkisp1_stat_buffer *pbuf); 19 void (*get_afc_meas)(struct rkisp_isp_stats_vdev *stats_vdev, 20 struct rkisp1_stat_buffer *pbuf); 21 void (*get_hst_meas)(struct rkisp_isp_stats_vdev *stats_vdev, 22 struct rkisp1_stat_buffer *pbuf); 23 void (*get_bls_meas)(struct rkisp_isp_stats_vdev *stats_vdev, 24 struct rkisp1_stat_buffer *pbuf); 25 void (*get_emb_data)(struct rkisp_isp_stats_vdev *stats_vdev, 26 struct rkisp1_stat_buffer *pbuf); 27 }; 28 29 struct rkisp_stats_v1x_config { 30 const int ae_mean_max; 31 const int hist_bin_n_max; 32 }; 33 34 #if IS_ENABLED(CONFIG_VIDEO_ROCKCHIP_ISP_VERSION_V1X) 35 void rkisp_init_stats_vdev_v1x(struct rkisp_isp_stats_vdev *stats_vdev); 36 void rkisp_uninit_stats_vdev_v1x(struct rkisp_isp_stats_vdev *stats_vdev); 37 #else rkisp_init_stats_vdev_v1x(struct rkisp_isp_stats_vdev * stats_vdev)38static inline void rkisp_init_stats_vdev_v1x(struct rkisp_isp_stats_vdev *stats_vdev) {} rkisp_uninit_stats_vdev_v1x(struct rkisp_isp_stats_vdev * stats_vdev)39static inline void rkisp_uninit_stats_vdev_v1x(struct rkisp_isp_stats_vdev *stats_vdev) {} 40 #endif 41 42 #endif /* _RKISP_ISP_STATS_V1X_H */ 43