"AOL", "AOM", and "AOH" boards have a jumper that controls whether
analog output channels are updated simultaneously or individually.  When
set to update individually, individual channels are updated when the
high byte register is written.  When set to update simultaneously,
channels are not updated until any of the analog output registers are
read.  The driver doesn't know the jumper setting and is not interested
in the simultaneous update feature, so it updates a channel by writing
the low byte register, the high byte register, and then reading channel
0's low byte register.

The `DAS08AO_AO_UPDATE` macro contains the offset to the low byte
register for analog output channel 0 on the "AOL", "AOM", and "AOH"
boards, which the driver reads to update the analog outputs.  Rename the
macro to `DAS08AOX_AO_UPDATE_REG` and add a comment.

Signed-off-by: Ian Abbott <abbo...@mev.co.uk>
---
 drivers/staging/comedi/drivers/das08.c | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/drivers/staging/comedi/drivers/das08.c 
b/drivers/staging/comedi/drivers/das08.c
index 005a7ef..837c968 100644
--- a/drivers/staging/comedi/drivers/das08.c
+++ b/drivers/staging/comedi/drivers/das08.c
@@ -138,7 +138,11 @@
 #define DAS08AOX_AO_LSB_REG(x) ((x) ? 0x0a : 0x08)
 /* (W) analog output m.s.b. registers for 2 channels ("AOx" boards) */
 #define DAS08AOX_AO_MSB_REG(x) ((x) ? 0x0b : 0x09)
-#define DAS08AO_AO_UPDATE      8
+/*
+ * (R) update analog outputs ("AOx" boards set for simultaneous output)
+ *     (any of the analog output registers could be used for this)
+ */
+#define DAS08AOX_AO_UPDATE_REG 0x08
 
 /* gainlist same as _pgx_ below */
 
@@ -374,7 +378,7 @@ static void das08_ao_set_data(struct comedi_device *dev,
                outb(lsb, dev->iobase + DAS08AOX_AO_LSB_REG(chan));
                outb(msb, dev->iobase + DAS08AOX_AO_MSB_REG(chan));
                /* load DACs */
-               inb(dev->iobase + DAS08AO_AO_UPDATE);
+               inb(dev->iobase + DAS08AOX_AO_UPDATE_REG);
        }
 }
 
-- 
2.1.4

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

Reply via email to