Lines Matching refs:dvbdmxfeed
868 struct dvb_demux_feed *dvbdmxfeed = (struct dvb_demux_feed *)feed; in dmx_section_feed_allocate_filter() local
869 struct dvb_demux *dvbdemux = dvbdmxfeed->demux; in dmx_section_feed_allocate_filter()
885 dvbdmxfilter->feed = dvbdmxfeed; in dmx_section_feed_allocate_filter()
888 dvbdmxfilter->next = dvbdmxfeed->filter; in dmx_section_feed_allocate_filter()
889 dvbdmxfeed->filter = dvbdmxfilter; in dmx_section_feed_allocate_filter()
900 struct dvb_demux_feed *dvbdmxfeed = (struct dvb_demux_feed *)feed; in dmx_section_feed_set() local
901 struct dvb_demux *dvbdmx = dvbdmxfeed->demux; in dmx_section_feed_set()
909 dvb_demux_feed_add(dvbdmxfeed); in dmx_section_feed_set()
911 dvbdmxfeed->pid = pid; in dmx_section_feed_set()
912 dvbdmxfeed->buffer_size = circular_buffer_size; in dmx_section_feed_set()
913 dvbdmxfeed->feed.sec.check_crc = check_crc; in dmx_section_feed_set()
916 dvbdmxfeed->buffer = NULL; in dmx_section_feed_set()
918 dvbdmxfeed->buffer = vmalloc(dvbdmxfeed->buffer_size); in dmx_section_feed_set()
919 if (!dvbdmxfeed->buffer) { in dmx_section_feed_set()
925 dvbdmxfeed->state = DMX_STATE_READY; in dmx_section_feed_set()
930 static void prepare_secfilters(struct dvb_demux_feed *dvbdmxfeed) in prepare_secfilters() argument
937 if (!(f = dvbdmxfeed->filter)) in prepare_secfilters()
954 struct dvb_demux_feed *dvbdmxfeed = (struct dvb_demux_feed *)feed; in dmx_section_feed_start_filtering() local
955 struct dvb_demux *dvbdmx = dvbdmxfeed->demux; in dmx_section_feed_start_filtering()
966 if (!dvbdmxfeed->filter) { in dmx_section_feed_start_filtering()
971 dvbdmxfeed->feed.sec.tsfeedp = 0; in dmx_section_feed_start_filtering()
972 dvbdmxfeed->feed.sec.secbuf = dvbdmxfeed->feed.sec.secbuf_base; in dmx_section_feed_start_filtering()
973 dvbdmxfeed->feed.sec.secbufp = 0; in dmx_section_feed_start_filtering()
974 dvbdmxfeed->feed.sec.seclen = 0; in dmx_section_feed_start_filtering()
981 prepare_secfilters(dvbdmxfeed); in dmx_section_feed_start_filtering()
983 if ((ret = dvbdmx->start_feed(dvbdmxfeed)) < 0) { in dmx_section_feed_start_filtering()
990 dvbdmxfeed->state = DMX_STATE_GO; in dmx_section_feed_start_filtering()
999 struct dvb_demux_feed *dvbdmxfeed = (struct dvb_demux_feed *)feed; in dmx_section_feed_stop_filtering() local
1000 struct dvb_demux *dvbdmx = dvbdmxfeed->demux; in dmx_section_feed_stop_filtering()
1010 ret = dvbdmx->stop_feed(dvbdmxfeed); in dmx_section_feed_stop_filtering()
1013 dvbdmxfeed->state = DMX_STATE_READY; in dmx_section_feed_stop_filtering()
1025 struct dvb_demux_feed *dvbdmxfeed = (struct dvb_demux_feed *)feed; in dmx_section_feed_release_filter() local
1026 struct dvb_demux *dvbdmx = dvbdmxfeed->demux; in dmx_section_feed_release_filter()
1030 if (dvbdmxfilter->feed != dvbdmxfeed) { in dmx_section_feed_release_filter()
1044 f = dvbdmxfeed->filter; in dmx_section_feed_release_filter()
1047 dvbdmxfeed->filter = dvbdmxfilter->next; in dmx_section_feed_release_filter()
1065 struct dvb_demux_feed *dvbdmxfeed; in dvbdmx_allocate_section_feed() local
1070 if (!(dvbdmxfeed = dvb_dmx_feed_alloc(dvbdmx))) { in dvbdmx_allocate_section_feed()
1075 dvbdmxfeed->type = DMX_TYPE_SEC; in dvbdmx_allocate_section_feed()
1076 dvbdmxfeed->cb.sec = callback; in dvbdmx_allocate_section_feed()
1077 dvbdmxfeed->demux = dvbdmx; in dvbdmx_allocate_section_feed()
1078 dvbdmxfeed->pid = 0xffff; in dvbdmx_allocate_section_feed()
1079 dvbdmxfeed->feed.sec.secbuf = dvbdmxfeed->feed.sec.secbuf_base; in dvbdmx_allocate_section_feed()
1080 dvbdmxfeed->feed.sec.secbufp = dvbdmxfeed->feed.sec.seclen = 0; in dvbdmx_allocate_section_feed()
1081 dvbdmxfeed->feed.sec.tsfeedp = 0; in dvbdmx_allocate_section_feed()
1082 dvbdmxfeed->filter = NULL; in dvbdmx_allocate_section_feed()
1083 dvbdmxfeed->buffer = NULL; in dvbdmx_allocate_section_feed()
1085 (*feed) = &dvbdmxfeed->feed.sec; in dvbdmx_allocate_section_feed()
1103 struct dvb_demux_feed *dvbdmxfeed = (struct dvb_demux_feed *)feed; in dvbdmx_release_section_feed() local
1108 if (dvbdmxfeed->state == DMX_STATE_FREE) { in dvbdmx_release_section_feed()
1113 vfree(dvbdmxfeed->buffer); in dvbdmx_release_section_feed()
1114 dvbdmxfeed->buffer = NULL; in dvbdmx_release_section_feed()
1116 dvbdmxfeed->state = DMX_STATE_FREE; in dvbdmx_release_section_feed()
1118 dvb_demux_feed_del(dvbdmxfeed); in dvbdmx_release_section_feed()
1120 dvbdmxfeed->pid = 0xffff; in dvbdmx_release_section_feed()