• Home
  • Raw
  • Download

Lines Matching refs:dvbdemux

843 	struct dvb_demux *dvbdemux = dvbdmxfeed->demux;  in dmx_section_feed_allocate_filter()  local
846 if (mutex_lock_interruptible(&dvbdemux->mutex)) in dmx_section_feed_allocate_filter()
849 dvbdmxfilter = dvb_dmx_filter_alloc(dvbdemux); in dmx_section_feed_allocate_filter()
851 mutex_unlock(&dvbdemux->mutex); in dmx_section_feed_allocate_filter()
855 spin_lock_irq(&dvbdemux->lock); in dmx_section_feed_allocate_filter()
864 spin_unlock_irq(&dvbdemux->lock); in dmx_section_feed_allocate_filter()
866 mutex_unlock(&dvbdemux->mutex); in dmx_section_feed_allocate_filter()
1101 struct dvb_demux *dvbdemux = (struct dvb_demux *)demux; in dvbdmx_open() local
1103 if (dvbdemux->users >= MAX_DVB_DEMUX_USERS) in dvbdmx_open()
1106 dvbdemux->users++; in dvbdmx_open()
1112 struct dvb_demux *dvbdemux = (struct dvb_demux *)demux; in dvbdmx_close() local
1114 if (dvbdemux->users == 0) in dvbdmx_close()
1117 dvbdemux->users--; in dvbdmx_close()
1124 struct dvb_demux *dvbdemux = (struct dvb_demux *)demux; in dvbdmx_write() local
1133 if (mutex_lock_interruptible(&dvbdemux->mutex)) { in dvbdmx_write()
1137 dvb_dmx_swfilter(dvbdemux, p, count); in dvbdmx_write()
1139 mutex_unlock(&dvbdemux->mutex); in dvbdmx_write()
1149 struct dvb_demux *dvbdemux = (struct dvb_demux *)demux; in dvbdmx_add_frontend() local
1150 struct list_head *head = &dvbdemux->frontend_list; in dvbdmx_add_frontend()
1160 struct dvb_demux *dvbdemux = (struct dvb_demux *)demux; in dvbdmx_remove_frontend() local
1161 struct list_head *pos, *n, *head = &dvbdemux->frontend_list; in dvbdmx_remove_frontend()
1175 struct dvb_demux *dvbdemux = (struct dvb_demux *)demux; in dvbdmx_get_frontends() local
1177 if (list_empty(&dvbdemux->frontend_list)) in dvbdmx_get_frontends()
1180 return &dvbdemux->frontend_list; in dvbdmx_get_frontends()
1186 struct dvb_demux *dvbdemux = (struct dvb_demux *)demux; in dvbdmx_connect_frontend() local
1191 mutex_lock(&dvbdemux->mutex); in dvbdmx_connect_frontend()
1194 mutex_unlock(&dvbdemux->mutex); in dvbdmx_connect_frontend()
1200 struct dvb_demux *dvbdemux = (struct dvb_demux *)demux; in dvbdmx_disconnect_frontend() local
1202 mutex_lock(&dvbdemux->mutex); in dvbdmx_disconnect_frontend()
1205 mutex_unlock(&dvbdemux->mutex); in dvbdmx_disconnect_frontend()
1211 struct dvb_demux *dvbdemux = (struct dvb_demux *)demux; in dvbdmx_get_pes_pids() local
1213 memcpy(pids, dvbdemux->pids, 5 * sizeof(u16)); in dvbdmx_get_pes_pids()
1217 int dvb_dmx_init(struct dvb_demux *dvbdemux) in dvb_dmx_init() argument
1220 struct dmx_demux *dmx = &dvbdemux->dmx; in dvb_dmx_init()
1222 dvbdemux->cnt_storage = NULL; in dvb_dmx_init()
1223 dvbdemux->users = 0; in dvb_dmx_init()
1224 dvbdemux->filter = vmalloc(dvbdemux->filternum * sizeof(struct dvb_demux_filter)); in dvb_dmx_init()
1226 if (!dvbdemux->filter) in dvb_dmx_init()
1229 dvbdemux->feed = vmalloc(dvbdemux->feednum * sizeof(struct dvb_demux_feed)); in dvb_dmx_init()
1230 if (!dvbdemux->feed) { in dvb_dmx_init()
1231 vfree(dvbdemux->filter); in dvb_dmx_init()
1232 dvbdemux->filter = NULL; in dvb_dmx_init()
1235 for (i = 0; i < dvbdemux->filternum; i++) { in dvb_dmx_init()
1236 dvbdemux->filter[i].state = DMX_STATE_FREE; in dvb_dmx_init()
1237 dvbdemux->filter[i].index = i; in dvb_dmx_init()
1239 for (i = 0; i < dvbdemux->feednum; i++) { in dvb_dmx_init()
1240 dvbdemux->feed[i].state = DMX_STATE_FREE; in dvb_dmx_init()
1241 dvbdemux->feed[i].index = i; in dvb_dmx_init()
1244 dvbdemux->cnt_storage = vmalloc(MAX_PID + 1); in dvb_dmx_init()
1245 if (!dvbdemux->cnt_storage) in dvb_dmx_init()
1248 INIT_LIST_HEAD(&dvbdemux->frontend_list); in dvb_dmx_init()
1251 dvbdemux->pesfilter[i] = NULL; in dvb_dmx_init()
1252 dvbdemux->pids[i] = 0xffff; in dvb_dmx_init()
1255 INIT_LIST_HEAD(&dvbdemux->feed_list); in dvb_dmx_init()
1257 dvbdemux->playing = 0; in dvb_dmx_init()
1258 dvbdemux->recording = 0; in dvb_dmx_init()
1259 dvbdemux->tsbufp = 0; in dvb_dmx_init()
1261 if (!dvbdemux->check_crc32) in dvb_dmx_init()
1262 dvbdemux->check_crc32 = dvb_dmx_crc32; in dvb_dmx_init()
1264 if (!dvbdemux->memcopy) in dvb_dmx_init()
1265 dvbdemux->memcopy = dvb_dmx_memcopy; in dvb_dmx_init()
1268 dmx->priv = dvbdemux; in dvb_dmx_init()
1284 mutex_init(&dvbdemux->mutex); in dvb_dmx_init()
1285 spin_lock_init(&dvbdemux->lock); in dvb_dmx_init()
1292 void dvb_dmx_release(struct dvb_demux *dvbdemux) in dvb_dmx_release() argument
1294 vfree(dvbdemux->cnt_storage); in dvb_dmx_release()
1295 vfree(dvbdemux->filter); in dvb_dmx_release()
1296 vfree(dvbdemux->feed); in dvb_dmx_release()