2016-03-03 15:00:05

by Hans Verkuil

[permalink] [raw]
Subject: Re: [PATCH v3 02/22] uapi/media.h: Declare interface types for ALSA

On 02/12/16 00:41, Shuah Khan wrote:
> Declare the interface types to be used on alsa for
> the new G_TOPOLOGY ioctl.
>
> Signed-off-by: Shuah Khan <[email protected]>
> ---
> drivers/media/media-entity.c | 16 ++++++++++++++++
> include/uapi/linux/media.h | 10 ++++++++++
> 2 files changed, 26 insertions(+)
>
> diff --git a/drivers/media/media-entity.c b/drivers/media/media-entity.c
> index f2e4360..6179543 100644
> --- a/drivers/media/media-entity.c
> +++ b/drivers/media/media-entity.c
> @@ -65,6 +65,22 @@ static inline const char *intf_type(struct media_interface *intf)
> return "v4l2-subdev";
> case MEDIA_INTF_T_V4L_SWRADIO:
> return "swradio";
> + case MEDIA_INTF_T_ALSA_PCM_CAPTURE:
> + return "pcm-capture";
> + case MEDIA_INTF_T_ALSA_PCM_PLAYBACK:
> + return "pcm-playback";
> + case MEDIA_INTF_T_ALSA_CONTROL:
> + return "alsa-control";
> + case MEDIA_INTF_T_ALSA_COMPRESS:
> + return "compress";
> + case MEDIA_INTF_T_ALSA_RAWMIDI:
> + return "rawmidi";
> + case MEDIA_INTF_T_ALSA_HWDEP:
> + return "hwdep";
> + case MEDIA_INTF_T_ALSA_SEQUENCER:
> + return "sequencer";
> + case MEDIA_INTF_T_ALSA_TIMER:
> + return "timer";

Wouldn't it be better to add an 'alsa' prefix for all of these?

And 'dvb-' or 'v4l2-' (or v4l-) for the others as well.

Names like 'timer' are very generic. I think it would be a good idea to
make the naming more regular and have it include the subsystem name just
as the define does.

Regards,

Hans

> default:
> return "unknown-intf";
> }
> diff --git a/include/uapi/linux/media.h b/include/uapi/linux/media.h
> index c9eb42a..3cc0366 100644
> --- a/include/uapi/linux/media.h
> +++ b/include/uapi/linux/media.h
> @@ -265,6 +265,7 @@ struct media_links_enum {
>
> #define MEDIA_INTF_T_DVB_BASE 0x00000100
> #define MEDIA_INTF_T_V4L_BASE 0x00000200
> +#define MEDIA_INTF_T_ALSA_BASE 0x00000300
>
> /* Interface types */
>
> @@ -280,6 +281,15 @@ struct media_links_enum {
> #define MEDIA_INTF_T_V4L_SUBDEV (MEDIA_INTF_T_V4L_BASE + 3)
> #define MEDIA_INTF_T_V4L_SWRADIO (MEDIA_INTF_T_V4L_BASE + 4)
>
> +#define MEDIA_INTF_T_ALSA_PCM_CAPTURE (MEDIA_INTF_T_ALSA_BASE)
> +#define MEDIA_INTF_T_ALSA_PCM_PLAYBACK (MEDIA_INTF_T_ALSA_BASE + 1)
> +#define MEDIA_INTF_T_ALSA_CONTROL (MEDIA_INTF_T_ALSA_BASE + 2)
> +#define MEDIA_INTF_T_ALSA_COMPRESS (MEDIA_INTF_T_ALSA_BASE + 3)
> +#define MEDIA_INTF_T_ALSA_RAWMIDI (MEDIA_INTF_T_ALSA_BASE + 4)
> +#define MEDIA_INTF_T_ALSA_HWDEP (MEDIA_INTF_T_ALSA_BASE + 5)
> +#define MEDIA_INTF_T_ALSA_SEQUENCER (MEDIA_INTF_T_ALSA_BASE + 6)
> +#define MEDIA_INTF_T_ALSA_TIMER (MEDIA_INTF_T_ALSA_BASE + 7)
> +
> /*
> * MC next gen API definitions
> *
>


2016-03-03 15:57:10

by Shuah Khan

[permalink] [raw]
Subject: Re: [PATCH v3 02/22] uapi/media.h: Declare interface types for ALSA

On 03/03/2016 07:59 AM, Hans Verkuil wrote:
> On 02/12/16 00:41, Shuah Khan wrote:
>> Declare the interface types to be used on alsa for
>> the new G_TOPOLOGY ioctl.
>>
>> Signed-off-by: Shuah Khan <[email protected]>
>> ---
>> drivers/media/media-entity.c | 16 ++++++++++++++++
>> include/uapi/linux/media.h | 10 ++++++++++
>> 2 files changed, 26 insertions(+)
>>
>> diff --git a/drivers/media/media-entity.c b/drivers/media/media-entity.c
>> index f2e4360..6179543 100644
>> --- a/drivers/media/media-entity.c
>> +++ b/drivers/media/media-entity.c
>> @@ -65,6 +65,22 @@ static inline const char *intf_type(struct media_interface *intf)
>> return "v4l2-subdev";
>> case MEDIA_INTF_T_V4L_SWRADIO:
>> return "swradio";
>> + case MEDIA_INTF_T_ALSA_PCM_CAPTURE:
>> + return "pcm-capture";
>> + case MEDIA_INTF_T_ALSA_PCM_PLAYBACK:
>> + return "pcm-playback";
>> + case MEDIA_INTF_T_ALSA_CONTROL:
>> + return "alsa-control";
>> + case MEDIA_INTF_T_ALSA_COMPRESS:
>> + return "compress";
>> + case MEDIA_INTF_T_ALSA_RAWMIDI:
>> + return "rawmidi";
>> + case MEDIA_INTF_T_ALSA_HWDEP:
>> + return "hwdep";
>> + case MEDIA_INTF_T_ALSA_SEQUENCER:
>> + return "sequencer";
>> + case MEDIA_INTF_T_ALSA_TIMER:
>> + return "timer";
>
> Wouldn't it be better to add an 'alsa' prefix for all of these?
>
> And 'dvb-' or 'v4l2-' (or v4l-) for the others as well.
>
> Names like 'timer' are very generic. I think it would be a good idea to
> make the naming more regular and have it include the subsystem name just
> as the define does.
>
> Regards,
>
> Hans
>

Yes adding more information 'dvb-' or 'v4l2-' (or v4l-), alsa
to strings would help. I can fix all of them in a separate
patch if that is okay with you.

thanks,
-- Shuah


--
Shuah Khan
Sr. Linux Kernel Developer
Open Source Innovation Group
Samsung Research America (Silicon Valley)
[email protected] | (970) 217-8978