summaryrefslogtreecommitdiffstats
path: root/sys/compat/linux/linux_videodev_compat.h
blob: 98034bcbb04d57aa802bcab7422fc84a88705af7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
/*
 * $FreeBSD$
 */

/*
 * This file defines compatibility versions of several video structures
 * defined in the Linux videodev.h header (linux_videodev.h).  The
 * structures defined in this file are the ones that have been determined
 * to have 32- to 64-bit size dependencies.
 */

#ifndef _LINUX_VIDEODEV_COMPAT_H_
#define	_LINUX_VIDEODEV_COMPAT_H_

struct l_video_tuner
{
	l_int		tuner;
#define LINUX_VIDEO_TUNER_NAME_SIZE	32
	char		name[LINUX_VIDEO_TUNER_NAME_SIZE];
	l_ulong		rangelow, rangehigh;
	uint32_t	flags;
	uint16_t	mode;
	uint16_t	signal;
};

struct l_video_clip
{
	int32_t		x, y;
	int32_t		width, height;
	l_uintptr_t	next;
};

struct l_video_window
{
	uint32_t	x, y;
	uint32_t	width, height;
	uint32_t	chromakey;
	uint32_t	flags;
	l_uintptr_t	clips;
	l_int		clipcount;
};

struct l_video_buffer
{
	l_uintptr_t	base;
	l_int		height, width;
	l_int		depth;
	l_int		bytesperline;
};

struct l_video_code
{
#define LINUX_VIDEO_CODE_LOADWHAT_SIZE	16
	char		loadwhat[LINUX_VIDEO_CODE_LOADWHAT_SIZE];
	l_int		datasize;
	l_uintptr_t	data;
};

#endif /* !_LINUX_VIDEODEV_COMPAT_H_ */
OpenPOWER on IntegriCloud