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

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

staging: comedi: adl_pci9118: use cfc_check_trigger_src



The the cfc_check_trigger_src helper for the "step 1" tests in
pci9118_ai_cmdtest().

Signed-off-by: default avatarH Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 5e49e515
Loading
Loading
Loading
Loading
+12 −27
Original line number Original line Diff line number Diff line
@@ -1098,43 +1098,28 @@ static int pci9118_ai_cmdtest(struct comedi_device *dev,
	const struct boardtype *this_board = comedi_board(dev);
	const struct boardtype *this_board = comedi_board(dev);
	struct pci9118_private *devpriv = dev->private;
	struct pci9118_private *devpriv = dev->private;
	int err = 0;
	int err = 0;
	unsigned int flags;
	int tmp;
	int tmp;
	unsigned int divisor1 = 0, divisor2 = 0;
	unsigned int divisor1 = 0, divisor2 = 0;


	/* step 1: make sure trigger sources are trivially valid */
	/* step 1: make sure trigger sources are trivially valid */


	tmp = cmd->start_src;
	err |= cfc_check_trigger_src(&cmd->start_src,
	cmd->start_src &= TRIG_NOW | TRIG_EXT | TRIG_INT;
					TRIG_NOW | TRIG_EXT | TRIG_INT);
	if (!cmd->start_src || tmp != cmd->start_src)
		err++;


	tmp = cmd->scan_begin_src;
	flags = TRIG_FOLLOW;
	if (devpriv->master)
	if (devpriv->master)
		cmd->scan_begin_src &= TRIG_TIMER | TRIG_EXT | TRIG_FOLLOW;
		flags |= TRIG_TIMER | TRIG_EXT;
	else
	err |= cfc_check_trigger_src(&cmd->scan_begin_src, flags);
		cmd->scan_begin_src &= TRIG_FOLLOW;


	if (!cmd->scan_begin_src || tmp != cmd->scan_begin_src)
	flags = TRIG_TIMER | TRIG_EXT;
		err++;

	tmp = cmd->convert_src;
	if (devpriv->master)
	if (devpriv->master)
		cmd->convert_src &= TRIG_TIMER | TRIG_EXT | TRIG_NOW;
		flags |= TRIG_NOW;
	else
	err |= cfc_check_trigger_src(&cmd->convert_src, flags);
		cmd->convert_src &= TRIG_TIMER | TRIG_EXT;


	if (!cmd->convert_src || tmp != cmd->convert_src)
	err |= cfc_check_trigger_src(&cmd->scan_end_src, TRIG_COUNT);
		err++;
	err |= cfc_check_trigger_src(&cmd->stop_src,

					TRIG_COUNT | TRIG_NONE | TRIG_EXT);
	tmp = cmd->scan_end_src;
	cmd->scan_end_src &= TRIG_COUNT;
	if (!cmd->scan_end_src || tmp != cmd->scan_end_src)
		err++;

	tmp = cmd->stop_src;
	cmd->stop_src &= TRIG_COUNT | TRIG_NONE | TRIG_EXT;
	if (!cmd->stop_src || tmp != cmd->stop_src)
		err++;


	if (err)
	if (err)
		return 1;
		return 1;