diff options
author | H Hartley Sweeten <hsweeten@visionengravers.com> | 2016-03-22 11:10:11 -0700 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2016-03-28 07:30:36 -0700 |
commit | 22acd860137ad6952fec8f6041efa9a30e49c22d (patch) | |
tree | a5490b2cc2c43e5a202727e5924da2d9efd72a1c | |
parent | 8dc5fb4e0eb8802ff0615b0fde92f43f3bd5d56d (diff) | |
download | op-kernel-dev-22acd860137ad6952fec8f6041efa9a30e49c22d.zip op-kernel-dev-22acd860137ad6952fec8f6041efa9a30e49c22d.tar.gz |
staging: comedi: ni_660x: change IOConfigReg() into a macro
The BUG_ON() in this function is unnecessary. The 'pfi_channel' will
always be in range of the subdevice 'n_chan' (NUM_PFI_CHANNELS) which
will return a valid 'reg'.
Convert the inline function into a simple macro.
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>
-rw-r--r-- | drivers/staging/comedi/drivers/ni_660x.c | 22 |
1 files changed, 8 insertions, 14 deletions
diff --git a/drivers/staging/comedi/drivers/ni_660x.c b/drivers/staging/comedi/drivers/ni_660x.c index 46647c6..10db2ff 100644 --- a/drivers/staging/comedi/drivers/ni_660x.c +++ b/drivers/staging/comedi/drivers/ni_660x.c @@ -156,13 +156,7 @@ enum ni_660x_register { NI660X_NUM_REGS, }; -static inline unsigned IOConfigReg(unsigned pfi_channel) -{ - unsigned reg = NI660X_IO_CFG_0_1 + pfi_channel / 2; - - BUG_ON(reg > NI660X_IO_CFG_38_39); - return reg; -} +#define NI660X_IO_CFG(x) (NI660X_IO_CFG_0_1 + ((x) / 2)) enum ni_660x_register_width { DATA_1B, @@ -893,7 +887,7 @@ static void init_tio_chip(struct comedi_device *dev, int chipset) devpriv->dma_configuration_soft_copies[chipset], NI660X_DMA_CFG); for (i = 0; i < NUM_PFI_CHANNELS; ++i) - ni_660x_write_register(dev, chipset, 0, IOConfigReg(i)); + ni_660x_write_register(dev, chipset, 0, NI660X_IO_CFG(i)); } static int ni_660x_dio_insn_bits(struct comedi_device *dev, @@ -944,22 +938,22 @@ static void ni_660x_select_pfi_output(struct comedi_device *dev, if (idle_chipset != active_chipset) { idle_bits = ni_660x_read_register(dev, idle_chipset, - IOConfigReg(pfi_channel)); + NI660X_IO_CFG(pfi_channel)); idle_bits &= ~pfi_output_select_mask(pfi_channel); idle_bits |= pfi_output_select_bits(pfi_channel, pfi_output_select_high_Z); ni_660x_write_register(dev, idle_chipset, idle_bits, - IOConfigReg(pfi_channel)); + NI660X_IO_CFG(pfi_channel)); } active_bits = ni_660x_read_register(dev, active_chipset, - IOConfigReg(pfi_channel)); + NI660X_IO_CFG(pfi_channel)); active_bits &= ~pfi_output_select_mask(pfi_channel); active_bits |= pfi_output_select_bits(pfi_channel, output_select); ni_660x_write_register(dev, active_chipset, active_bits, - IOConfigReg(pfi_channel)); + NI660X_IO_CFG(pfi_channel)); } static int ni_660x_set_pfi_routing(struct comedi_device *dev, unsigned chan, @@ -1025,10 +1019,10 @@ static int ni_660x_dio_insn_config(struct comedi_device *dev, break; case INSN_CONFIG_FILTER: - val = ni_660x_read_register(dev, 0, IOConfigReg(chan)); + val = ni_660x_read_register(dev, 0, NI660X_IO_CFG(chan)); val &= ~pfi_input_select_mask(chan); val |= pfi_input_select_bits(chan, data[1]); - ni_660x_write_register(dev, 0, val, IOConfigReg(chan)); + ni_660x_write_register(dev, 0, val, NI660X_IO_CFG(chan)); break; default: |