These macros rely on a local variable having a specific name.

Signed-off-by: H Hartley Sweeten <[email protected]>
Cc: Ian Abbott <[email protected]>
Cc: Greg Kroah-Hartman <[email protected]>
---
 drivers/staging/comedi/drivers/adl_pci9111.c | 29 +++++++++++++++-------------
 1 file changed, 16 insertions(+), 13 deletions(-)

diff --git a/drivers/staging/comedi/drivers/adl_pci9111.c 
b/drivers/staging/comedi/drivers/adl_pci9111.c
index e2c327c..dc37570 100644
--- a/drivers/staging/comedi/drivers/adl_pci9111.c
+++ b/drivers/staging/comedi/drivers/adl_pci9111.c
@@ -99,7 +99,7 @@ TODO:
 #define PCI9111_REGISTER_AD_CHANNEL_READBACK           0x06
 #define PCI9111_AI_RANGE_REG                           0x08
 #define PCI9111_RANGE_STATUS_REG                       0x08
-#define PCI9111_REGISTER_TRIGGER_MODE_CONTROL          0x0A
+#define PCI9111_AI_MODE_CTRL_REG                       0x0A
 #define PCI9111_AI_MODE_INT_RB_REG                     0x0A
 #define PCI9111_SOFTWARE_TRIGGER_REG                   0x0E
 #define PCI9111_INT_CTRL_REG                           0x0C
@@ -133,12 +133,6 @@ TODO:
  * Define inlined function
  */
 
-#define pci9111_trigger_and_autoscan_get() \
-       (inb(dev->iobase + PCI9111_AI_MODE_INT_RB_REG)&0x0F)
-
-#define pci9111_trigger_and_autoscan_set(flags) \
-       outb(flags, dev->iobase + PCI9111_REGISTER_TRIGGER_MODE_CONTROL)
-
 #define pci9111_fifo_reset() do { \
        outb(PCI9111_FFEN_SET_FIFO_ENABLE, \
                dev->iobase + PCI9111_INT_CTRL_REG); \
@@ -256,7 +250,10 @@ static void pci9111_trigger_source_set(struct 
comedi_device *dev,
 {
        int flags;
 
-       flags = pci9111_trigger_and_autoscan_get() & 0x09;
+       /* Read the current trigger mode control bits */
+       flags = inb(dev->iobase + PCI9111_AI_MODE_INT_RB_REG);
+       /* Mask off the EITS and TPST bits */
+       flags &= 0x9;
 
        switch (source) {
        case software:
@@ -272,31 +269,37 @@ static void pci9111_trigger_source_set(struct 
comedi_device *dev,
                break;
        }
 
-       pci9111_trigger_and_autoscan_set(flags);
+       outb(flags, dev->iobase + PCI9111_AI_MODE_CTRL_REG);
 }
 
 static void pci9111_pretrigger_set(struct comedi_device *dev, bool pretrigger)
 {
        int flags;
 
-       flags = pci9111_trigger_and_autoscan_get() & 0x07;
+       /* Read the current trigger mode control bits */
+       flags = inb(dev->iobase + PCI9111_AI_MODE_INT_RB_REG);
+       /* Mask off the PTRG bit */
+       flags &= 0x7;
 
        if (pretrigger)
                flags |= PCI9111_PTRG_ON;
 
-       pci9111_trigger_and_autoscan_set(flags);
+       outb(flags, dev->iobase + PCI9111_AI_MODE_CTRL_REG);
 }
 
 static void pci9111_autoscan_set(struct comedi_device *dev, bool autoscan)
 {
        int flags;
 
-       flags = pci9111_trigger_and_autoscan_get() & 0x0e;
+       /* Read the current trigger mode control bits */
+       flags = inb(dev->iobase + PCI9111_AI_MODE_INT_RB_REG);
+       /* Mask off the ASCAN bit */
+       flags &= 0xe;
 
        if (autoscan)
                flags |= PCI9111_ASCAN_ON;
 
-       pci9111_trigger_and_autoscan_set(flags);
+       outb(flags, dev->iobase + PCI9111_AI_MODE_CTRL_REG);
 }
 
 enum pci9111_ISC0_sources {
-- 
1.7.11

_______________________________________________
devel mailing list
[email protected]
http://driverdev.linuxdriverproject.org/mailman/listinfo/devel

Reply via email to