Lines Matching refs:dvbnet

1328 static int get_if(struct dvb_net *dvbnet)  argument
1333 if (!dvbnet->state[i])
1339 dvbnet->state[i]=1;
1343 static int dvb_net_add_if(struct dvb_net *dvbnet, u16 pid, u8 feedtype) argument
1352 if ((if_num = get_if(dvbnet)) < 0)
1360 if (dvbnet->dvbdev->id)
1362 dvbnet->dvbdev->adapter->num, dvbnet->dvbdev->id, if_num);
1366 dvbnet->dvbdev->adapter->num, if_num);
1369 memcpy(net->dev_addr, dvbnet->dvbdev->adapter->proposed_mac, 6);
1371 dvbnet->device[if_num] = net;
1375 priv->demux = dvbnet->demux;
1390 dvbnet->device[if_num] = NULL;
1399 static int dvb_net_remove_if(struct dvb_net *dvbnet, unsigned long num) argument
1401 struct net_device *net = dvbnet->device[num];
1404 if (!dvbnet->state[num])
1415 dvbnet->state[num]=0;
1416 dvbnet->device[num] = NULL;
1426 struct dvb_net *dvbnet = dvbdev->priv; local
1432 if (mutex_lock_interruptible(&dvbnet->ioctl_mutex))
1451 result=dvb_net_add_if(dvbnet, dvbnetif->pid, dvbnetif->feedtype);
1467 !dvbnet->state[dvbnetif->if_num]) {
1472 netdev = dvbnet->device[dvbnetif->if_num];
1489 ret = dvb_net_remove_if(dvbnet, (unsigned long) parg);
1511 result=dvb_net_add_if(dvbnet, dvbnetif->pid, DVB_NET_FEEDTYPE_MPE);
1527 !dvbnet->state[dvbnetif->if_num]) {
1532 netdev = dvbnet->device[dvbnetif->if_num];
1544 mutex_unlock(&dvbnet->ioctl_mutex);
1557 struct dvb_net *dvbnet = dvbdev->priv; local
1561 if(dvbdev->users == 1 && dvbnet->exit == 1)
1585 void dvb_net_release (struct dvb_net *dvbnet) argument
1589 dvbnet->exit = 1;
1590 if (dvbnet->dvbdev->users < 1)
1591 wait_event(dvbnet->dvbdev->wait_queue,
1592 dvbnet->dvbdev->users==1);
1594 dvb_unregister_device(dvbnet->dvbdev);
1597 if (!dvbnet->state[i])
1599 dvb_net_remove_if(dvbnet, i);
1605 int dvb_net_init (struct dvb_adapter *adap, struct dvb_net *dvbnet, argument
1610 mutex_init(&dvbnet->ioctl_mutex);
1611 dvbnet->demux = dmx;
1614 dvbnet->state[i] = 0;
1616 return dvb_register_device(adap, &dvbnet->dvbdev, &dvbdev_net,
1617 dvbnet, DVB_DEVICE_NET, 0);