[PATCH 04/22] staging: comedi: s626: use a local var for the s->async in s626_irq_handler()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The comedi_async pointer is used a number of times in this function.
For aesthetic reasons, use a local variable for the pointer.

Also, since was already have a pointer to the "cmd" use that in the
for loop instead of s->async->cmd (or even async->cmd).

Signed-off-by: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
Cc: Ian Abbott <abbotti@xxxxxxxxx>
Cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
---
 drivers/staging/comedi/drivers/s626.c | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/drivers/staging/comedi/drivers/s626.c b/drivers/staging/comedi/drivers/s626.c
index b655437..24fc5cc 100644
--- a/drivers/staging/comedi/drivers/s626.c
+++ b/drivers/staging/comedi/drivers/s626.c
@@ -732,7 +732,8 @@ static irqreturn_t s626_irq_handler(int irq, void *d)
 	struct comedi_device *dev = d;
 	struct s626_private *devpriv = dev->private;
 	struct comedi_subdevice *s = dev->read_subdev;
-	struct comedi_cmd *cmd = &s->async->cmd;
+	struct comedi_async *async = s->async;
+	struct comedi_cmd *cmd = &async->cmd;
 	struct enc_private *k;
 	unsigned long flags;
 	int32_t *readaddr;
@@ -767,21 +768,21 @@ static irqreturn_t s626_irq_handler(int irq, void *d)
 		readaddr = (int32_t *) devpriv->ANABuf.LogicalBase + 1;
 
 		/*  get the data and hand it over to comedi */
-		for (i = 0; i < (s->async->cmd.chanlist_len); i++) {
+		for (i = 0; i < cmd->chanlist_len; i++) {
 			/*  Convert ADC data to 16-bit integer values and copy to application */
 			/*  buffer. */
 			tempdata = s626_ai_reg_to_uint((int)*readaddr);
 			readaddr++;
 
 			/* put data into read buffer */
-			/*  comedi_buf_put(s->async, tempdata); */
+			/*  comedi_buf_put(async, tempdata); */
 			if (cfc_write_to_buffer(s, tempdata) == 0)
 				printk
 				    ("s626_irq_handler: cfc_write_to_buffer error!\n");
 		}
 
 		/* end of scan occurs */
-		s->async->events |= COMEDI_CB_EOS;
+		async->events |= COMEDI_CB_EOS;
 
 		if (!(devpriv->ai_continous))
 			devpriv->ai_sample_count--;
@@ -792,7 +793,7 @@ static irqreturn_t s626_irq_handler(int irq, void *d)
 			MC_DISABLE(P_MC1, MC1_ERPS1);
 
 			/* send end of acquisition */
-			s->async->events |= COMEDI_CB_EOA;
+			async->events |= COMEDI_CB_EOA;
 
 			/* disable master interrupt */
 			irqstatus = 0;
-- 
1.8.1.4

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

[Index of Archives]     [Linux Driver Backports]     [DMA Engine]     [Linux GPIO]     [Linux SPI]     [Video for Linux]     [Linux USB Devel]     [Linux Coverity]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux