Lines Matching refs:fe

72 static int vb2_dvb_register_adapter(struct vb2_dvb_frontends *fe,  in vb2_dvb_register_adapter()  argument
83 mutex_init(&fe->lock); in vb2_dvb_register_adapter()
86 result = dvb_register_adapter(&fe->adapter, adapter_name, module, in vb2_dvb_register_adapter()
92 fe->adapter.priv = adapter_priv; in vb2_dvb_register_adapter()
93 fe->adapter.mfe_shared = mfe_shared; in vb2_dvb_register_adapter()
96 fe->adapter.mdev = mdev; in vb2_dvb_register_adapter()
201 struct vb2_dvb_frontend *fe; in vb2_dvb_register_bus() local
204 fe = vb2_dvb_get_frontend(f, 1); in vb2_dvb_register_bus()
205 if (!fe) { in vb2_dvb_register_bus()
212 fe->dvb.name, adapter_nr, mfe_shared); in vb2_dvb_register_bus()
221 fe = list_entry(list, struct vb2_dvb_frontend, felist); in vb2_dvb_register_bus()
222 res = vb2_dvb_register_frontend(&f->adapter, &fe->dvb); in vb2_dvb_register_bus()
225 fe->dvb.name, res); in vb2_dvb_register_bus()
255 struct vb2_dvb_frontend *fe, *ret = NULL; in vb2_dvb_get_frontend() local
260 fe = list_entry(list, struct vb2_dvb_frontend, felist); in vb2_dvb_get_frontend()
261 if (fe->id == id) { in vb2_dvb_get_frontend()
262 ret = fe; in vb2_dvb_get_frontend()
277 struct vb2_dvb_frontend *fe = NULL; in vb2_dvb_find_frontend() local
283 fe = list_entry(list, struct vb2_dvb_frontend, felist); in vb2_dvb_find_frontend()
284 if (fe->dvb.frontend == p) { in vb2_dvb_find_frontend()
285 ret = fe->id; in vb2_dvb_find_frontend()
299 struct vb2_dvb_frontend *fe; in vb2_dvb_alloc_frontend() local
301 fe = kzalloc(sizeof(struct vb2_dvb_frontend), GFP_KERNEL); in vb2_dvb_alloc_frontend()
302 if (fe == NULL) in vb2_dvb_alloc_frontend()
305 fe->id = id; in vb2_dvb_alloc_frontend()
306 mutex_init(&fe->dvb.lock); in vb2_dvb_alloc_frontend()
309 list_add_tail(&fe->felist, &f->felist); in vb2_dvb_alloc_frontend()
311 return fe; in vb2_dvb_alloc_frontend()
318 struct vb2_dvb_frontend *fe; in vb2_dvb_dealloc_frontends() local
322 fe = list_entry(list, struct vb2_dvb_frontend, felist); in vb2_dvb_dealloc_frontends()
323 if (fe->dvb.net.dvbdev) { in vb2_dvb_dealloc_frontends()
324 dvb_net_release(&fe->dvb.net); in vb2_dvb_dealloc_frontends()
325 fe->dvb.demux.dmx.remove_frontend(&fe->dvb.demux.dmx, in vb2_dvb_dealloc_frontends()
326 &fe->dvb.fe_mem); in vb2_dvb_dealloc_frontends()
327 fe->dvb.demux.dmx.remove_frontend(&fe->dvb.demux.dmx, in vb2_dvb_dealloc_frontends()
328 &fe->dvb.fe_hw); in vb2_dvb_dealloc_frontends()
329 dvb_dmxdev_release(&fe->dvb.dmxdev); in vb2_dvb_dealloc_frontends()
330 dvb_dmx_release(&fe->dvb.demux); in vb2_dvb_dealloc_frontends()
331 dvb_unregister_frontend(fe->dvb.frontend); in vb2_dvb_dealloc_frontends()
333 if (fe->dvb.frontend) in vb2_dvb_dealloc_frontends()
335 dvb_frontend_detach(fe->dvb.frontend); in vb2_dvb_dealloc_frontends()
337 kfree(fe); /* free frontend allocation */ in vb2_dvb_dealloc_frontends()