GNU Linux-libre 4.14.251-gnu1
[releases.git] / drivers / staging / media / atomisp / pci / atomisp2 / css2400 / hive_isp_css_include / host / timed_ctrl_public.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 __TIMED_CTRL_PUBLIC_H_INCLUDED__
16 #define __TIMED_CTRL_PUBLIC_H_INCLUDED__
17
18 #include "system_types.h"
19
20 /*! Write to a control register of TIMED_CTRL[ID]
21
22  \param ID[in]                          TIMED_CTRL identifier
23  \param reg_addr[in]            register byte address
24  \param value[in]                       The data to be written
25
26  \return none, TIMED_CTRL[ID].ctrl[reg] = value
27  */
28 STORAGE_CLASS_TIMED_CTRL_H void timed_ctrl_reg_store(
29         const timed_ctrl_ID_t   ID,
30         const unsigned int              reg_addr,
31         const hrt_data                  value);
32
33 extern void timed_ctrl_snd_commnd(
34         const timed_ctrl_ID_t                           ID,
35         hrt_data                                mask,
36         hrt_data                                condition,
37         hrt_data                                counter,
38         hrt_address                             addr,
39         hrt_data                                value);
40
41 extern void timed_ctrl_snd_sp_commnd(
42         const timed_ctrl_ID_t                           ID,
43         hrt_data                                mask,
44         hrt_data                                condition,
45         hrt_data                                counter,
46         const sp_ID_t                   SP_ID,
47         hrt_address                             offset,
48         hrt_data                                value);
49
50 extern void timed_ctrl_snd_gpio_commnd(
51         const timed_ctrl_ID_t                           ID,
52         hrt_data                                mask,
53         hrt_data                                condition,
54         hrt_data                                counter,
55         const gpio_ID_t                 GPIO_ID,
56         hrt_address                             offset,
57         hrt_data                                value);
58
59 #endif /* __TIMED_CTRL_PUBLIC_H_INCLUDED__ */