xref: /freebsd/sys/compat/linux/linux_videodev_compat.h (revision 783d3ff6d7fae619db8a7990b8a6387de0c677b5)
1 /*
2  * This file defines compatibility versions of several video structures
3  * defined in the Linux videodev.h header (linux_videodev.h).  The
4  * structures defined in this file are the ones that have been determined
5  * to have 32- to 64-bit size dependencies.
6  */
7 
8 #ifndef _LINUX_VIDEODEV_COMPAT_H_
9 #define	_LINUX_VIDEODEV_COMPAT_H_
10 
11 struct l_video_tuner
12 {
13 	l_int		tuner;
14 #define LINUX_VIDEO_TUNER_NAME_SIZE	32
15 	char		name[LINUX_VIDEO_TUNER_NAME_SIZE];
16 	l_ulong		rangelow, rangehigh;
17 	uint32_t	flags;
18 	uint16_t	mode;
19 	uint16_t	signal;
20 };
21 
22 struct l_video_clip
23 {
24 	int32_t		x, y;
25 	int32_t		width, height;
26 	l_uintptr_t	next;
27 };
28 
29 struct l_video_window
30 {
31 	uint32_t	x, y;
32 	uint32_t	width, height;
33 	uint32_t	chromakey;
34 	uint32_t	flags;
35 	l_uintptr_t	clips;
36 	l_int		clipcount;
37 };
38 
39 struct l_video_buffer
40 {
41 	l_uintptr_t	base;
42 	l_int		height, width;
43 	l_int		depth;
44 	l_int		bytesperline;
45 };
46 
47 struct l_video_code
48 {
49 #define LINUX_VIDEO_CODE_LOADWHAT_SIZE	16
50 	char		loadwhat[LINUX_VIDEO_CODE_LOADWHAT_SIZE];
51 	l_int		datasize;
52 	l_uintptr_t	data;
53 };
54 
55 #endif /* !_LINUX_VIDEODEV_COMPAT_H_ */
56