summaryrefslogtreecommitdiff
path: root/drivers/staging/comedi
diff options
context:
space:
mode:
authorH Hartley Sweeten <hartleys@visionengravers.com>2012-11-14 00:51:28 (GMT)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2012-11-15 00:23:03 (GMT)
commitfa567598f0294cbca84928201709fa26ecbe549a (patch)
tree408f7e213b5114bdaf11633d1ab2e5b47d606436 /drivers/staging/comedi
parentdf5daff81f81599cfb88471d149f26480bc08d92 (diff)
downloadlinux-fsl-qoriq-fa567598f0294cbca84928201709fa26ecbe549a.tar.xz
staging: comedi: hwdrv_apci3120: use cfc_check_trigger_arg_*() helpers
Use the new helpers in the step 3 tests of i_APCI3120_CommandTestAnalogInput(). Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com> Cc: Ian Abbott <abbotti@mev.co.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/staging/comedi')
-rw-r--r--drivers/staging/comedi/drivers/addi-data/hwdrv_apci3120.c56
1 files changed, 17 insertions, 39 deletions
diff --git a/drivers/staging/comedi/drivers/addi-data/hwdrv_apci3120.c b/drivers/staging/comedi/drivers/addi-data/hwdrv_apci3120.c
index 0bc4eda..74065ba 100644
--- a/drivers/staging/comedi/drivers/addi-data/hwdrv_apci3120.c
+++ b/drivers/staging/comedi/drivers/addi-data/hwdrv_apci3120.c
@@ -767,54 +767,32 @@ static int i_APCI3120_CommandTestAnalogInput(struct comedi_device *dev,
if (err)
return 2;
- /* step 3: make sure arguments are trivially compatible */
+ /* Step 3: check if arguments are trivially valid */
- if (cmd->start_arg != 0) {
- cmd->start_arg = 0;
- err++;
- }
+ err |= cfc_check_trigger_arg_is(&cmd->start_arg, 0);
- if (cmd->scan_begin_src == TRIG_TIMER) { /* Test Delay timing */
- if (cmd->scan_begin_arg < 100000) {
- cmd->scan_begin_arg = 100000;
- err++;
- }
- }
+ if (cmd->scan_begin_src == TRIG_TIMER) /* Test Delay timing */
+ err |= cfc_check_trigger_arg_min(&cmd->scan_begin_arg, 100000);
if (cmd->convert_src == TRIG_TIMER) { /* Test Acquisition timing */
if (cmd->scan_begin_src == TRIG_TIMER) {
- if (cmd->convert_arg &&
- (cmd->convert_arg < 10000)) {
- cmd->convert_arg = 10000;
- err++;
- }
+ if (cmd->convert_arg)
+ err |= cfc_check_trigger_arg_min(
+ &cmd->convert_arg, 10000);
} else {
- if (cmd->convert_arg < 10000) {
- cmd->convert_arg = 10000;
- err++;
- }
+ err |= cfc_check_trigger_arg_min(&cmd->convert_arg,
+ 10000);
}
}
- if (!cmd->chanlist_len) {
- cmd->chanlist_len = 1;
- err++;
- }
- if (cmd->chanlist_len > this_board->i_AiChannelList) {
- cmd->chanlist_len = this_board->i_AiChannelList;
- err++;
- }
- if (cmd->stop_src == TRIG_COUNT) {
- if (!cmd->stop_arg) {
- cmd->stop_arg = 1;
- err++;
- }
- } else { /* TRIG_NONE */
- if (cmd->stop_arg != 0) {
- cmd->stop_arg = 0;
- err++;
- }
- }
+ err |= cfc_check_trigger_arg_min(&cmd->chanlist_len, 1);
+ err |= cfc_check_trigger_arg_max(&cmd->chanlist_len,
+ this_board->i_AiChannelList);
+
+ if (cmd->stop_src == TRIG_COUNT)
+ err |= cfc_check_trigger_arg_min(&cmd->stop_arg, 1);
+ else /* TRIG_NONE */
+ err |= cfc_check_trigger_arg_is(&cmd->stop_arg, 0);
if (err)
return 3;