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 <ism...@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.

Regards,

        Hans

>       return 0;
>  }
>  
> 
--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to