xref: /linux/drivers/staging/media/atomisp/pci/isp/kernels/tnr/tnr_1.0/ia_css_tnr.host.h (revision 03ab8e6297acd1bc0eedaa050e2a1635c576fd11)
1 /* SPDX-License-Identifier: GPL-2.0 */
2 /*
3  * Support for Intel Camera Imaging ISP subsystem.
4  * Copyright (c) 2015, Intel Corporation.
5  *
6  * This program is free software; you can redistribute it and/or modify it
7  * under the terms and conditions of the GNU General Public License,
8  * version 2, as published by the Free Software Foundation.
9  *
10  * This program is distributed in the hope it will be useful, but WITHOUT
11  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
12  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
13  * more details.
14  */
15 
16 #ifndef __IA_CSS_TNR_HOST_H
17 #define __IA_CSS_TNR_HOST_H
18 
19 #include "ia_css_binary.h"
20 #include "ia_css_tnr_state.h"
21 #include "ia_css_tnr_types.h"
22 #include "ia_css_tnr_param.h"
23 
24 extern const struct ia_css_tnr_config default_tnr_config;
25 
26 void
27 ia_css_tnr_encode(
28     struct sh_css_isp_tnr_params *to,
29     const struct ia_css_tnr_config *from,
30     unsigned int size);
31 
32 void
33 ia_css_tnr_dump(
34     const struct sh_css_isp_tnr_params *tnr,
35     unsigned int level);
36 
37 void
38 ia_css_tnr_debug_dtrace(
39     const struct ia_css_tnr_config *config,
40     unsigned int level);
41 
42 int ia_css_tnr_config(struct sh_css_isp_tnr_isp_config      *to,
43 		      const struct ia_css_tnr_configuration *from,
44 		      unsigned int size);
45 
46 int ia_css_tnr_configure(const struct ia_css_binary        *binary,
47 			 const struct ia_css_frame * const *frames);
48 
49 void
50 ia_css_init_tnr_state(
51     struct sh_css_isp_tnr_dmem_state *state,
52     size_t size);
53 #endif /* __IA_CSS_TNR_HOST_H */
54