All of lore.kernel.org
 help / color / mirror / Atom feed
From: Bryan Wu <pengw@nvidia.com>
To: Hans Verkuil <hverkuil@xs4all.nl>, <laurent.pinchart@ideasonboard.com>
Cc: <linux-media@vger.kernel.org>
Subject: Re: [Question]: What's right way to use struct media_pipeline?
Date: Thu, 24 Sep 2015 10:26:37 -0700	[thread overview]
Message-ID: <5604324D.70000@nvidia.com> (raw)
In-Reply-To: <5603B8B3.3060109@xs4all.nl>



On 09/24/2015 01:47 AM, Hans Verkuil wrote:
> On 09/24/2015 02:55 AM, Bryan Wu wrote:
>> Hi Hans,
>>
>> I found struct media_pipeline actually is completely empty and I assume we use that to control all the entities belonging to one media_pipeline.
>>
>> media_pipeline should contains either all the media_link or all the media_entity. How come an empty struct can provide those information?
> It's basically an empty base class to speak in C++ terminology.
>
> See drivers/media/platform/xilinx/xilinx-dma.h on how it is used there.
>
> Laurent Pinchart knows a lot more about it than I do, though.
>

Hi Laurent,

I have a subdev media entity which have 4 media pads.

pad[0] is sink and pad[1] is source, these 2 pads belong to the first 
media pipeline

pad[2] is sink and pad[3] is source, these 2 pads belong to the second 
media pipeline

Actually our hardware Tegra has 3 these kind of entities, so totally we 
have 6 media pipelines like 6 dma channels.

How to handle that with media pipeline framework? I saw in xilinx driver 
it just has one pipeline which is shared by several DMA channels, right?

-Bryan

>
>> What about following ideas?
>> 1. when media_entity_create_links, it will return a media_link pointer.
>> 2. we save this media_link pointer into the media_pipeline
>> 3. use this media_pipeline for start streaming, stop streaming and validate links.
>>
>> Maybe I miss something during recent media controller changes.
>>
>> Thanks,
>> -Bryan
>>
>> -----------------------------------------------------------------------------------
>> This email message is for the sole use of the intended recipient(s) and may contain
>> confidential information.  Any unauthorized review, use, disclosure or distribution
>> is prohibited.  If you are not the intended recipient, please contact the sender by
>> reply email and destroy all copies of the original message.
>> -----------------------------------------------------------------------------------


      reply	other threads:[~2015-09-24 17:26 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-09-24  1:55 [Question]: What's right way to use struct media_pipeline? Bryan Wu
2015-09-24  8:47 ` Hans Verkuil
2015-09-24 17:26   ` Bryan Wu [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=5604324D.70000@nvidia.com \
    --to=pengw@nvidia.com \
    --cc=hverkuil@xs4all.nl \
    --cc=laurent.pinchart@ideasonboard.com \
    --cc=linux-media@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.