Skip to content

Commit

Permalink
staging: comedi: amplc_dio200: add 32-bit register access functions
Browse files Browse the repository at this point in the history
These are currently unused but will be used to support extra features of
the PCIe boards.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  • Loading branch information
Ian Abbott authored and Greg Kroah-Hartman committed Oct 24, 2012
1 parent 025d1f6 commit 8727601
Showing 1 changed file with 32 additions and 0 deletions.
32 changes: 32 additions & 0 deletions drivers/staging/comedi/drivers/amplc_dio200.c
Original file line number Diff line number Diff line change
Expand Up @@ -679,6 +679,38 @@ static void dio200_write8(struct comedi_device *dev, unsigned int offset,
writeb(val, devpriv->io.u.membase + offset);
}

/*
* Read 32-bit register.
*/
static unsigned int dio200_read32(struct comedi_device *dev,
unsigned int offset)
{
const struct dio200_board *thisboard = comedi_board(dev);
struct dio200_private *devpriv = dev->private;

offset <<= thisboard->mainshift;
if (devpriv->io.regtype == io_regtype)
return inl(devpriv->io.u.iobase + offset);
else
return readl(devpriv->io.u.membase + offset);
}

/*
* Write 32-bit register.
*/
static void dio200_write32(struct comedi_device *dev, unsigned int offset,
unsigned int val)
{
const struct dio200_board *thisboard = comedi_board(dev);
struct dio200_private *devpriv = dev->private;

offset <<= thisboard->mainshift;
if (devpriv->io.regtype == io_regtype)
outl(val, devpriv->io.u.iobase + offset);
else
writel(val, devpriv->io.u.membase + offset);
}

/*
* This function looks for a board matching the supplied PCI device.
*/
Expand Down

0 comments on commit 8727601

Please sign in to comment.