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_BUFQ_COMM_H
17 #define _IA_CSS_BUFQ_COMM_H
18 
19 #include "system_global.h"
20 
21 enum sh_css_queue_id {
22 	SH_CSS_INVALID_QUEUE_ID     = -1,
23 	SH_CSS_QUEUE_A_ID = 0,
24 	SH_CSS_QUEUE_B_ID,
25 	SH_CSS_QUEUE_C_ID,
26 	SH_CSS_QUEUE_D_ID,
27 	SH_CSS_QUEUE_E_ID,
28 	SH_CSS_QUEUE_F_ID,
29 	SH_CSS_QUEUE_G_ID,
30 #if defined(HAS_NO_INPUT_SYSTEM)
31 	/* input frame queue for skycam */
32 	SH_CSS_QUEUE_H_ID,
33 #endif
34 #if defined(USE_INPUT_SYSTEM_VERSION_2) || defined(USE_INPUT_SYSTEM_VERSION_2401)
35 	SH_CSS_QUEUE_H_ID, /* for metadata */
36 #endif
37 
38 #if defined(HAS_NO_INPUT_SYSTEM) || defined(USE_INPUT_SYSTEM_VERSION_2) || defined(USE_INPUT_SYSTEM_VERSION_2401)
39 #define SH_CSS_MAX_NUM_QUEUES (SH_CSS_QUEUE_H_ID + 1)
40 #else
41 #define SH_CSS_MAX_NUM_QUEUES (SH_CSS_QUEUE_G_ID + 1)
42 #endif
43 
44 };
45 
46 #define SH_CSS_MAX_DYNAMIC_BUFFERS_PER_THREAD SH_CSS_MAX_NUM_QUEUES
47 /* for now we staticaly assign queue 0 & 1 to parameter sets */
48 #define IA_CSS_PARAMETER_SET_QUEUE_ID SH_CSS_QUEUE_A_ID
49 #define IA_CSS_PER_FRAME_PARAMETER_SET_QUEUE_ID SH_CSS_QUEUE_B_ID
50 
51 #endif
52