lkml.org 
[lkml]   [2012]   [Jun]   [26]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 35/36] staging: comedi: cb_pcidas: cleanup cb_pcidas_ai_rinsn()
    Date
    Create local variables for the channel, range, and aref in order
    to make the remaining code a bit cleaner.

    Remove the extra space in all the comments.

    Remove the 'static const int timeout' and just use the open
    coded value in the loop.

    Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
    Cc: Ian Abbott <abbotti@mev.co.uk>
    Cc: Frank Mori Hess <fmhess@users.sourceforge.net>
    Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    ---
    drivers/staging/comedi/drivers/cb_pcidas.c | 35 ++++++++++++++----------------
    1 file changed, 16 insertions(+), 19 deletions(-)

    diff --git a/drivers/staging/comedi/drivers/cb_pcidas.c b/drivers/staging/comedi/drivers/cb_pcidas.c
    index b00ccad..1479325 100644
    --- a/drivers/staging/comedi/drivers/cb_pcidas.c
    +++ b/drivers/staging/comedi/drivers/cb_pcidas.c
    @@ -382,36 +382,33 @@ static inline unsigned int cal_enable_bits(struct comedi_device *dev)
    return CAL_EN_BIT | CAL_SRC_BITS(devpriv->calibration_source);
    }

    -/*
    - * "instructions" read/write data in "one-shot" or "software-triggered"
    - * mode.
    - */
    static int cb_pcidas_ai_rinsn(struct comedi_device *dev,
    struct comedi_subdevice *s,
    struct comedi_insn *insn, unsigned int *data)
    {
    struct cb_pcidas_private *devpriv = dev->private;
    - int n, i;
    + unsigned int chan = CR_CHAN(insn->chanspec);
    + unsigned int range = CR_RANGE(insn->chanspec);
    + unsigned int aref = CR_AREF(insn->chanspec);
    unsigned int bits;
    - static const int timeout = 10000;
    - int channel;
    - /* enable calibration input if appropriate */
    + int n, i;
    +
    + /* enable calibration input if appropriate */
    if (insn->chanspec & CR_ALT_SOURCE) {
    outw(cal_enable_bits(dev),
    devpriv->control_status + CALIBRATION_REG);
    - channel = 0;
    + chan = 0;
    } else {
    outw(0, devpriv->control_status + CALIBRATION_REG);
    - channel = CR_CHAN(insn->chanspec);
    }
    - /* set mux limits and gain */
    - bits = BEGIN_SCAN(channel) |
    - END_SCAN(channel) | GAIN_BITS(CR_RANGE(insn->chanspec));
    - /* set unipolar/bipolar */
    - if (CR_RANGE(insn->chanspec) & IS_UNIPOLAR)
    +
    + /* set mux limits and gain */
    + bits = BEGIN_SCAN(chan) | END_SCAN(chan) | GAIN_BITS(range);
    + /* set unipolar/bipolar */
    + if (range & IS_UNIPOLAR)
    bits |= UNIP;
    - /* set singleended/differential */
    - if (CR_AREF(insn->chanspec) != AREF_DIFF)
    + /* set single-ended/differential */
    + if (aref != AREF_DIFF)
    bits |= SE;
    outw(bits, devpriv->control_status + ADCMUX_CONT);

    @@ -425,11 +422,11 @@ static int cb_pcidas_ai_rinsn(struct comedi_device *dev,

    /* wait for conversion to end */
    /* return -ETIMEDOUT if there is a timeout */
    - for (i = 0; i < timeout; i++) {
    + for (i = 0; i < 10000; i++) {
    if (inw(devpriv->control_status + ADCMUX_CONT) & EOC)
    break;
    }
    - if (i == timeout)
    + if (i == 10000)
    return -ETIMEDOUT;

    /* read data */
    --
    1.7.11


    \
     
     \ /
      Last update: 2012-06-27 04:01    [W:0.046 / U:3.164 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site