public inbox for linux-media@vger.kernel.org
 help / color / mirror / Atom feed
From: Hans Verkuil <hverkuil@xs4all.nl>
To: Ismael Luceno <ismael@iodev.co.uk>
Cc: linux-media@vger.kernel.org
Subject: Re: [PATCH 2/2] solo6x10: Simplify solo_enum_ext_input
Date: Wed, 4 May 2016 13:50:57 +0200	[thread overview]
Message-ID: <5729E221.6040708@xs4all.nl> (raw)
In-Reply-To: <20160504114244.GA9208@pirotess.lan>



On 05/04/2016 01:42 PM, Ismael Luceno wrote:
> On 04/Mai/2016 10:02, Hans Verkuil wrote:
>> Hi Ismael,
>>
>> On 04/30/2016 05:17 AM, Ismael Luceno wrote:
>>> Additionally, now it specifies which channels it's showing.
>>>
>>> Signed-off-by: Ismael Luceno <ismael@iodev.co.uk>
>>> ---
>>>  drivers/media/pci/solo6x10/solo6x10-v4l2.c | 27 +++++++++------------------
>>>  1 file changed, 9 insertions(+), 18 deletions(-)
>>>
>>> diff --git a/drivers/media/pci/solo6x10/solo6x10-v4l2.c b/drivers/media/pci/solo6x10/solo6x10-v4l2.c
>>> index 721ff53..935c1b6 100644
>>> --- a/drivers/media/pci/solo6x10/solo6x10-v4l2.c
>>> +++ b/drivers/media/pci/solo6x10/solo6x10-v4l2.c
>>> @@ -386,26 +386,17 @@ static int solo_querycap(struct file *file, void  *priv,
>>>  static int solo_enum_ext_input(struct solo_dev *solo_dev,
>>>  			       struct v4l2_input *input)
>>>  {
>>> -	static const char * const dispnames_1[] = { "4UP" };
>>> -	static const char * const dispnames_2[] = { "4UP-1", "4UP-2" };
>>> -	static const char * const dispnames_5[] = {
>>> -		"4UP-1", "4UP-2", "4UP-3", "4UP-4", "16UP"
>>> -	};
>>> -	const char * const *dispnames;
>>> -
>>> -	if (input->index >= (solo_dev->nr_chans + solo_dev->nr_ext))
>>> -		return -EINVAL;
>>> -
>>> -	if (solo_dev->nr_ext == 5)
>>> -		dispnames = dispnames_5;
>>> -	else if (solo_dev->nr_ext == 2)
>>> -		dispnames = dispnames_2;
>>> -	else
>>> -		dispnames = dispnames_1;
>>> +	int ext = input->index - solo_dev->nr_chans;
>>> +	unsigned int nup, first;
>>>  
>>> -	snprintf(input->name, sizeof(input->name), "Multi %s",
>>> -		 dispnames[input->index - solo_dev->nr_chans]);
>>> +	if (ext >= solo_dev->nr_ext)
>>> +		return -EINVAL;
>>>  
>>> +	nup   = (ext == 4) ? 16 : 4;
>>> +	first = (ext & 3) << 2;
>>> +	snprintf(input->name, sizeof(input->name),
>>> +		 "Multi %d-up (cameras %d-%d)",
>>> +		 nup, first + 1, first + nup);
>>
>> Shouldn't this be: nup, first + 1, nup);
>>
>> Now it displays cameras as 1-5, 2-6, 3-7, 4-8 if I am not mistaken.
> 
> Hi Hans.
> 
> The var "first" takes the values {0, 4, 8, 12}, so the code is correct,
> it displays: 1-4, 5-8, 9-12, 13-16, or 1-16.

Ah, now I see what you do. Can you add a little comment here? For example:

/* Construct the text: cameras 1-4, 5-8, 9-12, 13-16, or 1-16 */

It's a bit obfuscated otherwise.

Thanks!

	Hans

  reply	other threads:[~2016-05-04 11:51 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-04-30  3:17 [PATCH 1/2] solo6x10: Set FRAME_BUF_SIZE to 200KB Ismael Luceno
2016-04-30  3:17 ` [PATCH 2/2] solo6x10: Simplify solo_enum_ext_input Ismael Luceno
2016-05-04  8:02   ` Hans Verkuil
2016-05-04 11:42     ` Ismael Luceno
2016-05-04 11:50       ` Hans Verkuil [this message]
2016-05-04 13:34 ` [PATCH 1/2] solo6x10: Set FRAME_BUF_SIZE to 200KB Andrey Utkin
2016-05-04 14:04   ` Hans Verkuil
2016-05-04 14:22     ` Andrey Utkin
2016-05-04 15:09       ` Ismael Luceno
2016-05-04 15:41       ` Hans Verkuil
2016-05-04 14:53   ` Ismael Luceno

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=5729E221.6040708@xs4all.nl \
    --to=hverkuil@xs4all.nl \
    --cc=ismael@iodev.co.uk \
    --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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox