public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Ian Abbott <abbotti@mev.co.uk>
To: Nicholas Mc Guire <hofrat@osadl.org>
Cc: H Hartley Sweeten <hsweeten@visionengravers.com>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	devel@driverdev.osuosl.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH RFC] staging: comedi: dt282x: condition with no effect - if identical to else
Date: Tue, 03 Feb 2015 15:12:50 +0000	[thread overview]
Message-ID: <54D0E572.7030607@mev.co.uk> (raw)
In-Reply-To: <1422967091-14798-1-git-send-email-hofrat@osadl.org>

On 03/02/15 12:38, Nicholas Mc Guire wrote:
> The if and the else branch code are identical - so the condition has no
> effect on the effective code - this patch removes the condition and the
> duplicated code.
>
> Signed-off-by: Nicholas Mc Guire <hofrat@osadl.org>
> ---
>
> The if and else branch are identical code thus the condition has no effect
>
>      if (cmd->scan_begin_src == TRIG_FOLLOW) {
>              /* internal trigger */
>              err |= cfc_check_trigger_arg_is(&cmd->scan_begin_arg, 0);
>      } else {
>              /* external trigger */
>              /* should be level/edge, hi/lo specification here */
>              err |= cfc_check_trigger_arg_is(&cmd->scan_begin_arg, 0);
>      }
>
> As the comments indicate that they are serving different purposes this
> looks like a bug. In any case - if intentional - it would need some
> comments on why.
>
> This needs a review by someone that knows the details of this driver.
> Also not sure about the retained comment string if that is still valid now.
>
> Patch was only compile tested for x86_64_defconfig + CONFIG_STAGING=y
> CONFIG_COMEDI=m, COMEDI_ISA_DRIVERS=y, CONFIG_COMEDI_DT282X=m
>
> Patch is against 3.0.19-rc7 (localversion = -next-20150203)
>
>   drivers/staging/comedi/drivers/dt282x.c |   10 ++--------
>   1 file changed, 2 insertions(+), 8 deletions(-)
>
> diff --git a/drivers/staging/comedi/drivers/dt282x.c b/drivers/staging/comedi/drivers/dt282x.c
> index 051dfb2..22c59e5 100644
> --- a/drivers/staging/comedi/drivers/dt282x.c
> +++ b/drivers/staging/comedi/drivers/dt282x.c
> @@ -685,14 +685,8 @@ static int dt282x_ai_cmdtest(struct comedi_device *dev,
>
>   	err |= cfc_check_trigger_arg_is(&cmd->start_arg, 0);
>
> -	if (cmd->scan_begin_src == TRIG_FOLLOW) {
> -		/* internal trigger */
> -		err |= cfc_check_trigger_arg_is(&cmd->scan_begin_arg, 0);
> -	} else {
> -		/* external trigger */
> -		/* should be level/edge, hi/lo specification here */

I think what that comment means is that it should allow scan_begin_arg 
to have various combinations of the CR_EDGE and CR_INVERT bits set. 
I.e. it ought to allow whatever combination of CR_EDGE and CR_INVERT 
better describes the nature of the external trigger signal, in addition 
to allowing the lazy default value 0.

I don't know what the nature of the external trigger signal is, as I 
haven't seen the manual.  I think Hartley might have seen one.

> -		err |= cfc_check_trigger_arg_is(&cmd->scan_begin_arg, 0);
> -	}
> +	/* internal trigger */

That comment would be misleading as it could be an internal or external 
trigger.

If you want to apply this patch, remove that comment first.  But I'd 
rather leave the existing code there as a reminder.

> +	err |= cfc_check_trigger_arg_is(&cmd->scan_begin_arg, 0);
>
>   	err |= cfc_check_trigger_arg_min(&cmd->convert_arg, 4000);
>
>


-- 
-=( Ian Abbott @ MEV Ltd.    E-mail: <abbotti@mev.co.uk> )=-
-=(                          Web: http://www.mev.co.uk/  )=-

  reply	other threads:[~2015-02-03 15:13 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-02-03 12:38 [PATCH RFC] staging: comedi: dt282x: condition with no effect - if identical to else Nicholas Mc Guire
2015-02-03 15:12 ` Ian Abbott [this message]
2015-02-03 20:04   ` Nicholas Mc Guire
2015-02-04 16:19   ` Hartley Sweeten
2015-02-04 16:40     ` Nicholas Mc Guire

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=54D0E572.7030607@mev.co.uk \
    --to=abbotti@mev.co.uk \
    --cc=devel@driverdev.osuosl.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=hofrat@osadl.org \
    --cc=hsweeten@visionengravers.com \
    --cc=linux-kernel@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