kopia lustrzana https://gitlab.com/sane-project/backends
genesys: Return errors as exceptions from *write_ahb()
rodzic
693d42c025
commit
32a2eeaa5f
|
@ -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;
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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);
|
||||
|
||||
|
|
Ładowanie…
Reference in New Issue