• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /* SPDX-License-Identifier: GPL-2.0 */
2 /* Copyright (c) 2021 Fuzhou Rockchip Electronics Co., Ltd. */
3 
4 #ifndef _RKISP_EXTERNAL_H
5 #define _RKISP_EXTERNAL_H
6 
7 
8 #define RKISP_VICAP_CMD_MODE \
9 	_IOW('V', BASE_VIDIOC_PRIVATE + 0, struct rkisp_vicap_mode)
10 
11 #define RKISP_VICAP_CMD_INIT_BUF \
12 	 _IOW('V', BASE_VIDIOC_PRIVATE + 1, int)
13 
14 #define RKISP_VICAP_BUF_CNT 1
15 #define RKISP_RX_BUF_POOL_MAX (RKISP_VICAP_BUF_CNT * 3)
16 
17 struct rkisp_vicap_mode {
18 	char *name;
19 	bool is_rdbk;
20 };
21 
22 enum rx_buf_type {
23 	BUF_SHORT,
24 	BUF_MIDDLE,
25 	BUF_LONG,
26 };
27 
28 struct rkisp_rx_buf_pool {
29 	struct rkisp_rx_buf *dbufs;
30 	void *mem_priv;
31 	dma_addr_t dma;
32 	void *vaddr;
33 };
34 
35 struct rkisp_rx_buf {
36 	struct list_head list;
37 	struct dma_buf *dbuf;
38 	enum rx_buf_type type;
39 	u64 timestamp;
40 	u32 sequence;
41 	bool is_init;
42 };
43 
44 #endif
45