Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b03130b6 authored by H Hartley Sweeten's avatar H Hartley Sweeten Committed by Greg Kroah-Hartman
Browse files

staging: comedi: pcmuio: use comedi_async 'scans_done' to detect EOA



Remove the private data member 'stop_count' and use the comedi_async 'scans_done'
member to detect the end-of-acquisition.

Signed-off-by: default avatarH Hartley Sweeten <hsweeten@visionengravers.com>
Reviewed-by: default avatarIan Abbott <abbotti@mev.co.uk>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 09959d65
Loading
Loading
Loading
Loading
+3 −11
Original line number Diff line number Diff line
@@ -130,7 +130,6 @@ struct pcmuio_asic {
	spinlock_t pagelock;	/* protects the page registers */
	spinlock_t spinlock;	/* protects member variables */
	unsigned int enabled_mask;
	unsigned int stop_count;
	unsigned int active:1;
};

@@ -338,14 +337,9 @@ static void pcmuio_handle_intr_subdev(struct comedi_device *dev,

	comedi_buf_write_samples(s, &val, 1);

	/* Check for end of acquisition. */
	if (cmd->stop_src == TRIG_COUNT) {
		if (chip->stop_count > 0) {
			chip->stop_count--;
			if (chip->stop_count == 0)
	if (cmd->stop_src == TRIG_COUNT &&
	    s->async->scans_done >= cmd->stop_arg)
		s->async->events |= COMEDI_CB_EOA;
		}
	}

done:
	spin_unlock_irqrestore(&chip->spinlock, flags);
@@ -474,8 +468,6 @@ static int pcmuio_cmd(struct comedi_device *dev, struct comedi_subdevice *s)
	spin_lock_irqsave(&chip->spinlock, flags);
	chip->active = 1;

	chip->stop_count = cmd->stop_arg;

	/* Set up start of acquisition. */
	if (cmd->start_src == TRIG_INT)
		s->async->inttrig = pcmuio_inttrig_start_intr;