Linux 6.7-rc7
[linux-modified.git] / include / uapi / linux / dvb / net.h
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_*/