Lines Matching full:entity
216 struct media_entity *entity, *mixer = NULL, *decoder = NULL; in au0828_media_graph_notify() local
224 media_device_for_each_entity(entity, dev->media_dev) { in au0828_media_graph_notify()
225 if (entity->function == MEDIA_ENT_F_AUDIO_MIXER) in au0828_media_graph_notify()
226 mixer = entity; in au0828_media_graph_notify()
227 else if (entity->function == MEDIA_ENT_F_ATV_DECODER) in au0828_media_graph_notify()
228 decoder = entity; in au0828_media_graph_notify()
241 media_device_for_each_entity(entity, dev->media_dev) { in au0828_media_graph_notify()
242 if (entity->function == MEDIA_ENT_F_AUDIO_MIXER) in au0828_media_graph_notify()
243 mixer = entity; in au0828_media_graph_notify()
266 struct media_entity *entity) in au0828_is_link_shareable() argument
275 if (entity->function == MEDIA_ENT_F_IO_V4L || in au0828_is_link_shareable()
276 entity->function == MEDIA_ENT_F_AUDIO_CAPTURE || in au0828_is_link_shareable()
277 entity->function == MEDIA_ENT_F_IO_VBI) in au0828_is_link_shareable()
288 static int au0828_enable_source(struct media_entity *entity, in au0828_enable_source() argument
295 struct media_device *mdev = entity->graph_obj.mdev; in au0828_enable_source()
304 * For Audio and V4L2 entity, find the link to which decoder in au0828_enable_source()
308 * and any other entity. If one exists, source is busy. If in au0828_enable_source()
310 * For DVB FE entity, the source for the link is the tuner. in au0828_enable_source()
314 if (entity->function == MEDIA_ENT_F_DTV_DEMOD) { in au0828_enable_source()
315 sink = entity; in au0828_enable_source()
357 if (dev->active_link_owner == entity) { in au0828_enable_source()
362 pr_debug("%s already owns the tuner\n", entity->name); in au0828_enable_source()
366 entity)) { in au0828_enable_source()
370 * Starting pipeline between sharing entity and sink in au0828_enable_source()
377 dev->active_link_user = entity; in au0828_enable_source()
381 entity->name); in au0828_enable_source()
392 if (link->sink->entity == sink && in au0828_enable_source()
393 link->source->entity == find_source) { in au0828_enable_source()
405 source = found_link->source->entity; in au0828_enable_source()
413 ret = __media_pipeline_start(entity->pads, pipe); in au0828_enable_source()
416 source->name, entity->name, ret); in au0828_enable_source()
428 dev->active_link_owner = entity; in au0828_enable_source()
437 __func__, entity->name, entity->function, ret); in au0828_enable_source()
442 static void au0828_disable_source(struct media_entity *entity) in au0828_disable_source() argument
445 struct media_device *mdev = entity->graph_obj.mdev; in au0828_disable_source()
457 * (tuner/s-video/Composite) to the entity in au0828_disable_source()
461 if (dev->active_link->sink->entity == dev->active_sink && in au0828_disable_source()
462 dev->active_link->source->entity == dev->active_source) { in au0828_disable_source()
478 entity->name, dev->users); in au0828_disable_source()
488 if (dev->active_link_owner != entity) { in au0828_disable_source()
531 if (dev->active_link_owner != entity) in au0828_disable_source()
563 struct media_entity *entity, *demod = NULL; in au0828_media_device_register() local
603 media_device_for_each_entity(entity, dev->media_dev) { in au0828_media_device_register()
604 switch (entity->function) { in au0828_media_device_register()
606 dev->tuner = entity; in au0828_media_device_register()
609 dev->decoder = entity; in au0828_media_device_register()
612 demod = entity; in au0828_media_device_register()
620 if (demod && link->sink->entity == demod) in au0828_media_device_register()
622 if (dev->decoder && link->sink->entity == dev->decoder) in au0828_media_device_register()