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