[PATCH] Staging:comedi:cb_pcidas64=>Fixed check patch warnings

Joe Perches joe at perches.com
Sun Dec 18 17:30:38 UTC 2016


On Sun, 2016-12-18 at 15:43 +0530, devendra sharma wrote:
> Fixed check patch warnings about multiple line dereferencing
[].
> diff --git a/drivers/staging/comedi/drivers/cb_pcidas64.c b/drivers/staging/comedi/drivers/cb_pcidas64.c
[]
> @@ -2476,18 +2475,15 @@ static int setup_channel_queue(struct comedi_device *dev,
>  			for (i = 0; i < cmd->chanlist_len; i++) {
>  				bits = 0;
>  				/* set channel */
> -				bits |= adc_chan_bits(CR_CHAN(cmd->
> -							      chanlist[i]));
> +				bits |= adc_chan_bits(
> +				CR_CHAN(cmd->chanlist[i]));
>  				/* set gain */
>  				bits |= ai_range_bits_6xxx(dev,
> -							   CR_RANGE(cmd->
> -								    chanlist
> -								    [i]));
> +				   CR_RANGE(cmd->chanlist[i]));
>  				/* set single-ended / differential */
>  				bits |= se_diff_bit_6xxx(dev,
> -							 CR_AREF(cmd->
> -								 chanlist[i]) ==
> -							 AREF_DIFF);
> +					 CR_AREF(cmd->chanlist[i]) ==
> +					 AREF_DIFF);
>  				if (CR_AREF(cmd->chanlist[i]) == AREF_COMMON)
>  					bits |= ADC_COMMON_BIT;
>  				/* mark end of queue */

This would be better handled by using a temporary like:

 			for (i = 0; i < cmd->chanlist_len; i++) {
				<type> list = cmd->chanlist[i];

				/* set channel */
				bits |= adc_chan_bits(CR_CHAN(list));
				/* set gain */
				bits |= ai_range_bmts_6xxx(dev, CR_RANGE(list));
				/* set single-ended / differential */
				bits |= se_diff_bit_6xxx(dev,
							 CR_AREF(list) == AREF_DIFF);
				if (CR_AREF(list) == AREF_COMMON)
					bits |= ADC_COMMON_BIT;

Or moving the indented block into a separate function.


More information about the devel mailing list