| /kernel/linux/linux-5.10/drivers/media/platform/sti/c8sectpfe/ |
| D | c8sectpfe-common.c | 34 static int register_dvb(struct stdemux *demux, struct dvb_adapter *adap, in register_dvb() argument 40 demux->dvb_demux.dmx.capabilities = DMX_TS_FILTERING | in register_dvb() 44 demux->dvb_demux.priv = demux; in register_dvb() 45 demux->dvb_demux.filternum = C8SECTPFE_MAXCHANNEL; in register_dvb() 46 demux->dvb_demux.feednum = C8SECTPFE_MAXCHANNEL; in register_dvb() 48 demux->dvb_demux.start_feed = start_feed; in register_dvb() 49 demux->dvb_demux.stop_feed = stop_feed; in register_dvb() 50 demux->dvb_demux.write_to_decoder = NULL; in register_dvb() 52 result = dvb_dmx_init(&demux->dvb_demux); in register_dvb() 59 demux->dmxdev.filternum = demux->dvb_demux.filternum; in register_dvb() [all …]
|
| /kernel/linux/linux-6.6/drivers/media/platform/st/sti/c8sectpfe/ |
| D | c8sectpfe-common.c | 34 static int register_dvb(struct stdemux *demux, struct dvb_adapter *adap, in register_dvb() argument 40 demux->dvb_demux.dmx.capabilities = DMX_TS_FILTERING | in register_dvb() 44 demux->dvb_demux.priv = demux; in register_dvb() 45 demux->dvb_demux.filternum = C8SECTPFE_MAXCHANNEL; in register_dvb() 46 demux->dvb_demux.feednum = C8SECTPFE_MAXCHANNEL; in register_dvb() 48 demux->dvb_demux.start_feed = start_feed; in register_dvb() 49 demux->dvb_demux.stop_feed = stop_feed; in register_dvb() 50 demux->dvb_demux.write_to_decoder = NULL; in register_dvb() 52 result = dvb_dmx_init(&demux->dvb_demux); in register_dvb() 59 demux->dmxdev.filternum = demux->dvb_demux.filternum; in register_dvb() [all …]
|
| /kernel/linux/linux-6.6/include/media/ |
| D | demux.h | 2 * demux.h 4 * The Kernel Digital TV Demux kABI defines a driver-internal interface for 6 * demux layer. 70 * @TS_DEMUX: In case TS_PACKET is set, send the TS to the demux 90 * A TS feed is typically mapped to a hardware PID filter on the demux chip. 147 * the demux. It should only be called when no filtering 159 * A TS feed is typically mapped to a hardware PID filter on the demux chip. 190 * typedef dmx_ts_cb - DVB demux TS filter callback function prototype 202 * This function callback prototype, provided by the client of the demux API, 203 * is called from the demux code. The function is only called when filtering [all …]
|
| D | dvb_demux.h | 2 * dvb_demux.h: DVB kernel demux API 27 #include <media/demux.h> 30 * enum dvb_dmx_filter_type - type of demux feed. 41 * enum dvb_dmx_state - state machine for a demux filter. 64 * struct dvb_demux_filter - Describes a DVB demux section filter. 72 * @index: index of the used demux filter. 111 * @demux: pointer to &struct dvb_demux. 126 * @list_head: head for the list of digital TV demux feeds. 141 struct dvb_demux *demux; member 165 * struct dvb_demux - represents a digital TV demux [all …]
|
| /kernel/linux/linux-5.10/include/media/ |
| D | demux.h | 2 * demux.h 4 * The Kernel Digital TV Demux kABI defines a driver-internal interface for 6 * demux layer. 70 * @TS_DEMUX: In case TS_PACKET is set, send the TS to the demux 90 * A TS feed is typically mapped to a hardware PID filter on the demux chip. 147 * the demux. It should only be called when no filtering 159 * A TS feed is typically mapped to a hardware PID filter on the demux chip. 190 * typedef dmx_ts_cb - DVB demux TS filter callback function prototype 202 * This function callback prototype, provided by the client of the demux API, 203 * is called from the demux code. The function is only called when filtering [all …]
|
| D | dvb_demux.h | 2 * dvb_demux.h: DVB kernel demux API 27 #include <media/demux.h> 30 * enum dvb_dmx_filter_type - type of demux feed. 41 * enum dvb_dmx_state - state machine for a demux filter. 64 * struct dvb_demux_filter - Describes a DVB demux section filter. 72 * @index: index of the used demux filter. 111 * @demux: pointer to &struct dvb_demux. 126 * @list_head: head for the list of digital TV demux feeds. 141 struct dvb_demux *demux; member 165 * struct dvb_demux - represents a digital TV demux [all …]
|
| /kernel/linux/linux-5.10/drivers/media/dvb-core/ |
| D | dvb_demux.c | 2 * dvb_demux.c - DVB kernel demux API 168 struct dvb_demux *demux = feed->demux; in dvb_dmx_swfilter_section_feed() local 182 demux->check_crc32(feed, sec->secbuf, sec->seclen)) { in dvb_dmx_swfilter_section_feed() 224 * Losless Section Demux 1.4.1 by Emard 236 * when demux is started, let feed->pusi_seen = false to 244 struct dvb_demux *demux = feed->demux; in dvb_dmx_swfilter_section_copy_dump() local 262 demux->memcopy(feed, sec->secbuf_base + sec->tsfeedp, buf, len); in dvb_dmx_swfilter_section_copy_dump() 394 if (feed->demux->write_to_decoder) in dvb_dmx_swfilter_packet_type() 395 feed->demux->write_to_decoder(feed, buf, 188); in dvb_dmx_swfilter_packet_type() 415 static void dvb_dmx_swfilter_packet(struct dvb_demux *demux, const u8 *buf) in dvb_dmx_swfilter_packet() argument [all …]
|
| /kernel/linux/linux-6.6/drivers/media/dvb-core/ |
| D | dvb_demux.c | 3 * dvb_demux.c - DVB kernel demux API 158 struct dvb_demux *demux = feed->demux; in dvb_dmx_swfilter_section_feed() local 172 demux->check_crc32(feed, sec->secbuf, sec->seclen)) { in dvb_dmx_swfilter_section_feed() 214 * Losless Section Demux 1.4.1 by Emard 226 * when demux is started, let feed->pusi_seen = false to 234 struct dvb_demux *demux = feed->demux; in dvb_dmx_swfilter_section_copy_dump() local 252 demux->memcopy(feed, sec->secbuf_base + sec->tsfeedp, buf, len); in dvb_dmx_swfilter_section_copy_dump() 384 if (feed->demux->write_to_decoder) in dvb_dmx_swfilter_packet_type() 385 feed->demux->write_to_decoder(feed, buf, 188); in dvb_dmx_swfilter_packet_type() 405 static void dvb_dmx_swfilter_packet(struct dvb_demux *demux, const u8 *buf) in dvb_dmx_swfilter_packet() argument [all …]
|
| /kernel/linux/linux-5.10/Documentation/driver-api/media/ |
| D | dtv-demux.rst | 3 Digital TV Demux kABI 6 Digital TV Demux 9 The Kernel Digital TV Demux kABI defines a driver-internal interface for 11 demux layer. It is only of interest for Digital TV device driver writers. 12 The header file for this kABI is named ``demux.h`` and located in 15 The demux kABI should be implemented for each demux in the system. It is 16 used to select the TS source of a demux and to manage the demux resources. 17 When the demux client allocates a resource via the demux kABI, it receives 20 Each demux receives its TS input from a DVB front-end or from memory, as 21 set via this demux kABI. In a system with more than one front-end, the kABI [all …]
|
| /kernel/linux/linux-6.6/Documentation/driver-api/media/ |
| D | dtv-demux.rst | 3 Digital TV Demux kABI 6 Digital TV Demux 9 The Kernel Digital TV Demux kABI defines a driver-internal interface for 11 demux layer. It is only of interest for Digital TV device driver writers. 12 The header file for this kABI is named ``demux.h`` and located in 15 The demux kABI should be implemented for each demux in the system. It is 16 used to select the TS source of a demux and to manage the demux resources. 17 When the demux client allocates a resource via the demux kABI, it receives 20 Each demux receives its TS input from a DVB front-end or from memory, as 21 set via this demux kABI. In a system with more than one front-end, the kABI [all …]
|
| /kernel/linux/linux-5.10/drivers/media/firewire/ |
| D | firedtv-dvb.c | 51 struct firedtv *fdtv = dvbdmxfeed->demux->priv; in fdtv_start_feed() 121 struct dvb_demux *demux = dvbdmxfeed->demux; in fdtv_stop_feed() local 122 struct firedtv *fdtv = demux->priv; in fdtv_stop_feed() 128 (demux->dmx.frontend->source != DMX_MEMORY_FE))) { in fdtv_stop_feed() 132 !demux->pesfilter[dvbdmxfeed->pes_type]) in fdtv_stop_feed() 135 demux->pids[dvbdmxfeed->pes_type] |= 0x8000; in fdtv_stop_feed() 136 demux->pesfilter[dvbdmxfeed->pes_type] = NULL; in fdtv_stop_feed() 170 fdtv->demux.dmx.capabilities = 0; in fdtv_dvb_register() 172 fdtv->demux.priv = fdtv; in fdtv_dvb_register() 173 fdtv->demux.filternum = 16; in fdtv_dvb_register() [all …]
|
| /kernel/linux/linux-6.6/drivers/media/firewire/ |
| D | firedtv-dvb.c | 51 struct firedtv *fdtv = dvbdmxfeed->demux->priv; in fdtv_start_feed() 121 struct dvb_demux *demux = dvbdmxfeed->demux; in fdtv_stop_feed() local 122 struct firedtv *fdtv = demux->priv; in fdtv_stop_feed() 128 (demux->dmx.frontend->source != DMX_MEMORY_FE))) { in fdtv_stop_feed() 132 !demux->pesfilter[dvbdmxfeed->pes_type]) in fdtv_stop_feed() 135 demux->pids[dvbdmxfeed->pes_type] |= 0x8000; in fdtv_stop_feed() 136 demux->pesfilter[dvbdmxfeed->pes_type] = NULL; in fdtv_stop_feed() 170 fdtv->demux.dmx.capabilities = 0; in fdtv_dvb_register() 172 fdtv->demux.priv = fdtv; in fdtv_dvb_register() 173 fdtv->demux.filternum = 16; in fdtv_dvb_register() [all …]
|
| /kernel/linux/linux-5.10/drivers/media/common/b2c2/ |
| D | flexcop.c | 56 struct flexcop_device *fc = dvbdmxfeed->demux->priv; in flexcop_dvb_start_feed() 62 struct flexcop_device *fc = dvbdmxfeed->demux->priv; in flexcop_dvb_stop_feed() 77 fc->demux.dmx.capabilities = (DMX_TS_FILTERING | DMX_SECTION_FILTERING in flexcop_dvb_init() 79 fc->demux.priv = fc; in flexcop_dvb_init() 80 fc->demux.filternum = fc->demux.feednum = FC_MAX_FEED; in flexcop_dvb_init() 81 fc->demux.start_feed = flexcop_dvb_start_feed; in flexcop_dvb_init() 82 fc->demux.stop_feed = flexcop_dvb_stop_feed; in flexcop_dvb_init() 83 fc->demux.write_to_decoder = NULL; in flexcop_dvb_init() 85 ret = dvb_dmx_init(&fc->demux); in flexcop_dvb_init() 93 fc->dmxdev.filternum = fc->demux.feednum; in flexcop_dvb_init() [all …]
|
| /kernel/linux/linux-6.6/drivers/media/common/b2c2/ |
| D | flexcop.c | 47 struct flexcop_device *fc = dvbdmxfeed->demux->priv; in flexcop_dvb_start_feed() 53 struct flexcop_device *fc = dvbdmxfeed->demux->priv; in flexcop_dvb_stop_feed() 68 fc->demux.dmx.capabilities = (DMX_TS_FILTERING | DMX_SECTION_FILTERING in flexcop_dvb_init() 70 fc->demux.priv = fc; in flexcop_dvb_init() 71 fc->demux.filternum = fc->demux.feednum = FC_MAX_FEED; in flexcop_dvb_init() 72 fc->demux.start_feed = flexcop_dvb_start_feed; in flexcop_dvb_init() 73 fc->demux.stop_feed = flexcop_dvb_stop_feed; in flexcop_dvb_init() 74 fc->demux.write_to_decoder = NULL; in flexcop_dvb_init() 76 ret = dvb_dmx_init(&fc->demux); in flexcop_dvb_init() 84 fc->dmxdev.filternum = fc->demux.feednum; in flexcop_dvb_init() [all …]
|
| /kernel/linux/linux-5.10/drivers/media/common/videobuf2/ |
| D | videobuf2-dvb.c | 6 * (i.e. we are using the software demux, ...). Also uses the 30 dvb_dmx_swfilter(&dvb->demux, vb2_plane_vaddr(vb, 0), in dvb_fnc() 37 struct dvb_demux *demux = feed->demux; in vb2_dvb_start_feed() local 38 struct vb2_dvb *dvb = demux->priv; in vb2_dvb_start_feed() 41 if (!demux->dmx.frontend) in vb2_dvb_start_feed() 60 struct dvb_demux *demux = feed->demux; in vb2_dvb_stop_feed() local 61 struct vb2_dvb *dvb = demux->priv; in vb2_dvb_stop_feed() 114 /* register demux stuff */ in vb2_dvb_register_frontend() 115 dvb->demux.dmx.capabilities = in vb2_dvb_register_frontend() 118 dvb->demux.priv = dvb; in vb2_dvb_register_frontend() [all …]
|
| /kernel/linux/linux-6.6/drivers/media/common/videobuf2/ |
| D | videobuf2-dvb.c | 6 * (i.e. we are using the software demux, ...). Also uses vb2 30 dvb_dmx_swfilter(&dvb->demux, vb2_plane_vaddr(vb, 0), in dvb_fnc() 37 struct dvb_demux *demux = feed->demux; in vb2_dvb_start_feed() local 38 struct vb2_dvb *dvb = demux->priv; in vb2_dvb_start_feed() 41 if (!demux->dmx.frontend) in vb2_dvb_start_feed() 60 struct dvb_demux *demux = feed->demux; in vb2_dvb_stop_feed() local 61 struct vb2_dvb *dvb = demux->priv; in vb2_dvb_stop_feed() 114 /* register demux stuff */ in vb2_dvb_register_frontend() 115 dvb->demux.dmx.capabilities = in vb2_dvb_register_frontend() 118 dvb->demux.priv = dvb; in vb2_dvb_register_frontend() [all …]
|
| /kernel/linux/linux-6.6/drivers/media/pci/mantis/ |
| D | mantis_dvb.c | 93 struct dvb_demux *dvbdmx = dvbdmxfeed->demux; in mantis_dvb_start_feed() 116 struct dvb_demux *dvbdmx = dvbdmxfeed->demux; in mantis_dvb_stop_feed() 155 mantis->demux.dmx.capabilities = DMX_TS_FILTERING | in mantis_dvb_init() 159 mantis->demux.priv = mantis; in mantis_dvb_init() 160 mantis->demux.filternum = 256; in mantis_dvb_init() 161 mantis->demux.feednum = 256; in mantis_dvb_init() 162 mantis->demux.start_feed = mantis_dvb_start_feed; in mantis_dvb_init() 163 mantis->demux.stop_feed = mantis_dvb_stop_feed; in mantis_dvb_init() 164 mantis->demux.write_to_decoder = NULL; in mantis_dvb_init() 167 result = dvb_dmx_init(&mantis->demux); in mantis_dvb_init() [all …]
|
| /kernel/linux/linux-5.10/drivers/media/pci/mantis/ |
| D | mantis_dvb.c | 93 struct dvb_demux *dvbdmx = dvbdmxfeed->demux; in mantis_dvb_start_feed() 116 struct dvb_demux *dvbdmx = dvbdmxfeed->demux; in mantis_dvb_stop_feed() 155 mantis->demux.dmx.capabilities = DMX_TS_FILTERING | in mantis_dvb_init() 159 mantis->demux.priv = mantis; in mantis_dvb_init() 160 mantis->demux.filternum = 256; in mantis_dvb_init() 161 mantis->demux.feednum = 256; in mantis_dvb_init() 162 mantis->demux.start_feed = mantis_dvb_start_feed; in mantis_dvb_init() 163 mantis->demux.stop_feed = mantis_dvb_stop_feed; in mantis_dvb_init() 164 mantis->demux.write_to_decoder = NULL; in mantis_dvb_init() 167 result = dvb_dmx_init(&mantis->demux); in mantis_dvb_init() [all …]
|
| /kernel/linux/linux-5.10/drivers/media/usb/au0828/ |
| D | au0828-dvb.c | 149 /* Feed the transport payload into the kernel demux */ in urb_completion() 150 dvb_dmx_swfilter_packets(&dev->dvb.demux, in urb_completion() 275 struct dvb_demux *demux = feed->demux; in au0828_dvb_start_feed() local 276 struct au0828_dev *dev = (struct au0828_dev *) demux->priv; in au0828_dvb_start_feed() 282 if (!demux->dmx.frontend) in au0828_dvb_start_feed() 307 struct dvb_demux *demux = feed->demux; in au0828_dvb_stop_feed() local 308 struct au0828_dev *dev = (struct au0828_dev *) demux->priv; in au0828_dvb_stop_feed() 447 /* register demux stuff */ in dvb_register() 448 dvb->demux.dmx.capabilities = in dvb_register() 451 dvb->demux.priv = dev; in dvb_register() [all …]
|
| /kernel/linux/linux-6.6/drivers/media/usb/au0828/ |
| D | au0828-dvb.c | 149 /* Feed the transport payload into the kernel demux */ in urb_completion() 150 dvb_dmx_swfilter_packets(&dev->dvb.demux, in urb_completion() 275 struct dvb_demux *demux = feed->demux; in au0828_dvb_start_feed() local 276 struct au0828_dev *dev = demux->priv; in au0828_dvb_start_feed() 282 if (!demux->dmx.frontend) in au0828_dvb_start_feed() 307 struct dvb_demux *demux = feed->demux; in au0828_dvb_stop_feed() local 308 struct au0828_dev *dev = demux->priv; in au0828_dvb_stop_feed() 447 /* register demux stuff */ in dvb_register() 448 dvb->demux.dmx.capabilities = in dvb_register() 451 dvb->demux.priv = dev; in dvb_register() [all …]
|
| /kernel/linux/linux-5.10/drivers/media/spi/ |
| D | cxd2880-spi.c | 47 struct dvb_demux demux; member 300 dvb_dmx_swfilter(&dvb_spi->demux, in cxd2880_ts_read() 310 dvb_dmx_swfilter(&dvb_spi->demux, in cxd2880_ts_read() 326 struct dvb_demux *demux = NULL; in cxd2880_start_feed() local 334 demux = feed->demux; in cxd2880_start_feed() 335 if (!demux) { in cxd2880_start_feed() 336 pr_err("feed->demux is NULL\n"); in cxd2880_start_feed() 339 dvb_spi = demux->priv; in cxd2880_start_feed() 424 struct dvb_demux *demux = NULL; in cxd2880_stop_feed() local 432 demux = feed->demux; in cxd2880_stop_feed() [all …]
|
| /kernel/linux/linux-6.6/drivers/media/spi/ |
| D | cxd2880-spi.c | 47 struct dvb_demux demux; member 300 dvb_dmx_swfilter(&dvb_spi->demux, in cxd2880_ts_read() 310 dvb_dmx_swfilter(&dvb_spi->demux, in cxd2880_ts_read() 326 struct dvb_demux *demux = NULL; in cxd2880_start_feed() local 334 demux = feed->demux; in cxd2880_start_feed() 335 if (!demux) { in cxd2880_start_feed() 336 pr_err("feed->demux is NULL\n"); in cxd2880_start_feed() 339 dvb_spi = demux->priv; in cxd2880_start_feed() 424 struct dvb_demux *demux = NULL; in cxd2880_stop_feed() local 432 demux = feed->demux; in cxd2880_stop_feed() [all …]
|
| /kernel/linux/linux-5.10/drivers/media/test-drivers/vidtv/ |
| D | vidtv_bridge.c | 161 dvb_dmx_swfilter_packets(&dvb->demux, buf, npkts); in vidtv_bridge_on_new_pkts_avail() 217 struct dvb_demux *demux = feed->demux; in vidtv_start_feed() local 218 struct vidtv_dvb *dvb = demux->priv; in vidtv_start_feed() 222 if (!demux->dmx.frontend) in vidtv_start_feed() 242 struct dvb_demux *demux = feed->demux; in vidtv_stop_feed() local 243 struct vidtv_dvb *dvb = demux->priv; in vidtv_stop_feed() 317 dvb->demux.dmx.capabilities = DMX_TS_FILTERING | in vidtv_bridge_dmx_init() 320 dvb->demux.priv = dvb; in vidtv_bridge_dmx_init() 321 dvb->demux.filternum = 256; in vidtv_bridge_dmx_init() 322 dvb->demux.feednum = 256; in vidtv_bridge_dmx_init() [all …]
|
| /kernel/linux/linux-6.6/drivers/media/test-drivers/vidtv/ |
| D | vidtv_bridge.c | 163 dvb_dmx_swfilter_packets(&dvb->demux, buf, npkts); in vidtv_bridge_on_new_pkts_avail() 219 struct dvb_demux *demux = feed->demux; in vidtv_start_feed() local 220 struct vidtv_dvb *dvb = demux->priv; in vidtv_start_feed() 224 if (!demux->dmx.frontend) in vidtv_start_feed() 244 struct dvb_demux *demux = feed->demux; in vidtv_stop_feed() local 245 struct vidtv_dvb *dvb = demux->priv; in vidtv_stop_feed() 319 dvb->demux.dmx.capabilities = DMX_TS_FILTERING | in vidtv_bridge_dmx_init() 322 dvb->demux.priv = dvb; in vidtv_bridge_dmx_init() 323 dvb->demux.filternum = 256; in vidtv_bridge_dmx_init() 324 dvb->demux.feednum = 256; in vidtv_bridge_dmx_init() [all …]
|
| /kernel/linux/linux-5.10/drivers/media/usb/dvb-usb/ |
| D | dvb-usb-dvb.c | 16 struct dvb_usb_adapter *adap = dvbdmxfeed->demux->priv; in dvb_usb_ctrl_feed() 172 adap->demux.dmx.capabilities = DMX_TS_FILTERING | DMX_SECTION_FILTERING; in dvb_usb_adapter_dvb_init() 173 adap->demux.priv = adap; in dvb_usb_adapter_dvb_init() 175 adap->demux.filternum = 0; in dvb_usb_adapter_dvb_init() 177 if (adap->demux.filternum < adap->fe_adap[i].max_feed_count) in dvb_usb_adapter_dvb_init() 178 adap->demux.filternum = adap->fe_adap[i].max_feed_count; in dvb_usb_adapter_dvb_init() 180 adap->demux.feednum = adap->demux.filternum; in dvb_usb_adapter_dvb_init() 181 adap->demux.start_feed = dvb_usb_start_feed; in dvb_usb_adapter_dvb_init() 182 adap->demux.stop_feed = dvb_usb_stop_feed; in dvb_usb_adapter_dvb_init() 183 adap->demux.write_to_decoder = NULL; in dvb_usb_adapter_dvb_init() [all …]
|