The APCI1564_DI_INT_STATUS_REG is located in the PCI BAR 0 I/O space. That
base address is stored in devpriv->amcc_iobase. Use that to correctly read
the register.

Signed-off-by: H Hartley Sweeten <hswee...@visionengravers.com>
Cc: Ian Abbott <abbo...@mev.co.uk>
Cc: Greg Kroah-Hartman <gre...@linuxfoundation.org>
---
 drivers/staging/comedi/drivers/addi_apci_1564.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/staging/comedi/drivers/addi_apci_1564.c 
b/drivers/staging/comedi/drivers/addi_apci_1564.c
index cf14b0a..467e278 100644
--- a/drivers/staging/comedi/drivers/addi_apci_1564.c
+++ b/drivers/staging/comedi/drivers/addi_apci_1564.c
@@ -85,8 +85,8 @@ static irqreturn_t apci1564_interrupt(int irq, void *d)
                outl(status & APCI1564_DI_INT_DISABLE,
                     devpriv->amcc_iobase + APCI1564_DI_IRQ_REG);
 
-               s->state = inl(dev->iobase + APCI1564_DI_INT_STATUS_REG)
-                              & 0xffff;
+               s->state = inl(devpriv->amcc_iobase +
+                              APCI1564_DI_INT_STATUS_REG) & 0xffff;
                comedi_buf_write_samples(s, &s->state, 1);
                comedi_handle_events(dev, s);
 
-- 
2.0.3

_______________________________________________
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel

Reply via email to