`daqboard2000_write_cpld()` currently returns 1 on success, or 0 on
failure.  Change it to return 0 on success, or `-EIO` on failure.

Signed-off-by: Ian Abbott <abbo...@mev.co.uk>
---
 drivers/staging/comedi/drivers/daqboard2000.c | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/drivers/staging/comedi/drivers/daqboard2000.c 
b/drivers/staging/comedi/drivers/daqboard2000.c
index f4c738037e28..d6f30261db9b 100644
--- a/drivers/staging/comedi/drivers/daqboard2000.c
+++ b/drivers/staging/comedi/drivers/daqboard2000.c
@@ -491,12 +491,12 @@ static int daqboard2000_wait_cpld_init(struct 
comedi_device *dev)
 
 static int daqboard2000_write_cpld(struct comedi_device *dev, u16 data)
 {
-       int result = 0;
+       int result = -EIO;
 
        usleep_range(10, 20);
        writew(data, dev->mmio + DB2K_REG_CPLD_WDATA);
        if (readw(dev->mmio + DB2K_REG_CPLD_STATUS) & DB2K_CPLD_STATUS_INIT)
-               result = 1;
+               result = 0;
 
        return result;
 }
@@ -547,10 +547,9 @@ static int daqboard2000_load_firmware(struct comedi_device 
*dev,
                for (; i < len; i += 2) {
                        u16 data = (cpld_array[i] << 8) + cpld_array[i + 1];
 
-                       if (!daqboard2000_write_cpld(dev, data)) {
-                               result = -EIO;
+                       result = daqboard2000_write_cpld(dev, data);
+                       if (result)
                                break;
-                       }
                }
                if (result == 0) {
                        daqboard2000_reset_local_bus(dev);
-- 
2.11.0

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

Reply via email to