[PATCH 06/40] staging: comedi: me4000: remove struct me4000_ai_info

H Hartley Sweeten hartleys at visionengravers.com
Sat Sep 8 00:40:06 UTC 2012


The me4000_aio_info in the boardinfo struct is used to indicate
the number of analog input channels and a couple other details
about them. Remove the extra struct and absorb the data into the
boardinfo struct.

Signed-off-by: H Hartley Sweeten <hsweeten at visionengravers.com>
Cc: Ian Abbott <abbotti at mev.co.uk>
Cc: Greg Kroah-Hartman <gregkh at linuxfoundation.org>
---
 drivers/staging/comedi/drivers/me4000.c | 116 +++++++++++++-------------------
 drivers/staging/comedi/drivers/me4000.h |  12 ++--
 2 files changed, 49 insertions(+), 79 deletions(-)

diff --git a/drivers/staging/comedi/drivers/me4000.c b/drivers/staging/comedi/drivers/me4000.c
index 8ca0230..cd001c3 100644
--- a/drivers/staging/comedi/drivers/me4000.c
+++ b/drivers/staging/comedi/drivers/me4000.c
@@ -68,46 +68,36 @@ static const struct me4000_board me4000_boards[] = {
 	{
 		.name		= "ME-4650",
 		.device_id	= 0x4650,
-		.ai		= {
-			.count		= 16,
-		},
+		.ai_nchan	= 16,
 		.dio_nchan	= 32,
 	}, {
 		.name		= "ME-4660",
 		.device_id	= 0x4660,
-		.ai		= {
-			.count		= 32,
-			.diff_count	= 16,
-		},
+		.ai_nchan	= 32,
+		.ai_diff_nchan	= 16,
 		.dio_nchan	= 32,
 		.has_counter	= 1,
 	}, {
 		.name		= "ME-4660i",
 		.device_id	= 0x4661,
-		.ai		= {
-			.count		= 32,
-			.diff_count	= 16,
-		},
+		.ai_nchan	= 32,
+		.ai_diff_nchan	= 16,
 		.dio_nchan	= 32,
 		.has_counter	= 1,
 	}, {
 		.name		= "ME-4660s",
 		.device_id	= 0x4662,
-		.ai		= {
-			.count		= 32,
-			.sh_count	= 8,
-			.diff_count	= 16,
-		},
+		.ai_nchan	= 32,
+		.ai_diff_nchan	= 16,
+		.ai_sh_nchan	= 8,
 		.dio_nchan	= 32,
 		.has_counter	= 1,
 	}, {
 		.name		= "ME-4660is",
 		.device_id	= 0x4663,
-		.ai		= {
-			.count		= 32,
-			.sh_count	= 8,
-			.diff_count	= 16,
-		},
+		.ai_nchan	= 32,
+		.ai_diff_nchan	= 16,
+		.ai_sh_nchan	= 8,
 		.dio_nchan	= 32,
 		.has_counter	= 1,
 	}, {
@@ -116,11 +106,9 @@ static const struct me4000_board me4000_boards[] = {
 		.ao		= {
 			.count		= 4,
 		},
-		.ai		= {
-			.count		= 32,
-			.diff_count	= 16,
-			.ex_trig_analog	= 1,
-		},
+		.ai_nchan	= 32,
+		.ai_diff_nchan	= 16,
+		.ex_trig_analog	= 1,
 		.dio_nchan	= 32,
 		.has_counter	= 1,
 	}, {
@@ -129,11 +117,9 @@ static const struct me4000_board me4000_boards[] = {
 		.ao		= {
 			.count		= 4,
 		},
-		.ai		= {
-			.count		= 32,
-			.diff_count	= 16,
-			.ex_trig_analog	= 1,
-		},
+		.ai_nchan	= 32,
+		.ai_diff_nchan	= 16,
+		.ex_trig_analog	= 1,
 		.dio_nchan	= 32,
 		.has_counter	= 1,
 	}, {
@@ -142,12 +128,10 @@ static const struct me4000_board me4000_boards[] = {
 		.ao		= {
 			.count		= 4,
 		},
-		.ai		= {
-			.count		= 32,
-			.sh_count	= 8,
-			.diff_count	= 16,
-			.ex_trig_analog	= 1,
-		},
+		.ai_nchan	= 32,
+		.ai_diff_nchan	= 16,
+		.ai_sh_nchan	= 8,
+		.ex_trig_analog	= 1,
 		.dio_nchan	= 32,
 		.has_counter	= 1,
 	}, {
@@ -156,12 +140,10 @@ static const struct me4000_board me4000_boards[] = {
 		.ao		= {
 			.count		= 4,
 		},
-		.ai		= {
-			.count		= 32,
-			.sh_count	= 8,
-			.diff_count	= 16,
-			.ex_trig_analog	= 1,
-		},
+		.ai_nchan	= 32,
+		.ai_diff_nchan	= 16,
+		.ai_sh_nchan	= 8,
+		.ex_trig_analog	= 1,
 		.dio_nchan	= 32,
 		.has_counter	= 1,
 	}, {
@@ -171,11 +153,9 @@ static const struct me4000_board me4000_boards[] = {
 			.count		= 4,
 			.fifo_count	= 4,
 		},
-		.ai		= {
-			.count		= 32,
-			.diff_count	= 16,
-			.ex_trig_analog	= 1,
-		},
+		.ai_nchan	= 32,
+		.ai_diff_nchan	= 16,
+		.ex_trig_analog	= 1,
 		.dio_nchan	= 32,
 		.has_counter	= 1,
 	}, {
@@ -185,11 +165,9 @@ static const struct me4000_board me4000_boards[] = {
 			.count		= 4,
 			.fifo_count	= 4,
 		},
-		.ai		= {
-			.count		= 32,
-			.diff_count	= 16,
-			.ex_trig_analog	= 1,
-		},
+		.ai_nchan	= 32,
+		.ai_diff_nchan	= 16,
+		.ex_trig_analog	= 1,
 		.dio_nchan	= 32,
 		.has_counter	= 1,
 	}, {
@@ -199,12 +177,10 @@ static const struct me4000_board me4000_boards[] = {
 			.count		= 4,
 			.fifo_count	= 4,
 		},
-		.ai		= {
-			.count		= 32,
-			.sh_count	= 8,
-			.diff_count	= 16,
-			.ex_trig_analog	= 1,
-		},
+		.ai_nchan	= 32,
+		.ai_diff_nchan	= 16,
+		.ai_sh_nchan	= 8,
+		.ex_trig_analog	= 1,
 		.dio_nchan	= 32,
 		.has_counter	= 1,
 	}, {
@@ -214,12 +190,10 @@ static const struct me4000_board me4000_boards[] = {
 			.count		= 4,
 			.fifo_count	= 4,
 		},
-		.ai		= {
-			.count		= 32,
-			.sh_count	= 8,
-			.diff_count	= 16,
-			.ex_trig_analog	= 1,
-		},
+		.ai_nchan	= 32,
+		.ai_diff_nchan	= 16,
+		.ai_sh_nchan	= 8,
+		.ex_trig_analog	= 1,
 		.dio_nchan	= 32,
 		.has_counter	= 1,
 	},
@@ -809,7 +783,7 @@ static int me4000_ai_insn_read(struct comedi_device *dev,
 	switch (aref) {
 	case AREF_GROUND:
 	case AREF_COMMON:
-		if (chan >= thisboard->ai.count) {
+		if (chan >= thisboard->ai_nchan) {
 			printk(KERN_ERR
 			       "comedi%d: me4000: me4000_ai_insn_read(): "
 			       "Analog input is not available\n", dev->minor);
@@ -827,7 +801,7 @@ static int me4000_ai_insn_read(struct comedi_device *dev,
 			return -EINVAL;
 		}
 
-		if (chan >= thisboard->ai.diff_count) {
+		if (chan >= thisboard->ai_diff_nchan) {
 			printk(KERN_ERR
 			       "comedi%d: me4000: me4000_ai_insn_read(): "
 			       "Analog input is not available\n", dev->minor);
@@ -949,7 +923,7 @@ static int ai_check_chanlist(struct comedi_device *dev,
 	if (aref == SDF_DIFF) {
 		for (i = 0; i < cmd->chanlist_len; i++) {
 			if (CR_CHAN(cmd->chanlist[i]) >=
-			    thisboard->ai.diff_count) {
+			    thisboard->ai_diff_nchan) {
 				printk(KERN_ERR
 				       "comedi%d: me4000: ai_check_chanlist():"
 				       " Channel number to high\n", dev->minor);
@@ -958,7 +932,7 @@ static int ai_check_chanlist(struct comedi_device *dev,
 		}
 	} else {
 		for (i = 0; i < cmd->chanlist_len; i++) {
-			if (CR_CHAN(cmd->chanlist[i]) >= thisboard->ai.count) {
+			if (CR_CHAN(cmd->chanlist[i]) >= thisboard->ai_nchan) {
 				printk(KERN_ERR
 				       "comedi%d: me4000: ai_check_chanlist(): "
 				       "Channel number to high\n", dev->minor);
@@ -2157,11 +2131,11 @@ static int me4000_attach(struct comedi_device *dev, struct comedi_devconfig *it)
 
 	s = &dev->subdevices[0];
 
-	if (thisboard->ai.count) {
+	if (thisboard->ai_nchan) {
 		s->type = COMEDI_SUBD_AI;
 		s->subdev_flags =
 		    SDF_READABLE | SDF_COMMON | SDF_GROUND | SDF_DIFF;
-		s->n_chan = thisboard->ai.count;
+		s->n_chan = thisboard->ai_nchan;
 		s->maxdata = 0xFFFF;	/*  16 bit ADC */
 		s->len_chanlist = ME4000_AI_CHANNEL_LIST_COUNT;
 		s->range_table = &me4000_ai_range;
diff --git a/drivers/staging/comedi/drivers/me4000.h b/drivers/staging/comedi/drivers/me4000.h
index 12b5c1f..cbf8c6b 100644
--- a/drivers/staging/comedi/drivers/me4000.h
+++ b/drivers/staging/comedi/drivers/me4000.h
@@ -261,18 +261,14 @@ struct me4000_ao_info {
 	int fifo_count;
 };
 
-struct me4000_ai_info {
-	int count;
-	int sh_count;
-	int diff_count;
-	int ex_trig_analog;
-};
-
 struct me4000_board {
 	const char *name;
 	unsigned short device_id;
 	struct me4000_ao_info ao;
-	struct me4000_ai_info ai;
+	int ai_nchan;
+	int ai_diff_nchan;
+	int ai_sh_nchan;
+	int ex_trig_analog;
 	int dio_nchan;
 	int has_counter;
 };
-- 
1.7.11




More information about the devel mailing list