1/* SPDX-License-Identifier: GPL-2.0 */
2/*
3 */
4struct btcx_riscmem {
5	unsigned int   size;
6	__le32         *cpu;
7	__le32         *jmp;
8	dma_addr_t     dma;
9};
10
11struct btcx_skiplist {
12	int start;
13	int end;
14};
15
16int  btcx_riscmem_alloc(struct pci_dev *pci,
17			struct btcx_riscmem *risc,
18			unsigned int size);
19void btcx_riscmem_free(struct pci_dev *pci,
20		       struct btcx_riscmem *risc);
21
22int btcx_screen_clips(int swidth, int sheight, struct v4l2_rect *win,
23		      struct v4l2_clip *clips, unsigned int n);
24int btcx_align(struct v4l2_rect *win, struct v4l2_clip *clips,
25	       unsigned int n, int mask);
26void btcx_sort_clips(struct v4l2_clip *clips, unsigned int nclips);
27void btcx_calc_skips(int line, int width, int *maxy,
28		     struct btcx_skiplist *skips, unsigned int *nskips,
29		     const struct v4l2_clip *clips, unsigned int nclips);
30