xref: /linux/include/uapi/linux/dvb/net.h (revision 7ae9fb1b7ecbb5d85d07857943f677fd1a559b18)
1 /* SPDX-License-Identifier: LGPL-2.1+ WITH Linux-syscall-note */
2 /*
3  * net.h
4  *
5  * Copyright (C) 2000 Marcus Metzler <marcus@convergence.de>
6  *                  & Ralph  Metzler <ralph@convergence.de>
7  *                    for convergence integrated media GmbH
8  */
9 
10 #ifndef _DVBNET_H_
11 #define _DVBNET_H_
12 
13 #include <linux/types.h>
14 
15 /**
16  * struct dvb_net_if - describes a DVB network interface
17  *
18  * @pid: Packet ID (PID) of the MPEG-TS that contains data
19  * @if_num: number of the Digital TV interface.
20  * @feedtype: Encapsulation type of the feed.
21  *
22  * A MPEG-TS stream may contain packet IDs with IP packages on it.
23  * This struct describes it, and the type of encoding.
24  *
25  * @feedtype can be:
26  *
27  *	- %DVB_NET_FEEDTYPE_MPE for MPE encoding
28  *	- %DVB_NET_FEEDTYPE_ULE for ULE encoding.
29  */
30 struct dvb_net_if {
31 	__u16 pid;
32 	__u16 if_num;
33 	__u8  feedtype;
34 #define DVB_NET_FEEDTYPE_MPE 0	/* multi protocol encapsulation */
35 #define DVB_NET_FEEDTYPE_ULE 1	/* ultra lightweight encapsulation */
36 };
37 
38 
39 #define NET_ADD_IF    _IOWR('o', 52, struct dvb_net_if)
40 #define NET_REMOVE_IF _IO('o', 53)
41 #define NET_GET_IF    _IOWR('o', 54, struct dvb_net_if)
42 
43 
44 /* binary compatibility cruft: */
45 struct __dvb_net_if_old {
46 	__u16 pid;
47 	__u16 if_num;
48 };
49 #define __NET_ADD_IF_OLD _IOWR('o', 52, struct __dvb_net_if_old)
50 #define __NET_GET_IF_OLD _IOWR('o', 54, struct __dvb_net_if_old)
51 
52 
53 #endif /*_DVBNET_H_*/
54