staging: comedi: pcmmio: tidy up init_asics()
authorH Hartley Sweeten <hsweeten@visionengravers.com>
Mon, 9 Dec 2013 22:30:55 +0000 (15:30 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 17 Dec 2013 18:02:12 +0000 (10:02 -0800)
Rename this function so it has namespace associated with the driver.

The board supported by this driver only has one WinSystems WS16C48 asic
on it that handles the digital i/o. Remove the unnecessary for () loop
that would reset multiple asics.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Reviewed-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/comedi/drivers/pcmmio.c

index 3e3f4c9b8877df3ceb34dc5e523b52eac4725e08..af06062c15d3743c0f2455a3d555f8b7f496c4c6 100644 (file)
@@ -370,35 +370,30 @@ static void switch_page(struct comedi_device *dev, int page)
        outb(page << REG_PAGE_BITOFFSET, devpriv->asic_iobase + REG_PAGELOCK);
 }
 
-static void init_asics(struct comedi_device *dev)
-{                              /* sets up an
-                                  ASIC chip to defaults */
+static void pcmmio_reset(struct comedi_device *dev)
+{
        struct pcmmio_private *devpriv = dev->private;
-       int asic;
-
-       for (asic = 0; asic < 1; ++asic) {
-               int port, page;
-               unsigned long baseaddr = devpriv->asic_iobase;
-
-               switch_page(dev, 0);    /* switch back to page 0 */
-
-               /* first, clear all the DIO port bits */
-               for (port = 0; port < PORTS_PER_ASIC; ++port)
-                       outb(0, baseaddr + REG_PORT0 + port);
-
-               /* Next, clear all the paged registers for each page */
-               for (page = 1; page < NUM_PAGES; ++page) {
-                       int reg;
-                       /* now clear all the paged registers */
-                       switch_page(dev, page);
-                       for (reg = FIRST_PAGED_REG;
-                            reg < FIRST_PAGED_REG + NUM_PAGED_REGS; ++reg)
-                               outb(0, baseaddr + reg);
-               }
-
-               /* switch back to default page 0 */
-               switch_page(dev, 0);
+       unsigned long baseaddr = devpriv->asic_iobase;
+       int port, page;
+
+       switch_page(dev, 0);    /* switch back to page 0 */
+
+       /* first, clear all the DIO port bits */
+       for (port = 0; port < PORTS_PER_ASIC; ++port)
+               outb(0, baseaddr + REG_PORT0 + port);
+
+       /* Next, clear all the paged registers for each page */
+       for (page = 1; page < NUM_PAGES; ++page) {
+               int reg;
+               /* now clear all the paged registers */
+               switch_page(dev, page);
+               for (reg = FIRST_PAGED_REG;
+                    reg < FIRST_PAGED_REG + NUM_PAGED_REGS; ++reg)
+                       outb(0, baseaddr + reg);
        }
+
+       /* switch back to default page 0 */
+       switch_page(dev, 0);
 }
 
 static void pcmmio_stop_intr(struct comedi_device *dev,
@@ -1073,7 +1068,7 @@ static int pcmmio_attach(struct comedi_device *dev, struct comedi_devconfig *it)
 
        }
 
-       init_asics(dev);        /* clear out all the registers, basically */
+       pcmmio_reset(dev);
 
        if (it->options[1]) {
                ret = request_irq(it->options[1], interrupt_pcmmio, 0,