[PATCH v2 27/46] staging: comedi: me4000: return void from ai_round_cmd_args()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This function always succeeds. Change the return type to void and
remove the unnecessary error check in me4000_ai_do_cmd().

Move the function call in me4000_ai_do_cmd_test() from before Step 1
to Step 3 where the arguments are validated. There is no reason to
get the values if the previous steps fail.

Rename the function so it has namespace associated with the driver.

Signed-off-by: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
Cc: Ian Abbott <abbotti@xxxxxxxxx>
Cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
---
 drivers/staging/comedi/drivers/me4000.c | 27 +++++++++++++--------------
 1 file changed, 13 insertions(+), 14 deletions(-)

diff --git a/drivers/staging/comedi/drivers/me4000.c b/drivers/staging/comedi/drivers/me4000.c
index 97c243f..cd7dbb6d 100644
--- a/drivers/staging/comedi/drivers/me4000.c
+++ b/drivers/staging/comedi/drivers/me4000.c
@@ -580,11 +580,12 @@ static int me4000_ai_check_chanlist(struct comedi_device *dev,
 	return 0;
 }
 
-static int ai_round_cmd_args(struct comedi_device *dev,
-			     struct comedi_subdevice *s,
-			     struct comedi_cmd *cmd,
-			     unsigned int *init_ticks,
-			     unsigned int *scan_ticks, unsigned int *chan_ticks)
+static void me4000_ai_round_cmd_args(struct comedi_device *dev,
+				     struct comedi_subdevice *s,
+				     struct comedi_cmd *cmd,
+				     unsigned int *init_ticks,
+				     unsigned int *scan_ticks,
+				     unsigned int *chan_ticks)
 {
 	int rest;
 
@@ -630,8 +631,6 @@ static int ai_round_cmd_args(struct comedi_device *dev,
 				(*chan_ticks)++;
 		}
 	}
-
-	return 0;
 }
 
 static void ai_write_timer(struct comedi_device *dev,
@@ -757,10 +756,8 @@ static int me4000_ai_do_cmd(struct comedi_device *dev,
 		return err;
 
 	/* Round the timer arguments */
-	err = ai_round_cmd_args(dev,
-				s, cmd, &init_ticks, &scan_ticks, &chan_ticks);
-	if (err)
-		return err;
+	me4000_ai_round_cmd_args(dev, s, cmd,
+				 &init_ticks, &scan_ticks, &chan_ticks);
 
 	/* Prepare the AI for acquisition */
 	err = ai_prepare(dev, s, cmd, init_ticks, scan_ticks, chan_ticks);
@@ -782,9 +779,6 @@ static int me4000_ai_do_cmd_test(struct comedi_device *dev,
 	unsigned int scan_ticks;
 	int err = 0;
 
-	/* Round the timer arguments */
-	ai_round_cmd_args(dev, s, cmd, &init_ticks, &scan_ticks, &chan_ticks);
-
 	/* Step 1 : check if triggers are trivially valid */
 
 	err |= comedi_check_trigger_src(&cmd->start_src, TRIG_NOW | TRIG_EXT);
@@ -842,6 +836,11 @@ static int me4000_ai_do_cmd_test(struct comedi_device *dev,
 		cmd->chanlist_len = 1;
 		err |= -EINVAL;
 	}
+
+	/* Round the timer arguments */
+	me4000_ai_round_cmd_args(dev, s, cmd,
+				 &init_ticks, &scan_ticks, &chan_ticks);
+
 	if (init_ticks < 66) {
 		cmd->start_arg = 2000;
 		err |= -EINVAL;
-- 
2.4.3

_______________________________________________
devel mailing list
devel@xxxxxxxxxxxxxxxxxxxxxx
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel



[Index of Archives]     [Linux Driver Backports]     [DMA Engine]     [Linux GPIO]     [Linux SPI]     [Video for Linux]     [Linux USB Devel]     [Linux Coverity]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux