Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging-2.6
[pandora-kernel.git] / drivers / staging / comedi / drivers / ii_pci20kc.c
index a31f0d2..80825ba 100644 (file)
@@ -133,7 +133,7 @@ options for PCI-20341M:
 #define PCI20341_MUX                   0x04    /* Enable on-board MUX */
 #define PCI20341_SCANLIST              0x80    /* Channel/Gain Scan List */
 
-typedef union {
+union pci20xxx_subdev_private {
        void *iobase;
        struct {
                void *iobase;
@@ -146,14 +146,16 @@ typedef union {
                int settling_time;
                int ai_gain;
        } pci20341;
-} pci20xxx_subdev_private;
+};
+
+struct pci20xxx_private {
 
-typedef struct {
        void *ioaddr;
-       pci20xxx_subdev_private subdev_private[PCI20000_MODULES];
-} pci20xxx_private;
+       union pci20xxx_subdev_private subdev_private[PCI20000_MODULES];
+};
+
 
-#define devpriv ((pci20xxx_private *)dev->private)
+#define devpriv ((struct pci20xxx_private *)dev->private)
 #define CHAN (CR_CHAN(it->chanlist[0]))
 
 static int pci20xxx_attach(struct comedi_device * dev, struct comedi_devconfig * it);
@@ -205,11 +207,11 @@ static int pci20xxx_attach(struct comedi_device * dev, struct comedi_devconfig *
        int ret;
        int id;
        struct comedi_subdevice *s;
-       pci20xxx_subdev_private *sdp;
+       union pci20xxx_subdev_private *sdp;
 
        if ((ret = alloc_subdevices(dev, 1 + PCI20000_MODULES)) < 0)
                return ret;
-       if ((ret = alloc_private(dev, sizeof(pci20xxx_private))) < 0)
+       if ((ret = alloc_private(dev, sizeof(struct pci20xxx_private))) < 0)
                return ret;
 
        devpriv->ioaddr = (void *)(unsigned long)it->options[0];
@@ -255,7 +257,7 @@ static int pci20xxx_attach(struct comedi_device * dev, struct comedi_devconfig *
                }
        }
 
-       /* initialize pci20xxx_private */
+       /* initialize struct pci20xxx_private */
        pci20xxx_dio_init(dev, dev->subdevices + PCI20000_MODULES);
 
        return 1;
@@ -284,7 +286,7 @@ static const struct comedi_lrange *pci20006_range_list[] = {
 static int pci20006_init(struct comedi_device * dev, struct comedi_subdevice * s,
        int opt0, int opt1)
 {
-       pci20xxx_subdev_private *sdp = s->private;
+       union pci20xxx_subdev_private *sdp = s->private;
 
        if (opt0 < 0 || opt0 > 2)
                opt0 = 0;
@@ -309,7 +311,7 @@ static int pci20006_init(struct comedi_device * dev, struct comedi_subdevice * s
 static int pci20006_insn_read(struct comedi_device * dev, struct comedi_subdevice * s,
        struct comedi_insn * insn, unsigned int * data)
 {
-       pci20xxx_subdev_private *sdp = s->private;
+       union pci20xxx_subdev_private *sdp = s->private;
 
        data[0] = sdp->pci20006.last_data[CR_CHAN(insn->chanspec)];
 
@@ -319,7 +321,7 @@ static int pci20006_insn_read(struct comedi_device * dev, struct comedi_subdevic
 static int pci20006_insn_write(struct comedi_device * dev, struct comedi_subdevice * s,
        struct comedi_insn * insn, unsigned int * data)
 {
-       pci20xxx_subdev_private *sdp = s->private;
+       union pci20xxx_subdev_private *sdp = s->private;
        int hi, lo;
        unsigned int boarddata;
 
@@ -369,7 +371,7 @@ static const struct comedi_lrange *const pci20341_ranges[] = {
 static int pci20341_init(struct comedi_device * dev, struct comedi_subdevice * s,
        int opt0, int opt1)
 {
-       pci20xxx_subdev_private *sdp = s->private;
+       union pci20xxx_subdev_private *sdp = s->private;
        int option;
 
        /* options handling */
@@ -400,7 +402,7 @@ static int pci20341_init(struct comedi_device * dev, struct comedi_subdevice * s
 static int pci20341_insn_read(struct comedi_device * dev, struct comedi_subdevice * s,
        struct comedi_insn * insn, unsigned int * data)
 {
-       pci20xxx_subdev_private *sdp = s->private;
+        union pci20xxx_subdev_private *sdp = s->private;
        unsigned int i = 0, j = 0;
        int lo, hi;
        unsigned char eoc;      /* end of conversion */
@@ -449,7 +451,7 @@ static int pci20xxx_dio_insn_bits(struct comedi_device * dev, struct comedi_subd
 static int pci20xxx_dio_insn_config(struct comedi_device * dev, struct comedi_subdevice * s,
        struct comedi_insn * insn, unsigned int * data);
 
-/* initialize pci20xxx_private */
+/* initialize struct pci20xxx_private */
 static int pci20xxx_dio_init(struct comedi_device * dev, struct comedi_subdevice * s)
 {