| /linux/drivers/media/platform/st/sti/c8sectpfe/ | 
| H A D | c8sectpfe-common.c | 34 static int register_dvb(struct stdemux *demux, struct dvb_adapter *adap,  in register_dvb()  argument40 	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 …]
 
 | 
| /linux/drivers/media/dvb-core/ | 
| H A D | dvb_demux.c | 3  * dvb_demux.c - DVB kernel demux API158 	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 …]
 
 | 
| H A D | dmxdev.c | 102 static struct dmx_frontend *get_fe(struct dmx_demux *demux, int type)  in get_fe()  argument106 	head = demux->get_frontends(demux);  in get_fe()
 179 		dmxdev->dvr_orig_fe = dmxdev->demux->frontend;  in dvb_dvr_open()
 181 		if (!dmxdev->demux->write) {  in dvb_dvr_open()
 186 		front = get_fe(dmxdev->demux, DMX_MEMORY_FE);  in dvb_dvr_open()
 192 		dmxdev->demux->disconnect_frontend(dmxdev->demux);  in dvb_dvr_open()
 193 		dmxdev->demux->connect_frontend(dmxdev->demux, front);  in dvb_dvr_open()
 208 		dmxdev->demux->disconnect_frontend(dmxdev->demux);  in dvb_dvr_release()
 209 		dmxdev->demux->connect_frontend(dmxdev->demux,  in dvb_dvr_release()
 249 	if (!dmxdev->demux->write)  in dvb_dvr_write()
 [all …]
 
 | 
| /linux/include/media/ | 
| H A D | demux.h | 2  * demux.h4  * 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 …]
 
 | 
| H A D | dvb_demux.h | 2  * dvb_demux.h: DVB kernel demux API27 #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 …]
 
 | 
| H A D | dmxdev.h | 35 #include <media/demux.h>40  * enum dmxdev_type - type of demux filter type.
 155  * struct dmxdev - Describes a digital TV demux device.
 158  *			the demux device node.
 162  * @demux:		pointer to &struct dmx_demux.
 164  * @capabilities:	demux capabilities as defined by &enum dmx_demux_caps.
 166  * @exit:		flag to indicate that the demux is being released.
 178 	struct dmx_demux *demux;  member
 198  * dvb_dmxdev_init - initializes a digital TV demux and registers both demux
 207  * dvb_dmxdev_release - releases a digital TV demux and unregisters it.
 
 | 
| /linux/Documentation/driver-api/media/ | 
| H A D | dtv-demux.rst | 3 Digital TV Demux kABI6 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 …]
 
 | 
| /linux/drivers/media/firewire/ | 
| H A 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 …]
 
 | 
| /linux/drivers/media/common/videobuf2/ | 
| H A D | videobuf2-dvb.c | 6  * (i.e. we are using the software demux, ...).  Also uses vb231 	dvb_dmx_swfilter(&dvb->demux, vb2_plane_vaddr(vb, 0),  in dvb_fnc()
 38 	struct dvb_demux *demux = feed->demux;  in vb2_dvb_start_feed()  local
 39 	struct vb2_dvb *dvb = demux->priv;  in vb2_dvb_start_feed()
 42 	if (!demux->dmx.frontend)  in vb2_dvb_start_feed()
 61 	struct dvb_demux *demux = feed->demux;  in vb2_dvb_stop_feed()  local
 62 	struct vb2_dvb *dvb = demux->priv;  in vb2_dvb_stop_feed()
 115 	/* register demux stuff */  in vb2_dvb_register_frontend()
 116 	dvb->demux.dmx.capabilities =  in vb2_dvb_register_frontend()
 119 	dvb->demux.priv       = dvb;  in vb2_dvb_register_frontend()
 [all …]
 
 | 
| /linux/drivers/media/pci/mantis/ | 
| H A 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 …]
 
 | 
| /linux/drivers/media/usb/au0828/ | 
| H A 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 …]
 
 | 
| /linux/drivers/media/spi/ | 
| H A D | cxd2880-spi.c | 47 	struct dvb_demux demux;  member300 				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 …]
 
 | 
| /linux/drivers/media/pci/saa7164/ | 
| H A D | saa7164-dvb.c | 282 	struct dvb_demux *demux = feed->demux;  in saa7164_dvb_start_feed()  local283 	struct saa7164_port *port = demux->priv;  in saa7164_dvb_start_feed()
 290 	if (!demux->dmx.frontend)  in saa7164_dvb_start_feed()
 309 	struct dvb_demux *demux = feed->demux;  in saa7164_dvb_stop_feed()  local
 310 	struct saa7164_port *port = demux->priv;  in saa7164_dvb_stop_feed()
 401 	/* register demux stuff */  in dvb_register()
 402 	dvb->demux.dmx.capabilities =  in dvb_register()
 405 	dvb->demux.priv       = port;  in dvb_register()
 406 	dvb->demux.filternum  = 256;  in dvb_register()
 407 	dvb->demux.feednum    = 256;  in dvb_register()
 [all …]
 
 | 
| /linux/drivers/media/usb/dvb-usb/ | 
| H A 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 …]
 
 | 
| /linux/drivers/media/usb/pvrusb2/ | 
| H A D | pvrusb2-dvb.c | 41 					&adap->demux,  in pvr2_dvb_feed_func()192 	struct pvr2_dvb_adapter *adap = dvbdmxfeed->demux->priv;  in pvr2_dvb_ctrl_feed()
 202 					   "start feeding demux");  in pvr2_dvb_ctrl_feed()
 211 					   "stop feeding demux");  in pvr2_dvb_ctrl_feed()
 256 	adap->demux.dmx.capabilities = DMX_TS_FILTERING |  in pvr2_dvb_adapter_init()
 259 	adap->demux.priv             = adap;  in pvr2_dvb_adapter_init()
 260 	adap->demux.filternum        = 256;  in pvr2_dvb_adapter_init()
 261 	adap->demux.feednum          = 256;  in pvr2_dvb_adapter_init()
 262 	adap->demux.start_feed       = pvr2_dvb_start_feed;  in pvr2_dvb_adapter_init()
 263 	adap->demux.stop_feed        = pvr2_dvb_stop_feed;  in pvr2_dvb_adapter_init()
 [all …]
 
 | 
| /linux/drivers/media/usb/cx231xx/ | 
| H A D | cx231xx-dvb.c | 59 	struct dvb_demux demux;  member232 		dvb_dmx_swfilter(&dev->dvb->demux,  in dvb_isoc_copy()
 255 	/* Feed the transport payload into the kernel demux */  in dvb_bulk_copy()
 256 	dvb_dmx_swfilter(&dev->dvb->demux,  in dvb_bulk_copy()
 309 	struct dvb_demux *demux = feed->demux;  in start_feed()  local
 310 	struct cx231xx_dvb *dvb = demux->priv;  in start_feed()
 313 	if (!demux->dmx.frontend)  in start_feed()
 332 	struct dvb_demux *demux = feed->demux;  in stop_feed()  local
 333 	struct cx231xx_dvb *dvb = demux->priv;  in stop_feed()
 503 	/* register demux stuff */  in register_dvb()
 [all …]
 
 | 
| /linux/drivers/media/pci/bt8xx/ | 
| H A D | dvb-bt8xx.c | 51 			(&card->demux,  in dvb_bt8xx_work()62 	struct dvb_demux*dvbdmx = dvbdmxfeed->demux;  in dvb_bt8xx_start_feed()
 83 	struct dvb_demux *dvbdmx = dvbdmxfeed->demux;  in dvb_bt8xx_stop_feed()
 730 	memset(&card->demux, 0, sizeof(struct dvb_demux));  in dvb_bt8xx_load_card()
 732 …card->demux.dmx.capabilities = DMX_TS_FILTERING | DMX_SECTION_FILTERING | DMX_MEMORY_BASED_FILTERI…  in dvb_bt8xx_load_card()
 734 	card->demux.priv = card;  in dvb_bt8xx_load_card()
 735 	card->demux.filternum = 256;  in dvb_bt8xx_load_card()
 736 	card->demux.feednum = 256;  in dvb_bt8xx_load_card()
 737 	card->demux.start_feed = dvb_bt8xx_start_feed;  in dvb_bt8xx_load_card()
 738 	card->demux.stop_feed = dvb_bt8xx_stop_feed;  in dvb_bt8xx_load_card()
 [all …]
 
 | 
| /linux/Documentation/userspace-api/media/dvb/ | 
| H A D | dmx-fwrite.rst | 7 Digital TV demux write()13 Digital TV demux write()
 36 ``/dev/dvb/adapter?/dvr?``, associated with the physical demux device that
 39 in the corresponding physical demux device, ``/dev/dvb/adapter?/demux?``.
 65 	  corresponding demux device is setup to receive data from the
 
 | 
| H A D | dmx-fopen.rst | 7 Digital TV demux open()13 Digital TV demux open()
 24   Name of specific Digital TV demux device.
 52 This system call, used with a device name of ``/dev/dvb/adapter?/demux?``,
 59 all PES filters set in the corresponding demux device
 60 (``/dev/dvb/adapter?/demux?``) having the output set to ``DMX_OUT_TS_TAP``.
 
 | 
| /linux/drivers/media/test-drivers/vidtv/ | 
| H A D | vidtv_bridge.h | 37  * @demux: The demux used by the dvb_dmx_swfilter_packets() call.38  * @dmx_dev: Represents a demux device.
 39  * @dmx_fe: The frontends associated with the demux.
 53 	struct dvb_demux demux;  member
 
 | 
| /linux/drivers/media/pci/ttpci/ | 
| H A D | budget-core.c | 200 		dvb_dmx_swfilter_packets(&budget->demux, mem + olddma, count / 188);  in vpeirq()203 		dvb_dmx_swfilter_packets(&budget->demux, mem + olddma, count / 188);  in vpeirq()
 205 		dvb_dmx_swfilter_packets(&budget->demux, mem, newdma / 188);  in vpeirq()
 313 	struct dvb_demux *demux = feed->demux;  in budget_start_feed()  local
 314 	struct budget *budget = demux->priv;  in budget_start_feed()
 319 	if (!demux->dmx.frontend)  in budget_start_feed()
 332 	struct dvb_demux *demux = feed->demux;  in budget_stop_feed()  local
 333 	struct budget *budget = demux->priv;  in budget_stop_feed()
 347 	struct dvb_demux *dvbdemux = &budget->demux;  in budget_register()
 363 	dvb_dmx_init(&budget->demux);  in budget_register()
 [all …]
 
 | 
| /linux/drivers/staging/media/av7110/ | 
| H A D | av7110.c | 4  * - initialization and demux stuff77 MODULE_PARM_DESC(pids_off, "clear video/audio/PCR PID filters when demux is closed");
 275 	if (!dvbdmxfilter->feed->demux->dmx.frontend)  in DvbDmxFilterCallback()
 277 	if (dvbdmxfilter->feed->demux->dmx.frontend->source == DMX_MEMORY_FE)  in DvbDmxFilterCallback()
 368 		dvb_dmx_swfilter_packets(&av7110->demux,  in debiirq()
 375 		if (av7110->demux.recording)  in debiirq()
 761 	struct av7110 *av7110 = dvbdmxfeed->demux->priv;  in StartHWFilter()
 811 	struct av7110 *av7110 = dvbdmxfilter->feed->demux->priv;  in StopHWFilter()
 846 	struct dvb_demux *dvbdmx = dvbdmxfeed->demux;  in dvb_feed_start_pid()
 892 	struct dvb_demux *dvbdmx = dvbdmxfeed->demux;  in dvb_feed_stop_pid()
 [all …]
 
 | 
| /linux/drivers/media/usb/dvb-usb-v2/ | 
| H A D | dvb_usb_core.c | 204 	dvb_dmx_swfilter(&adap->demux, buf, len);  in dvb_usb_data_complete()211 	dvb_dmx_swfilter_204(&adap->demux, buf, len);  in dvb_usb_data_complete_204()
 218 	dvb_dmx_swfilter_raw(&adap->demux, buf, len);  in dvb_usb_data_complete_raw()
 243 	struct dvb_usb_adapter *adap = dvbdmxfeed->demux->priv;  in dvb_usb_start_feed()
 331 	struct dvb_usb_adapter *adap = dvbdmxfeed->demux->priv;  in dvb_usb_stop_feed()
 466 	adap->demux.dmx.capabilities = DMX_TS_FILTERING | DMX_SECTION_FILTERING;  in dvb_usbv2_adapter_dvb_init()
 467 	adap->demux.priv             = adap;  in dvb_usbv2_adapter_dvb_init()
 468 	adap->demux.filternum        = 0;  in dvb_usbv2_adapter_dvb_init()
 469 	adap->demux.filternum        = adap->max_feed_count;  in dvb_usbv2_adapter_dvb_init()
 470 	adap->demux.feednum          = adap->demux.filternum;  in dvb_usbv2_adapter_dvb_init()
 [all …]
 
 | 
| /linux/drivers/media/pci/cx23885/ | 
| H A D | altera-ci.c | 120 	struct dvb_demux *demux;  member156 /* check demux */
 166 	if (temp_int->pid_filt[filt_nr]->demux == demux_dev)  in check_filter()
 172 /* find chip by demux */
 180 	 * find it by demux  in find_dinode()
 464 		pid_filt->demux->start_feed = pid_filt->start_feed;  in altera_hw_filt_release()
 465 		pid_filt->demux->stop_feed = pid_filt->stop_feed;  in altera_hw_filt_release()
 598 	altera_pid_feed_control(feed->demux, num, feed, 1);  in altera_ci_start_feed()
 605 	altera_pid_feed_control(feed->demux, num, feed, 0);  in altera_ci_stop_feed()
 673 	pid_filt->demux = config->demux;  in altera_hw_filt_init()
 [all …]
 
 | 
| /linux/drivers/media/usb/ttusb-dec/ | 
| H A D | ttusb_dec.c | 99 	struct dvb_demux		demux;  member967 	struct dvb_demux *dvbdmx = dvbdmxfeed->demux;  in ttusb_dec_start_ts_feed()
 1035 	struct ttusb_dec *dec = dvbdmxfeed->demux->priv;  in ttusb_dec_start_sec_feed()
 1090 	struct dvb_demux *dvbdmx = dvbdmxfeed->demux;  in ttusb_dec_start_feed()
 1116 	struct ttusb_dec *dec = dvbdmxfeed->demux->priv;  in ttusb_dec_stop_ts_feed()
 1130 	struct ttusb_dec *dec = dvbdmxfeed->demux->priv;  in ttusb_dec_stop_sec_feed()
 1473 	dec->demux.dmx.capabilities = DMX_TS_FILTERING | DMX_SECTION_FILTERING;  in ttusb_dec_init_dvb()
 1475 	dec->demux.priv = (void *)dec;  in ttusb_dec_init_dvb()
 1476 	dec->demux.filternum = 31;  in ttusb_dec_init_dvb()
 1477 	dec->demux.feednum = 31;  in ttusb_dec_init_dvb()
 [all …]
 
 |