diff options
| author | Ian Abbott <abbotti@mev.co.uk> | 2014-07-23 13:41:18 +0400 |
|---|---|---|
| committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2014-07-25 02:01:24 +0400 |
| commit | de35c94178d6315f6def773a2137bc82a840f3d8 (patch) | |
| tree | 1932b4f3b2fb9f8b99c24503b0aff758a665b59b | |
| parent | 0be013e3dc2ee79ffab8a438bbb4e216837e3d52 (diff) | |
| download | linux-de35c94178d6315f6def773a2137bc82a840f3d8.tar.xz | |
staging: comedi: ni_65xx: add ni_65xx_num_ports()
Add a function to return the total number of digital I/O, digital input,
and digital output ports on the board. Each port has 8 channels (bits).
Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| -rw-r--r-- | drivers/staging/comedi/drivers/ni_65xx.c | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/drivers/staging/comedi/drivers/ni_65xx.c b/drivers/staging/comedi/drivers/ni_65xx.c index aba6fbbe340a..0f9185ebda66 100644 --- a/drivers/staging/comedi/drivers/ni_65xx.c +++ b/drivers/staging/comedi/drivers/ni_65xx.c @@ -296,17 +296,19 @@ struct ni_65xx_private { void __iomem *mmio; }; -static void ni_65xx_disable_input_filters(struct comedi_device *dev) +static unsigned int ni_65xx_num_ports(struct comedi_device *dev) { const struct ni_65xx_board *board = comedi_board(dev); + + return board->num_dio_ports + board->num_di_ports + board->num_do_ports; +} + +static void ni_65xx_disable_input_filters(struct comedi_device *dev) +{ struct ni_65xx_private *devpriv = dev->private; - unsigned num_ports; + unsigned int num_ports = ni_65xx_num_ports(dev); int i; - num_ports = board->num_dio_ports + - board->num_di_ports + - board->num_do_ports; - /* disable input filtering on all ports */ for (i = 0; i < num_ports; ++i) writeb(0x00, devpriv->mmio + NI_65XX_FILTER_ENA(i)); |
