diff options
author | J. Ali Harlow <ali@avrc.city.ac.uk> | 2011-05-18 19:18:51 +0100 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2011-05-18 14:32:04 -0700 |
commit | 587e500c40aef11163bf09d367b5c3b3aba820cc (patch) | |
tree | 16f9c3e3024966ee78295571c1b24ebe6e1517e7 | |
parent | 311fda8e8b495e026fa1d24d9d5a211fc8be2aef (diff) |
comedi vmk80xx: make rudimentary_check a static function
rudimentary_check is a macro with side-effects (it returns
on error) which is contary to CodingStyle. Replace it with
a static function.
Signed-off-by: J. Ali Harlow <ali@avrc.city.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-rw-r--r-- | drivers/staging/comedi/drivers/vmk80xx.c | 78 |
1 files changed, 51 insertions, 27 deletions
diff --git a/drivers/staging/comedi/drivers/vmk80xx.c b/drivers/staging/comedi/drivers/vmk80xx.c index e4751334c56..5d83bb66714 100644 --- a/drivers/staging/comedi/drivers/vmk80xx.c +++ b/drivers/staging/comedi/drivers/vmk80xx.c @@ -557,22 +557,24 @@ exit: #define DIR_IN 1 #define DIR_OUT 2 -#define rudimentary_check(dir) \ -do { \ - if (!dev) \ - return -EFAULT; \ - if (!dev->probed) \ - return -ENODEV; \ - if (!dev->attached) \ - return -ENODEV; \ - if ((dir) & DIR_IN) { \ - if (test_bit(TRANS_IN_BUSY, &dev->flags)) \ - return -EBUSY; \ - } else { /* DIR_OUT */ \ - if (test_bit(TRANS_OUT_BUSY, &dev->flags)) \ - return -EBUSY; \ - } \ -} while (0) +static int rudimentary_check(struct vmk80xx_usb *dev, int dir) +{ + if (!dev) + return -EFAULT; + if (!dev->probed) + return -ENODEV; + if (!dev->attached) + return -ENODEV; + if (dir & DIR_IN) { + if (test_bit(TRANS_IN_BUSY, &dev->flags)) + return -EBUSY; + } else { /* DIR_OUT */ + if (test_bit(TRANS_OUT_BUSY, &dev->flags)) + return -EBUSY; + } + + return 0; +} static int vmk80xx_ai_rinsn(struct comedi_device *cdev, struct comedi_subdevice *s, @@ -585,7 +587,9 @@ static int vmk80xx_ai_rinsn(struct comedi_device *cdev, dbgvm("vmk80xx: %s\n", __func__); - rudimentary_check(DIR_IN); + n = rudimentary_check(dev, DIR_IN); + if (n) + return n; down(&dev->limit_sem); chan = CR_CHAN(insn->chanspec); @@ -636,7 +640,9 @@ static int vmk80xx_ao_winsn(struct comedi_device *cdev, dbgvm("vmk80xx: %s\n", __func__); - rudimentary_check(DIR_OUT); + n = rudimentary_check(dev, DIR_OUT); + if (n) + return n; down(&dev->limit_sem); chan = CR_CHAN(insn->chanspec); @@ -679,7 +685,9 @@ static int vmk80xx_ao_rinsn(struct comedi_device *cdev, dbgvm("vmk80xx: %s\n", __func__); - rudimentary_check(DIR_IN); + n = rudimentary_check(dev, DIR_IN); + if (n) + return n; down(&dev->limit_sem); chan = CR_CHAN(insn->chanspec); @@ -713,7 +721,9 @@ static int vmk80xx_di_rinsn(struct comedi_device *cdev, dbgvm("vmk80xx: %s\n", __func__); - rudimentary_check(DIR_IN); + n = rudimentary_check(dev, DIR_IN); + if (n) + return n; down(&dev->limit_sem); chan = CR_CHAN(insn->chanspec); @@ -758,7 +768,9 @@ static int vmk80xx_do_winsn(struct comedi_device *cdev, dbgvm("vmk80xx: %s\n", __func__); - rudimentary_check(DIR_OUT); + n = rudimentary_check(dev, DIR_OUT); + if (n) + return n; down(&dev->limit_sem); chan = CR_CHAN(insn->chanspec); @@ -805,7 +817,9 @@ static int vmk80xx_do_rinsn(struct comedi_device *cdev, dbgvm("vmk80xx: %s\n", __func__); - rudimentary_check(DIR_IN); + n = rudimentary_check(dev, DIR_IN); + if (n) + return n; down(&dev->limit_sem); chan = CR_CHAN(insn->chanspec); @@ -838,7 +852,9 @@ static int vmk80xx_cnt_rinsn(struct comedi_device *cdev, dbgvm("vmk80xx: %s\n", __func__); - rudimentary_check(DIR_IN); + n = rudimentary_check(dev, DIR_IN); + if (n) + return n; down(&dev->limit_sem); chan = CR_CHAN(insn->chanspec); @@ -886,7 +902,9 @@ static int vmk80xx_cnt_cinsn(struct comedi_device *cdev, dbgvm("vmk80xx: %s\n", __func__); - rudimentary_check(DIR_OUT); + n = rudimentary_check(dev, DIR_OUT); + if (n) + return n; down(&dev->limit_sem); @@ -932,7 +950,9 @@ static int vmk80xx_cnt_winsn(struct comedi_device *cdev, dbgvm("vmk80xx: %s\n", __func__); - rudimentary_check(DIR_OUT); + n = rudimentary_check(dev, DIR_OUT); + if (n) + return n; down(&dev->limit_sem); chan = CR_CHAN(insn->chanspec); @@ -976,7 +996,9 @@ static int vmk80xx_pwm_rinsn(struct comedi_device *cdev, dbgvm("vmk80xx: %s\n", __func__); - rudimentary_check(DIR_IN); + n = rudimentary_check(dev, DIR_IN); + if (n) + return n; down(&dev->limit_sem); @@ -1009,7 +1031,9 @@ static int vmk80xx_pwm_winsn(struct comedi_device *cdev, dbgvm("vmk80xx: %s\n", __func__); - rudimentary_check(DIR_OUT); + n = rudimentary_check(dev, DIR_OUT); + if (n) + return n; down(&dev->limit_sem); |