1 /**************************************************************************** 2 **************************************************************************** 3 *** 4 *** This header was automatically generated from a Linux kernel header 5 *** of the same name, to make information necessary for userspace to 6 *** call into the kernel available to libc. It contains only constants, 7 *** structures, and macros generated from the original header, and thus, 8 *** contains no copyrightable information. 9 *** 10 *** To edit the content of this header, modify the corresponding 11 *** source file (e.g. under external/kernel-headers/original/) then 12 *** run bionic/libc/kernel/tools/update_all.py 13 *** 14 *** Any manual change here will be lost the next time this script will 15 *** be run. You've been warned! 16 *** 17 **************************************************************************** 18 ****************************************************************************/ 19 #ifndef _UAPI_DVBDMX_H_ 20 #define _UAPI_DVBDMX_H_ 21 #include <linux/types.h> 22 #include <time.h> 23 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 24 #define DMX_FILTER_SIZE 16 25 typedef enum { 26 DMX_OUT_DECODER, 27 DMX_OUT_TAP, 28 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 29 DMX_OUT_TS_TAP, 30 DMX_OUT_TSDEMUX_TAP 31 } dmx_output_t; 32 typedef enum { 33 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 34 DMX_IN_FRONTEND, 35 DMX_IN_DVR 36 } dmx_input_t; 37 typedef enum dmx_ts_pes { 38 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 39 DMX_PES_AUDIO0, 40 DMX_PES_VIDEO0, 41 DMX_PES_TELETEXT0, 42 DMX_PES_SUBTITLE0, 43 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 44 DMX_PES_PCR0, 45 DMX_PES_AUDIO1, 46 DMX_PES_VIDEO1, 47 DMX_PES_TELETEXT1, 48 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 49 DMX_PES_SUBTITLE1, 50 DMX_PES_PCR1, 51 DMX_PES_AUDIO2, 52 DMX_PES_VIDEO2, 53 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 54 DMX_PES_TELETEXT2, 55 DMX_PES_SUBTITLE2, 56 DMX_PES_PCR2, 57 DMX_PES_AUDIO3, 58 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 59 DMX_PES_VIDEO3, 60 DMX_PES_TELETEXT3, 61 DMX_PES_SUBTITLE3, 62 DMX_PES_PCR3, 63 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 64 DMX_PES_OTHER 65 } dmx_pes_type_t; 66 #define DMX_PES_AUDIO DMX_PES_AUDIO0 67 #define DMX_PES_VIDEO DMX_PES_VIDEO0 68 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 69 #define DMX_PES_TELETEXT DMX_PES_TELETEXT0 70 #define DMX_PES_SUBTITLE DMX_PES_SUBTITLE0 71 #define DMX_PES_PCR DMX_PES_PCR0 72 typedef struct dmx_filter { 73 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 74 __u8 filter[DMX_FILTER_SIZE]; 75 __u8 mask[DMX_FILTER_SIZE]; 76 __u8 mode[DMX_FILTER_SIZE]; 77 } dmx_filter_t; 78 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 79 struct dmx_sct_filter_params { 80 __u16 pid; 81 dmx_filter_t filter; 82 __u32 timeout; 83 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 84 __u32 flags; 85 #define DMX_CHECK_CRC 1 86 #define DMX_ONESHOT 2 87 #define DMX_IMMEDIATE_START 4 88 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 89 #define DMX_KERNEL_CLIENT 0x8000 90 }; 91 struct dmx_pes_filter_params { 92 __u16 pid; 93 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 94 dmx_input_t input; 95 dmx_output_t output; 96 dmx_pes_type_t pes_type; 97 __u32 flags; 98 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 99 }; 100 typedef struct dmx_caps { 101 __u32 caps; 102 int num_decoders; 103 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 104 } dmx_caps_t; 105 typedef enum { 106 DMX_SOURCE_FRONT0 = 0, 107 DMX_SOURCE_FRONT1, 108 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 109 DMX_SOURCE_FRONT2, 110 DMX_SOURCE_FRONT3, 111 DMX_SOURCE_DVR0 = 16, 112 DMX_SOURCE_DVR1, 113 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 114 DMX_SOURCE_DVR2, 115 DMX_SOURCE_DVR3 116 } dmx_source_t; 117 struct dmx_stc { 118 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 119 unsigned int num; 120 unsigned int base; 121 __u64 stc; 122 }; 123 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 124 #define DMX_START _IO('o', 41) 125 #define DMX_STOP _IO('o', 42) 126 #define DMX_SET_FILTER _IOW('o', 43, struct dmx_sct_filter_params) 127 #define DMX_SET_PES_FILTER _IOW('o', 44, struct dmx_pes_filter_params) 128 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 129 #define DMX_SET_BUFFER_SIZE _IO('o', 45) 130 #define DMX_GET_PES_PIDS _IOR('o', 47, __u16[5]) 131 #define DMX_GET_CAPS _IOR('o', 48, dmx_caps_t) 132 #define DMX_SET_SOURCE _IOW('o', 49, dmx_source_t) 133 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 134 #define DMX_GET_STC _IOWR('o', 50, struct dmx_stc) 135 #define DMX_ADD_PID _IOW('o', 51, __u16) 136 #define DMX_REMOVE_PID _IOW('o', 52, __u16) 137 #endif 138 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 139