Lines Matching refs:pad

116 		struct media_pad *pad = gobj_to_pad(gobj);  in dev_dbg_obj()  local
121 pad->flags & MEDIA_PAD_FL_SINK ? "sink " : "", in dev_dbg_obj()
122 pad->flags & MEDIA_PAD_FL_SOURCE ? "source " : "", in dev_dbg_obj()
123 pad->entity->name, pad->index); in dev_dbg_obj()
437 struct media_pad *pad; member
500 struct media_pad *pad) in media_pipeline_walk_push() argument
513 entry->pad = pad; in media_pipeline_walk_push()
514 entry->links = pad->entity->links.next; in media_pipeline_walk_push()
518 walk->stack.top, pad->entity->name, pad->index); in media_pipeline_walk_push()
537 if (entry->links->next == &entry->pad->entity->links) { in media_pipeline_walk_pop()
564 struct media_pad *pad) in media_pipeline_add_pad() argument
569 if (ppad->pad == pad) { in media_pipeline_add_pad()
570 dev_dbg(pad->graph_obj.mdev->dev, in media_pipeline_add_pad()
572 pad->entity->name, pad->index); in media_pipeline_add_pad()
582 ppad->pad = pad; in media_pipeline_add_pad()
586 dev_dbg(pad->graph_obj.mdev->dev, in media_pipeline_add_pad()
588 pad->entity->name, pad->index); in media_pipeline_add_pad()
590 return media_pipeline_walk_push(walk, pad); in media_pipeline_add_pad()
605 origin = entry->pad; in media_pipeline_explore_next_link()
706 struct media_pad *pad) in media_pipeline_populate() argument
717 pipe->mdev = pad->graph_obj.mdev; in media_pipeline_populate()
721 ret = media_pipeline_add_pad(pipe, &walk, pad); in media_pipeline_populate()
738 dev_dbg(pad->graph_obj.mdev->dev, in media_pipeline_populate()
742 dev_dbg(pad->graph_obj.mdev->dev, "- '%s':%u\n", in media_pipeline_populate()
743 ppad->pad->entity->name, ppad->pad->index); in media_pipeline_populate()
758 __must_check int __media_pipeline_start(struct media_pad *pad, in __media_pipeline_start() argument
761 struct media_device *mdev = pad->graph_obj.mdev; in __media_pipeline_start()
772 if (WARN_ON(pad->pipe && pad->pipe != pipe)) in __media_pipeline_start()
789 ret = media_pipeline_populate(pipe, pad); in __media_pipeline_start()
799 struct media_pad *pad = ppad->pad; in __media_pipeline_start() local
800 struct media_entity *entity = pad->entity; in __media_pipeline_start()
804 dev_dbg(mdev->dev, "Validating pad '%s':%u\n", pad->entity->name, in __media_pipeline_start()
805 pad->index); in __media_pipeline_start()
811 if (pad->pipe) { in __media_pipeline_start()
813 pad->entity->name, pad->index); in __media_pipeline_start()
825 if (link->sink != pad && link->source != pad) in __media_pipeline_start()
839 if (link->sink != pad) in __media_pipeline_start()
868 if ((pad->flags & MEDIA_PAD_FL_MUST_CONNECT) && in __media_pipeline_start()
872 pad->entity->name, pad->index); in __media_pipeline_start()
878 pad->pipe = pipe; in __media_pipeline_start()
895 err_ppad->pad->pipe = NULL; in __media_pipeline_start()
904 __must_check int media_pipeline_start(struct media_pad *pad, in media_pipeline_start() argument
907 struct media_device *mdev = pad->graph_obj.mdev; in media_pipeline_start()
911 ret = __media_pipeline_start(pad, pipe); in media_pipeline_start()
917 void __media_pipeline_stop(struct media_pad *pad) in __media_pipeline_stop() argument
919 struct media_pipeline *pipe = pad->pipe; in __media_pipeline_stop()
933 ppad->pad->pipe = NULL; in __media_pipeline_stop()
942 void media_pipeline_stop(struct media_pad *pad) in media_pipeline_stop() argument
944 struct media_device *mdev = pad->graph_obj.mdev; in media_pipeline_stop()
947 __media_pipeline_stop(pad); in media_pipeline_stop()
952 __must_check int media_pipeline_alloc_start(struct media_pad *pad) in media_pipeline_alloc_start() argument
954 struct media_device *mdev = pad->graph_obj.mdev; in media_pipeline_alloc_start()
965 pipe = media_pad_pipeline(pad); in media_pipeline_alloc_start()
977 ret = __media_pipeline_start(pad, pipe); in media_pipeline_alloc_start()
991 struct media_pad *pad) in __media_pipeline_pad_iter_next() argument
993 if (!pad) in __media_pipeline_pad_iter_next()
999 pad = list_entry(iter->cursor, struct media_pipeline_pad, list)->pad; in __media_pipeline_pad_iter_next()
1002 return pad; in __media_pipeline_pad_iter_next()
1032 entity = ppad->pad->entity; in __media_pipeline_entity_iter_next()
1373 struct media_pad *media_pad_remote_pad_first(const struct media_pad *pad) in media_pad_remote_pad_first() argument
1377 for_each_media_entity_data_link(pad->entity, link) { in media_pad_remote_pad_first()
1381 if (link->source == pad) in media_pad_remote_pad_first()
1384 if (link->sink == pad) in media_pad_remote_pad_first()
1397 struct media_pad *pad = NULL; in media_entity_remote_pad_unique() local
1418 if (pad) in media_entity_remote_pad_unique()
1421 pad = remote_pad; in media_entity_remote_pad_unique()
1425 if (!pad) in media_entity_remote_pad_unique()
1428 return pad; in media_entity_remote_pad_unique()
1432 struct media_pad *media_pad_remote_pad_unique(const struct media_pad *pad) in media_pad_remote_pad_unique() argument
1437 list_for_each_entry(link, &pad->entity->links, list) { in media_pad_remote_pad_unique()
1443 if (link->sink == pad) in media_pad_remote_pad_unique()
1445 else if (link->source == pad) in media_pad_remote_pad_unique()
1500 struct media_pad *pad; in media_entity_pipeline() local
1502 media_entity_for_each_pad(entity, pad) { in media_entity_pipeline()
1503 if (pad->pipe) in media_entity_pipeline()
1504 return pad->pipe; in media_entity_pipeline()
1511 struct media_pipeline *media_pad_pipeline(struct media_pad *pad) in media_pad_pipeline() argument
1513 return pad->pipe; in media_pad_pipeline()