Lines Matching refs:dvbdmxfeed
867 struct dvb_demux_feed *dvbdmxfeed = (struct dvb_demux_feed *)feed; in dmx_section_feed_allocate_filter() local
868 struct dvb_demux *dvbdemux = dvbdmxfeed->demux; in dmx_section_feed_allocate_filter()
884 dvbdmxfilter->feed = dvbdmxfeed; in dmx_section_feed_allocate_filter()
887 dvbdmxfilter->next = dvbdmxfeed->filter; in dmx_section_feed_allocate_filter()
888 dvbdmxfeed->filter = dvbdmxfilter; in dmx_section_feed_allocate_filter()
899 struct dvb_demux_feed *dvbdmxfeed = (struct dvb_demux_feed *)feed; in dmx_section_feed_set() local
900 struct dvb_demux *dvbdmx = dvbdmxfeed->demux; in dmx_section_feed_set()
908 dvb_demux_feed_add(dvbdmxfeed); in dmx_section_feed_set()
910 dvbdmxfeed->pid = pid; in dmx_section_feed_set()
911 dvbdmxfeed->buffer_size = circular_buffer_size; in dmx_section_feed_set()
912 dvbdmxfeed->feed.sec.check_crc = check_crc; in dmx_section_feed_set()
915 dvbdmxfeed->buffer = NULL; in dmx_section_feed_set()
917 dvbdmxfeed->buffer = vmalloc(dvbdmxfeed->buffer_size); in dmx_section_feed_set()
918 if (!dvbdmxfeed->buffer) { in dmx_section_feed_set()
924 dvbdmxfeed->state = DMX_STATE_READY; in dmx_section_feed_set()
929 static void prepare_secfilters(struct dvb_demux_feed *dvbdmxfeed) in prepare_secfilters() argument
936 if (!(f = dvbdmxfeed->filter)) in prepare_secfilters()
953 struct dvb_demux_feed *dvbdmxfeed = (struct dvb_demux_feed *)feed; in dmx_section_feed_start_filtering() local
954 struct dvb_demux *dvbdmx = dvbdmxfeed->demux; in dmx_section_feed_start_filtering()
965 if (!dvbdmxfeed->filter) { in dmx_section_feed_start_filtering()
970 dvbdmxfeed->feed.sec.tsfeedp = 0; in dmx_section_feed_start_filtering()
971 dvbdmxfeed->feed.sec.secbuf = dvbdmxfeed->feed.sec.secbuf_base; in dmx_section_feed_start_filtering()
972 dvbdmxfeed->feed.sec.secbufp = 0; in dmx_section_feed_start_filtering()
973 dvbdmxfeed->feed.sec.seclen = 0; in dmx_section_feed_start_filtering()
980 prepare_secfilters(dvbdmxfeed); in dmx_section_feed_start_filtering()
982 if ((ret = dvbdmx->start_feed(dvbdmxfeed)) < 0) { in dmx_section_feed_start_filtering()
989 dvbdmxfeed->state = DMX_STATE_GO; in dmx_section_feed_start_filtering()
998 struct dvb_demux_feed *dvbdmxfeed = (struct dvb_demux_feed *)feed; in dmx_section_feed_stop_filtering() local
999 struct dvb_demux *dvbdmx = dvbdmxfeed->demux; in dmx_section_feed_stop_filtering()
1009 ret = dvbdmx->stop_feed(dvbdmxfeed); in dmx_section_feed_stop_filtering()
1012 dvbdmxfeed->state = DMX_STATE_READY; in dmx_section_feed_stop_filtering()
1024 struct dvb_demux_feed *dvbdmxfeed = (struct dvb_demux_feed *)feed; in dmx_section_feed_release_filter() local
1025 struct dvb_demux *dvbdmx = dvbdmxfeed->demux; in dmx_section_feed_release_filter()
1029 if (dvbdmxfilter->feed != dvbdmxfeed) { in dmx_section_feed_release_filter()
1043 f = dvbdmxfeed->filter; in dmx_section_feed_release_filter()
1046 dvbdmxfeed->filter = dvbdmxfilter->next; in dmx_section_feed_release_filter()
1064 struct dvb_demux_feed *dvbdmxfeed; in dvbdmx_allocate_section_feed() local
1069 if (!(dvbdmxfeed = dvb_dmx_feed_alloc(dvbdmx))) { in dvbdmx_allocate_section_feed()
1074 dvbdmxfeed->type = DMX_TYPE_SEC; in dvbdmx_allocate_section_feed()
1075 dvbdmxfeed->cb.sec = callback; in dvbdmx_allocate_section_feed()
1076 dvbdmxfeed->demux = dvbdmx; in dvbdmx_allocate_section_feed()
1077 dvbdmxfeed->pid = 0xffff; in dvbdmx_allocate_section_feed()
1078 dvbdmxfeed->feed.sec.secbuf = dvbdmxfeed->feed.sec.secbuf_base; in dvbdmx_allocate_section_feed()
1079 dvbdmxfeed->feed.sec.secbufp = dvbdmxfeed->feed.sec.seclen = 0; in dvbdmx_allocate_section_feed()
1080 dvbdmxfeed->feed.sec.tsfeedp = 0; in dvbdmx_allocate_section_feed()
1081 dvbdmxfeed->filter = NULL; in dvbdmx_allocate_section_feed()
1082 dvbdmxfeed->buffer = NULL; in dvbdmx_allocate_section_feed()
1084 (*feed) = &dvbdmxfeed->feed.sec; in dvbdmx_allocate_section_feed()
1102 struct dvb_demux_feed *dvbdmxfeed = (struct dvb_demux_feed *)feed; in dvbdmx_release_section_feed() local
1107 if (dvbdmxfeed->state == DMX_STATE_FREE) { in dvbdmx_release_section_feed()
1112 vfree(dvbdmxfeed->buffer); in dvbdmx_release_section_feed()
1113 dvbdmxfeed->buffer = NULL; in dvbdmx_release_section_feed()
1115 dvbdmxfeed->state = DMX_STATE_FREE; in dvbdmx_release_section_feed()
1117 dvb_demux_feed_del(dvbdmxfeed); in dvbdmx_release_section_feed()
1119 dvbdmxfeed->pid = 0xffff; in dvbdmx_release_section_feed()