diff options
author | H Hartley Sweeten <hsweeten@visionengravers.com> | 2014-05-27 17:30:57 (GMT) |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2014-05-28 21:28:54 (GMT) |
commit | 29791cf5cc0a5d1c7b14dd6b8d31ff584c4b02af (patch) | |
tree | b2933815061f3278958dc1142084b40be3a183b0 /drivers/staging/comedi | |
parent | aecbc17285caeae98d5e729d02fdc93ded7a0186 (diff) | |
download | linux-29791cf5cc0a5d1c7b14dd6b8d31ff584c4b02af.tar.xz |
staging: comedi: pcmmio: remove 'continuous' from private data
This member of the private data can be determined from the cmd->stop_src.
Do that instead and remove the member.
Refactor pcmmio_handle_dio_intr() to remove an indent level.
For aesthetics, change the switch in pcmmio_cmd() to an if/else.
Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Reviewed-by: 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/pcmmio.c | 29 |
1 files changed, 9 insertions, 20 deletions
diff --git a/drivers/staging/comedi/drivers/pcmmio.c b/drivers/staging/comedi/drivers/pcmmio.c index 76b67a6..fed7e77 100644 --- a/drivers/staging/comedi/drivers/pcmmio.c +++ b/drivers/staging/comedi/drivers/pcmmio.c @@ -192,7 +192,6 @@ struct pcmmio_private { unsigned int enabled_mask; unsigned int stop_count; unsigned int active:1; - unsigned int continuous:1; unsigned int ao_readback[8]; }; @@ -371,15 +370,12 @@ static void pcmmio_handle_dio_intr(struct comedi_device *dev, } /* Check for end of acquisition. */ - if (!devpriv->continuous) { - /* stop_src == TRIG_COUNT */ - if (devpriv->stop_count > 0) { - devpriv->stop_count--; - if (devpriv->stop_count == 0) { - s->async->events |= COMEDI_CB_EOA; - /* TODO: STOP_ACQUISITION_CALL_HERE!! */ - pcmmio_stop_intr(dev, s); - } + if (cmd->stop_src == TRIG_COUNT && devpriv->stop_count > 0) { + devpriv->stop_count--; + if (devpriv->stop_count == 0) { + s->async->events |= COMEDI_CB_EOA; + /* TODO: STOP_ACQUISITION_CALL_HERE!! */ + pcmmio_stop_intr(dev, s); } } @@ -421,7 +417,7 @@ static int pcmmio_start_intr(struct comedi_device *dev, unsigned int pol_bits = 0; int i; - if (!devpriv->continuous && devpriv->stop_count == 0) { + if (cmd->stop_src == TRIG_COUNT && devpriv->stop_count == 0) { /* An empty acquisition! */ s->async->events |= COMEDI_CB_EOA; devpriv->active = 0; @@ -502,17 +498,10 @@ static int pcmmio_cmd(struct comedi_device *dev, struct comedi_subdevice *s) devpriv->active = 1; /* Set up end of acquisition. */ - switch (cmd->stop_src) { - case TRIG_COUNT: - devpriv->continuous = 0; + if (cmd->stop_src == TRIG_COUNT) devpriv->stop_count = cmd->stop_arg; - break; - default: - /* TRIG_NONE */ - devpriv->continuous = 1; + else /* TRIG_NONE */ devpriv->stop_count = 0; - break; - } /* Set up start of acquisition. */ if (cmd->start_src == TRIG_INT) |