On 09/11/18 23:44, Ben Hutchings wrote:
On Tue, 2018-07-10 at 18:02 +0100, Ian Abbott wrote:
From: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
[ Upstream commit 1376b0a2160319125c3a2822e8c09bd283cd8141 ]
There is a '>' vs '<' typo so this loop is a no-op.
Thanks, but this driver seems to have lots of other bugs in 3.16, like
it only ever accesses data[0] in this loop. I don't think there's much
point in applying just this one. But if you think it's worth fixing
then I can apply all the necessary fixes.
Ben.
It restores some basic functionality for daqp_ao_insn_write() that was
broken. The most common case to be handled is insn->n == 1, as that is
what the comedi_data_write() function in the user-space Comedilib
library sets.
However, it may be worth applying e024181b02ed ("staging: comedi:
quatech_daqp_cs: fix bug in daqp_ao_insn_write()") and (with a small
amount of backporting) e031642eccc0 ("staging: comedi: quatech_daqp_cs:
use comedi_timeout() in ao (*insn_write)") before this one. I'll append
a patch series as replies to this email.
Fixes: d35dcc89fc93 ("staging: comedi: quatech_daqp_cs: fix daqp_ao_insn_write()")
Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
Reviewed-by: Ian Abbott <abbotti@xxxxxxxxx>
Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
---
drivers/staging/comedi/drivers/quatech_daqp_cs.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/staging/comedi/drivers/quatech_daqp_cs.c b/drivers/staging/comedi/drivers/quatech_daqp_cs.c
index b3bbec0a0d23..f89a863ea04c 100644
--- a/drivers/staging/comedi/drivers/quatech_daqp_cs.c
+++ b/drivers/staging/comedi/drivers/quatech_daqp_cs.c
@@ -649,7 +649,7 @@ static int daqp_ao_insn_write(struct comedi_device *dev,
/* Make sure D/A update mode is direct update */
outb(0, dev->iobase + DAQP_AUX);
- for (i = 0; i > insn->n; i++) {
+ for (i = 0; i < insn->n; i++) {
val = data[0];
val &= 0x0fff;
val ^= 0x0800; /* Flip the sign */
--
-=( Ian Abbott <abbotti@xxxxxxxxx> || Web: www.mev.co.uk )=-
-=( MEV Ltd. is a company registered in England & Wales. )=-
-=( Registered number: 02862268. Registered address: )=-
-=( 15 West Park Road, Bramhall, STOCKPORT, SK7 3JZ, UK. )=-