GNU Linux-libre 4.14.266-gnu1
[releases.git] / drivers / staging / media / atomisp / pci / atomisp2 / css2400 / runtime / tagger / interface / ia_css_tagger_common.h
1 #ifndef ISP2401
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 #else
16 /**
17 Support for Intel Camera Imaging ISP subsystem.
18 Copyright (c) 2010 - 2015, Intel Corporation.
19
20 This program is free software; you can redistribute it and/or modify it
21 under the terms and conditions of the GNU General Public License,
22 version 2, as published by the Free Software Foundation.
23
24 This program is distributed in the hope it will be useful, but WITHOUT
25 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
26 FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
27 more details.
28 */
29 #endif
30
31 #ifndef __IA_CSS_TAGGER_COMMON_H__
32 #define __IA_CSS_TAGGER_COMMON_H__
33
34 #include <system_local.h>
35 #include <type_support.h>
36
37 /**
38  * @brief The tagger's circular buffer.
39  *
40  * Should be one less than NUM_CONTINUOUS_FRAMES in sh_css_internal.h
41  */
42 #if defined(HAS_SP_2400)
43 #define MAX_CB_ELEMS_FOR_TAGGER 14
44 #else
45 #define MAX_CB_ELEMS_FOR_TAGGER 9
46 #endif
47
48 /**
49  * @brief Data structure for the tagger buffer element.
50  */
51 typedef struct {
52         uint32_t frame; /* the frame value stored in the element */
53         uint32_t param; /* the param value stored in the element */
54         uint8_t mark;   /* the mark on the element */
55         uint8_t lock;   /* the lock on the element */
56         uint8_t exp_id; /* exp_id of frame, for debugging only */
57 } ia_css_tagger_buf_sp_elem_t;
58
59 #endif /* __IA_CSS_TAGGER_COMMON_H__ */