• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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)38 static 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)39 static 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