]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/blob - drivers/staging/media/atomisp/pci/atomisp2/css2400/isp/kernels/sc/sc_1.0/ia_css_sc.host.h
workqueue: avoid hard lockups in show_workqueue_state()
[mirror_ubuntu-bionic-kernel.git] / drivers / staging / media / atomisp / pci / atomisp2 / css2400 / isp / kernels / sc / sc_1.0 / ia_css_sc.host.h
1 /*
2 * Support for Intel Camera Imaging ISP subsystem.
3 * Copyright (c) 2015, Intel Corporation.
4 *
5 * This program is free software; you can redistribute it and/or modify it
6 * under the terms and conditions of the GNU General Public License,
7 * version 2, as published by the Free Software Foundation.
8 *
9 * This program is distributed in the hope it will be useful, but WITHOUT
10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
12 * more details.
13 */
14
15 #ifndef __IA_CSS_SC_HOST_H
16 #define __IA_CSS_SC_HOST_H
17
18 #include "sh_css_params.h"
19
20 #include "ia_css_sc_types.h"
21 #include "ia_css_sc_param.h"
22
23 void
24 ia_css_sc_encode(
25 struct sh_css_isp_sc_params *to,
26 struct ia_css_shading_table **from,
27 unsigned size);
28
29 void
30 ia_css_sc_dump(
31 const struct sh_css_isp_sc_params *sc,
32 unsigned level);
33
34 #ifdef ISP2401
35 /** @brief Configure the shading correction.
36 * @param[out] to Parameters used in the shading correction kernel in the isp.
37 * @param[in] from Parameters passed from the host.
38 * @param[in] size Size of the sh_css_isp_sc_isp_config structure.
39 *
40 * This function passes the parameters for the shading correction from the host to the isp.
41 */
42 void
43 ia_css_sc_config(
44 struct sh_css_isp_sc_isp_config *to,
45 const struct ia_css_sc_configuration *from,
46 unsigned size);
47
48 /** @brief Configure the shading correction.
49 * @param[in] binary The binary, which has the shading correction.
50 * @param[in] internal_frame_origin_x_bqs_on_sctbl
51 * X coordinate (in bqs) of the origin of the internal frame on the shading table.
52 * @param[in] internal_frame_origin_y_bqs_on_sctbl
53 * Y coordinate (in bqs) of the origin of the internal frame on the shading table.
54 *
55 * This function calls the ia_css_configure_sc() function.
56 * (The ia_css_configure_sc() function is automatically generated in ia_css_isp.configs.c.)
57 * The ia_css_configure_sc() function calls the ia_css_sc_config() function
58 * to pass the parameters for the shading correction from the host to the isp.
59 */
60 void
61 ia_css_sc_configure(
62 const struct ia_css_binary *binary,
63 uint32_t internal_frame_origin_x_bqs_on_sctbl,
64 uint32_t internal_frame_origin_y_bqs_on_sctbl);
65
66 #endif
67 /* ------ deprecated(bz675) : from ------ */
68 void
69 sh_css_get_shading_settings(const struct ia_css_isp_parameters *params,
70 struct ia_css_shading_settings *settings);
71
72 void
73 sh_css_set_shading_settings(struct ia_css_isp_parameters *params,
74 const struct ia_css_shading_settings *settings);
75 /* ------ deprecated(bz675) : to ------ */
76
77 #endif /* __IA_CSS_SC_HOST_H */