From: Clemens Ladisch <clemens@ladisch.de>
To: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Cc: alsa-devel@alsa-project.org,
sakari.ailus@maxwell.research.nokia.com,
broonie@opensource.wolfsonmicro.com,
linux-kernel@vger.kernel.org, lennart@poettering.net,
linux-omap@vger.kernel.org, linux-media@vger.kernel.org
Subject: Re: [RFC/PATCH v6 03/12] media: Entities, pads and links
Date: Tue, 14 Dec 2010 14:31:55 +0100 [thread overview]
Message-ID: <4D0771CB.3020809@ladisch.de> (raw)
In-Reply-To: <201012141300.57118.laurent.pinchart@ideasonboard.com>
Laurent Pinchart wrote:
> On Monday 13 December 2010 17:10:51 Clemens Ladisch wrote:
>> TYPE_EXT describes entities that represent some interface to the
>> external world, TYPE_INT those that are internal to the entire device.
>> (I'm not sure if that distinction is very useful, but TYPE_SUBDEV seems
>> to be an even more meaningless name.)
>
> SUBDEV comes from the V4L2 world, and I agree that it might not be a very good
> name.
>
> I'm not sure I would split entities in internal/external categories. I would
> create a category for connectors though.
I'm not disagreeing, but what is actually the distinction between types
and subtypes? ;-)
>> * Entity properties
>>
>> There needs to be a mechanism to associate meta-information (properties)
>> with entities. This information should be optional and extensible, but,
>> when being handled inside the kernel, doesn't need to be more than
>> a read-only blob. I think that something like ALSA's TLV format (used
>> for mixer controls) can be used here. (I'm not mentioning the X-word
>> here, except to note that the "M" stands for "markup".)
>
> I've been thinking of adding a new ioctl for that. It's something we need to
> draft. The UVC driver will need it, and I'm pretty sure other V4L2 drivers
> would find it useful as well.
I'm imagining a "read-the-properties" ioctl that just returns the
entity's blob.
>> EXT_SPEAKER also includes headphones; there might be made a case for
>> having those as a separate subtype.
>
> Shouldn't headphones be represented by an EXT_JACK_ANALOG ?
Headphone jacks are jacks; there are also USB headphones.
>> EXT_BROADCAST represents devices like TV tuners, satellite receivers,
>> cable tuners, or radios.
>
> There's clearly an overlap with V4L here.
These come from the USB audio spec. Video devices are indeed likely to
be more detailed than just a single audio source. :)
>> INT_CONTROLS may have multiple independent controls (this is USB's
>> Feature Unit); INT_EFFECT may have multiple controls that affect one
>> single algorithm.
>
> I'd describe this as a feature unit/processing unit then.
I was aiming for more descriptive names, but I agree that the original
names might be more useful.
> Should we have an AUDIO category ?
Probably not, because there are combined audio/video jacks, any maybe
other entities.
>> * Entity specifications
>>
>> While TYPE_DEVICE entities can be identified by their device node, other
>> entities typcially have just a numeric ID.
>
> In V4L2 sub-devices have (or rather will have once the media controller
> patches will be integrated) device nodes as well, so exposing that information
> is required.
USB and HDA entities already have numeric IDs.
>> For that, it would be useful to make do without separate identification and
>> let the driver choose the entity ID.
>
> How would drivers do that ? What if you have two instances of the same chip
> (a video sensor, audio mixer, ...) on the same board ?
Then those would get different IDs; USB descriptors always describe the
entire device.
Regards,
Clemens
WARNING: multiple messages have this Message-ID (diff)
From: Clemens Ladisch <clemens@ladisch.de>
To: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Cc: alsa-devel@alsa-project.org,
sakari.ailus@maxwell.research.nokia.com,
broonie@opensource.wolfsonmicro.com,
linux-kernel@vger.kernel.org, lennart@poettering.net,
linux-omap@vger.kernel.org, linux-media@vger.kernel.org
Subject: Re: [alsa-devel] [RFC/PATCH v6 03/12] media: Entities, pads and links
Date: Tue, 14 Dec 2010 14:31:55 +0100 [thread overview]
Message-ID: <4D0771CB.3020809@ladisch.de> (raw)
In-Reply-To: <201012141300.57118.laurent.pinchart@ideasonboard.com>
Laurent Pinchart wrote:
> On Monday 13 December 2010 17:10:51 Clemens Ladisch wrote:
>> TYPE_EXT describes entities that represent some interface to the
>> external world, TYPE_INT those that are internal to the entire device.
>> (I'm not sure if that distinction is very useful, but TYPE_SUBDEV seems
>> to be an even more meaningless name.)
>
> SUBDEV comes from the V4L2 world, and I agree that it might not be a very good
> name.
>
> I'm not sure I would split entities in internal/external categories. I would
> create a category for connectors though.
I'm not disagreeing, but what is actually the distinction between types
and subtypes? ;-)
>> * Entity properties
>>
>> There needs to be a mechanism to associate meta-information (properties)
>> with entities. This information should be optional and extensible, but,
>> when being handled inside the kernel, doesn't need to be more than
>> a read-only blob. I think that something like ALSA's TLV format (used
>> for mixer controls) can be used here. (I'm not mentioning the X-word
>> here, except to note that the "M" stands for "markup".)
>
> I've been thinking of adding a new ioctl for that. It's something we need to
> draft. The UVC driver will need it, and I'm pretty sure other V4L2 drivers
> would find it useful as well.
I'm imagining a "read-the-properties" ioctl that just returns the
entity's blob.
>> EXT_SPEAKER also includes headphones; there might be made a case for
>> having those as a separate subtype.
>
> Shouldn't headphones be represented by an EXT_JACK_ANALOG ?
Headphone jacks are jacks; there are also USB headphones.
>> EXT_BROADCAST represents devices like TV tuners, satellite receivers,
>> cable tuners, or radios.
>
> There's clearly an overlap with V4L here.
These come from the USB audio spec. Video devices are indeed likely to
be more detailed than just a single audio source. :)
>> INT_CONTROLS may have multiple independent controls (this is USB's
>> Feature Unit); INT_EFFECT may have multiple controls that affect one
>> single algorithm.
>
> I'd describe this as a feature unit/processing unit then.
I was aiming for more descriptive names, but I agree that the original
names might be more useful.
> Should we have an AUDIO category ?
Probably not, because there are combined audio/video jacks, any maybe
other entities.
>> * Entity specifications
>>
>> While TYPE_DEVICE entities can be identified by their device node, other
>> entities typcially have just a numeric ID.
>
> In V4L2 sub-devices have (or rather will have once the media controller
> patches will be integrated) device nodes as well, so exposing that information
> is required.
USB and HDA entities already have numeric IDs.
>> For that, it would be useful to make do without separate identification and
>> let the driver choose the entity ID.
>
> How would drivers do that ? What if you have two instances of the same chip
> (a video sensor, audio mixer, ...) on the same board ?
Then those would get different IDs; USB descriptors always describe the
entire device.
Regards,
Clemens
next prev parent reply other threads:[~2010-12-14 13:32 UTC|newest]
Thread overview: 78+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-11-25 2:28 [RFC/PATCH v6 00/12] Media controller (core and V4L2) Laurent Pinchart
2010-11-25 2:28 ` [RFC/PATCH v6 01/12] media: Media device node support Laurent Pinchart
2010-11-25 2:28 ` [RFC/PATCH v6 02/12] media: Media device Laurent Pinchart
2010-11-25 9:33 ` Clemens Ladisch
2010-11-25 14:42 ` Laurent Pinchart
2010-11-25 2:28 ` [RFC/PATCH v6 03/12] media: Entities, pads and links Laurent Pinchart
2010-11-25 9:38 ` Clemens Ladisch
2010-11-25 9:38 ` [RFC/PATCH v6 03/12] [alsa-devel] " Clemens Ladisch
2010-11-25 13:41 ` [RFC/PATCH v6 03/12] " Mark Brown
2010-11-25 13:41 ` [RFC/PATCH v6 03/12] [alsa-devel] " Mark Brown
2010-11-25 15:29 ` Laurent Pinchart
2010-11-25 15:35 ` [RFC/PATCH v6 03/12] " Mark Brown
2010-11-25 15:35 ` [RFC/PATCH v6 03/12] [alsa-devel] " Mark Brown
2010-11-25 15:21 ` Laurent Pinchart
2010-11-25 15:28 ` [RFC/PATCH v6 03/12] " Mark Brown
2010-11-25 15:28 ` [RFC/PATCH v6 03/12] [alsa-devel] " Mark Brown
2010-11-26 9:10 ` [RFC/PATCH v6 03/12] " Clemens Ladisch
2010-11-26 9:10 ` [RFC/PATCH v6 03/12] [alsa-devel] " Clemens Ladisch
2010-12-13 16:10 ` [RFC/PATCH v6 03/12] " Clemens Ladisch
2010-12-13 16:10 ` [alsa-devel] " Clemens Ladisch
2010-12-14 12:00 ` Laurent Pinchart
2010-12-14 12:40 ` Hans Verkuil
2010-12-14 12:53 ` Laurent Pinchart
2010-12-14 12:53 ` [alsa-devel] " Laurent Pinchart
2010-12-14 13:49 ` Clemens Ladisch
2010-12-14 13:49 ` [alsa-devel] " Clemens Ladisch
2010-12-14 23:50 ` Laurent Pinchart
2010-12-14 23:50 ` [alsa-devel] " Laurent Pinchart
2010-12-21 16:49 ` Hans Verkuil
2010-12-14 13:31 ` Clemens Ladisch [this message]
2010-12-14 13:31 ` Clemens Ladisch
2010-12-14 13:54 ` Takashi Iwai
2010-12-14 13:54 ` [alsa-devel] " Takashi Iwai
2010-12-14 14:25 ` Laurent Pinchart
2010-12-14 14:25 ` [alsa-devel] " Laurent Pinchart
2010-12-14 15:30 ` Clemens Ladisch
2010-12-14 15:30 ` [alsa-devel] " Clemens Ladisch
2010-12-14 23:30 ` Raymond Yau
2010-12-14 14:51 ` [alsa-devel] " Hans Verkuil
2010-12-14 14:57 ` Laurent Pinchart
2010-12-14 14:57 ` [alsa-devel] " Laurent Pinchart
2010-12-14 14:49 ` Sakari Ailus
2010-11-25 13:36 ` Mark Brown
2010-11-25 15:40 ` Laurent Pinchart
2010-11-25 15:49 ` Mark Brown
2010-11-26 14:13 ` Laurent Pinchart
2010-11-26 14:14 ` Mark Brown
2010-11-28 12:34 ` Laurent Pinchart
2010-11-28 15:57 ` Hans Verkuil
2010-11-25 2:28 ` [RFC/PATCH v6 04/12] media: Entity graph traversal Laurent Pinchart
2010-11-25 2:28 ` [RFC/PATCH v6 05/12] media: Reference count and power handling Laurent Pinchart
2010-11-25 13:49 ` Mark Brown
2010-11-25 15:43 ` Laurent Pinchart
2010-11-25 17:49 ` Sakari Ailus
2010-11-25 21:47 ` Mark Brown
2010-11-28 12:33 ` Laurent Pinchart
2010-11-28 18:25 ` Mark Brown
2010-11-25 2:28 ` [RFC/PATCH v6 06/12] media: Media device information query Laurent Pinchart
2010-11-25 2:28 ` [RFC/PATCH v6 07/12] media: Entities, pads and links enumeration Laurent Pinchart
2010-11-25 2:28 ` [RFC/PATCH v6 08/12] media: Links setup Laurent Pinchart
2010-11-25 2:28 ` [RFC/PATCH v6 09/12] media: Entity locking and pipeline management Laurent Pinchart
2010-11-25 13:53 ` Mark Brown
2010-11-25 15:47 ` Laurent Pinchart
2010-11-25 2:28 ` [RFC/PATCH v6 10/12] v4l: Add a media_device pointer to the v4l2_device structure Laurent Pinchart
2010-11-25 2:28 ` [RFC/PATCH v6 11/12] v4l: Make video_device inherit from media_entity Laurent Pinchart
2010-11-25 11:38 ` Hans Verkuil
2010-11-25 14:37 ` Laurent Pinchart
2010-11-25 2:28 ` [RFC/PATCH v6 12/12] v4l: Make v4l2_subdev " Laurent Pinchart
2010-11-25 14:28 ` [RFC/PATCH v6 00/12] Media controller (core and V4L2) Mark Brown
2010-11-26 14:07 ` Laurent Pinchart
[not found] ` <201012031119.36771.laurent.pinchart@ideasonboard.com>
[not found] ` <201012031306.18520.hverkuil@xs4all.nl>
2010-12-03 13:50 ` [RFC/PATCH v6 03/12] media: Entities, pads and links Laurent Pinchart
2010-12-03 14:54 ` Mark Brown
2010-12-07 17:13 ` Hans Verkuil
2010-12-07 17:55 ` Mark Brown
2010-12-07 18:11 ` Hans Verkuil
2010-12-07 19:03 ` Mark Brown
2010-12-09 12:53 ` Laurent Pinchart
2010-12-10 16:35 ` Sakari Ailus
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=4D0771CB.3020809@ladisch.de \
--to=clemens@ladisch.de \
--cc=alsa-devel@alsa-project.org \
--cc=broonie@opensource.wolfsonmicro.com \
--cc=laurent.pinchart@ideasonboard.com \
--cc=lennart@poettering.net \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=linux-omap@vger.kernel.org \
--cc=sakari.ailus@maxwell.research.nokia.com \
/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.