1 /* SPDX-License-Identifier: GPL-2.0 */
2 /*
3  * Support for Intel Camera Imaging ISP subsystem.
4  * Copyright (c) 2015, Intel Corporation.
5  */
6 
7 #ifndef __IA_CSS_S3A_HOST_H
8 #define __IA_CSS_S3A_HOST_H
9 
10 #include "ia_css_s3a_types.h"
11 #include "ia_css_s3a_param.h"
12 #include "bh/bh_2/ia_css_bh.host.h"
13 
14 extern const struct ia_css_3a_config default_3a_config;
15 
16 void
17 ia_css_s3a_configure(
18     unsigned int raw_bit_depth);
19 
20 void
21 ia_css_s3a_encode(
22     struct sh_css_isp_s3a_params *to,
23     const struct ia_css_3a_config *from,
24     unsigned int size);
25 
26 #ifndef IA_CSS_NO_DEBUG
27 void
28 ia_css_ae_dump(
29     const struct sh_css_isp_ae_params *ae,
30     unsigned int level);
31 
32 void
33 ia_css_awb_dump(
34     const struct sh_css_isp_awb_params *awb,
35     unsigned int level);
36 
37 void
38 ia_css_af_dump(
39     const struct sh_css_isp_af_params *af,
40     unsigned int level);
41 
42 void
43 ia_css_s3a_dump(
44     const struct sh_css_isp_s3a_params *s3a,
45     unsigned int level);
46 
47 void
48 ia_css_s3a_debug_dtrace(
49     const struct ia_css_3a_config *config,
50     unsigned int level);
51 #endif
52 
53 void
54 ia_css_s3a_hmem_decode(
55     struct ia_css_3a_statistics *host_stats,
56     const struct ia_css_bh_table *hmem_buf);
57 
58 void
59 ia_css_s3a_dmem_decode(
60     struct ia_css_3a_statistics *host_stats,
61     const struct ia_css_3a_output *isp_stats);
62 
63 void
64 ia_css_s3a_vmem_decode(
65     struct ia_css_3a_statistics *host_stats,
66     const u16 *isp_stats_hi,
67     const uint16_t *isp_stats_lo);
68 
69 #endif /* __IA_CSS_S3A_HOST_H */
70