From 32a2eeaa5f163afd3e25c0c29c62acfb0befd1da Mon Sep 17 00:00:00 2001 From: Povilas Kanapickas Date: Sun, 14 Jul 2019 23:40:50 +0300 Subject: [PATCH] genesys: Return errors as exceptions from *write_ahb() --- backend/genesys_gl124.cc | 17 +++-------------- backend/genesys_gl846.cc | 16 +++------------- backend/genesys_gl847.cc | 16 +++------------- backend/genesys_low.cc | 16 +++------------- backend/genesys_low.h | 4 ++-- 5 files changed, 14 insertions(+), 55 deletions(-) diff --git a/backend/genesys_gl124.cc b/backend/genesys_gl124.cc index a5ebb894e..12d0c9a53 100644 --- a/backend/genesys_gl124.cc +++ b/backend/genesys_gl124.cc @@ -524,14 +524,8 @@ gl124_send_slope_table (Genesys_Device * dev, int table_nr, DBG (DBG_io, "%s: %s\n", __func__, msg); } - /* slope table addresses are fixed */ - status = sanei_genesys_write_ahb(dev, 0x10000000 + 0x4000 * table_nr, steps * 2, table.data()); - if (status != SANE_STATUS_GOOD) - { - DBG (DBG_error, - "%s: write to AHB failed writing slope table %d (%s)\n", - __func__, table_nr, sane_strstatus (status)); - } + // slope table addresses are fixed + sanei_genesys_write_ahb(dev, 0x10000000 + 0x4000 * table_nr, steps * 2, table.data()); return status; } @@ -2548,12 +2542,7 @@ gl124_send_shading_data (Genesys_Device * dev, const Genesys_Sensor& sensor, } sanei_genesys_read_register(dev, 0xd0+i, &val); addr = val * 8192 + 0x10000000; - status = sanei_genesys_write_ahb(dev, addr, pixels*dev->segnb, buffer.data()); - if (status != SANE_STATUS_GOOD) - { - DBG(DBG_error, "%s; write to AHB failed (%s)\n", __func__, sane_strstatus(status)); - return status; - } + sanei_genesys_write_ahb(dev, addr, pixels*dev->segnb, buffer.data()); } return status; diff --git a/backend/genesys_gl846.cc b/backend/genesys_gl846.cc index 294efb6f9..925e0e211 100644 --- a/backend/genesys_gl846.cc +++ b/backend/genesys_gl846.cc @@ -455,13 +455,8 @@ gl846_send_slope_table (Genesys_Device * dev, int table_nr, DBG (DBG_io, "%s: %s\n", __func__, msg); } - /* slope table addresses are fixed */ - status = sanei_genesys_write_ahb(dev, 0x10000000 + 0x4000 * table_nr, steps * 2, table.data()); - if (status != SANE_STATUS_GOOD) - { - DBG(DBG_error, "%s: write to AHB failed writing slope table %d (%s)\n", __func__, table_nr, - sane_strstatus(status)); - } + // slope table addresses are fixed + sanei_genesys_write_ahb(dev, 0x10000000 + 0x4000 * table_nr, steps * 2, table.data()); return status; } @@ -2252,12 +2247,7 @@ gl846_send_shading_data (Genesys_Device * dev, const Genesys_Sensor& sensor, sanei_genesys_read_register(dev, 0xd0+i, &val); addr = val * 8192 + 0x10000000; - status = sanei_genesys_write_ahb(dev, addr, pixels, buffer.data()); - if (status != SANE_STATUS_GOOD) - { - DBG(DBG_error, "%s; write to AHB failed (%s)\n", __func__, sane_strstatus(status)); - return status; - } + sanei_genesys_write_ahb(dev, addr, pixels, buffer.data()); } return status; diff --git a/backend/genesys_gl847.cc b/backend/genesys_gl847.cc index b08427ce2..bc41e62c2 100644 --- a/backend/genesys_gl847.cc +++ b/backend/genesys_gl847.cc @@ -475,13 +475,8 @@ gl847_send_slope_table (Genesys_Device * dev, int table_nr, DBG (DBG_io, "%s: %s\n", __func__, msg); } - /* slope table addresses are fixed */ - status = sanei_genesys_write_ahb(dev, 0x10000000 + 0x4000 * table_nr, steps * 2, table.data()); - if (status != SANE_STATUS_GOOD) - { - DBG(DBG_error, "%s: write to AHB failed writing slope table %d (%s)\n", __func__, table_nr, - sane_strstatus(status)); - } + // slope table addresses are fixed + sanei_genesys_write_ahb(dev, 0x10000000 + 0x4000 * table_nr, steps * 2, table.data()); return status; } @@ -2304,12 +2299,7 @@ gl847_send_shading_data (Genesys_Device * dev, const Genesys_Sensor& sensor, sanei_genesys_read_register(dev, 0xd0+i, &val); addr = val * 8192 + 0x10000000; - status = sanei_genesys_write_ahb(dev, addr, pixels, buffer.data()); - if (status != SANE_STATUS_GOOD) - { - DBG(DBG_error, "%s; write to AHB failed (%s)\n", __func__, sane_strstatus(status)); - return status; - } + sanei_genesys_write_ahb(dev, addr, pixels, buffer.data()); } return status; diff --git a/backend/genesys_low.cc b/backend/genesys_low.cc index 861c6f5e7..351670431 100644 --- a/backend/genesys_low.cc +++ b/backend/genesys_low.cc @@ -1026,14 +1026,12 @@ void sanei_genesys_bulk_write_register(Genesys_Device * dev, Genesys_Register_Se * @param size size of the chunk of data * @param data pointer to the data to write */ -SANE_Status -sanei_genesys_write_ahb(Genesys_Device* dev, uint32_t addr, uint32_t size, uint8_t * data) +void sanei_genesys_write_ahb(Genesys_Device* dev, uint32_t addr, uint32_t size, uint8_t* data) { DBG_HELPER(dbg); uint8_t outdata[8]; size_t written,blksize; - SANE_Status status = SANE_STATUS_GOOD; int i; char msg[100]="AHB="; @@ -1078,8 +1076,6 @@ sanei_genesys_write_ahb(Genesys_Device* dev, uint32_t addr, uint32_t size, uint8 written += blksize; } while (written < size); - - return status; } @@ -1211,14 +1207,8 @@ sanei_genesys_send_gamma_table(Genesys_Device * dev, const Genesys_Sensor& senso sanei_genesys_write_register(dev, 0xc5+2*i, gamma[size*2*i+1]); sanei_genesys_write_register(dev, 0xc6+2*i, gamma[size*2*i]); - status = sanei_genesys_write_ahb(dev, 0x01000000 + 0x200 * i, (size-1) * 2, gamma.data() + i * size * 2+2); - if (status != SANE_STATUS_GOOD) - { - DBG (DBG_error, - "%s: write to AHB failed writing table %d (%s)\n", __func__, - i, sane_strstatus (status)); - break; - } + sanei_genesys_write_ahb(dev, 0x01000000 + 0x200 * i, (size-1) * 2, + gamma.data() + i * size * 2+2); } return status; diff --git a/backend/genesys_low.h b/backend/genesys_low.h index 09ee187ff..61a99363a 100644 --- a/backend/genesys_low.h +++ b/backend/genesys_low.h @@ -1737,8 +1737,8 @@ extern void sanei_genesys_get_status(Genesys_Device* dev, uint8_t* status); extern void sanei_genesys_print_status (uint8_t val); -extern SANE_Status -sanei_genesys_write_ahb(Genesys_Device* dev, uint32_t addr, uint32_t size, uint8_t * data); +extern void sanei_genesys_write_ahb(Genesys_Device* dev, uint32_t addr, uint32_t size, + uint8_t* data); extern void sanei_genesys_init_structs (Genesys_Device * dev);