* backend/genesys.c, backend/genesys_gl646.c,

backend/genesys_gl841.c, backend/genesys_low.h: Add LED exposure
control to gl841_set_lamp_power
merge-requests/1/head
Pierre Willenbrock 2008-02-21 15:49:18 +00:00
rodzic babeea8be2
commit f183b6fe00
5 zmienionych plików z 31 dodań i 7 usunięć

Wyświetl plik

@ -1,3 +1,8 @@
2008-02-21 Pierre Willenbrock <pierre@pirsoft.dnsalias.org>
* backend/genesys.c, backend/genesys_gl646.c,
backend/genesys_gl841.c, backend/genesys_low.h: Add LED exposure
control to gl841_set_lamp_power
2008-02-20 Pierre Willenbrock <pierre@pirsoft.dnsalias.org>
* backend/genesys_gl841.c: Send 32 registers at once instead of 1

Wyświetl plik

@ -2224,7 +2224,7 @@ genesys_dark_shading_calibration (Genesys_Device * dev)
}
/* turn off motor and lamp power */
dev->model->cmd_set->set_lamp_power (dev->calib_reg, SANE_FALSE);
dev->model->cmd_set->set_lamp_power (dev, dev->calib_reg, SANE_FALSE);
dev->model->cmd_set->set_motor_power (dev->calib_reg, SANE_FALSE);
status =
@ -2272,7 +2272,7 @@ genesys_dark_shading_calibration (Genesys_Device * dev)
}
dev->model->cmd_set->set_motor_power (dev->calib_reg, SANE_FALSE);
dev->model->cmd_set->set_lamp_power (dev->calib_reg, SANE_TRUE);
dev->model->cmd_set->set_lamp_power (dev, dev->calib_reg, SANE_TRUE);
status =
dev->model->cmd_set->bulk_write_register (dev, dev->calib_reg,
@ -2451,7 +2451,7 @@ genesys_white_shading_calibration (Genesys_Device * dev)
}
/* turn on motor and lamp power */
dev->model->cmd_set->set_lamp_power (dev->calib_reg, SANE_TRUE);
dev->model->cmd_set->set_lamp_power (dev, dev->calib_reg, SANE_TRUE);
dev->model->cmd_set->set_motor_power (dev->calib_reg, SANE_TRUE);
status =
@ -2593,7 +2593,7 @@ genesys_dark_white_shading_calibration (Genesys_Device * dev)
}
/* turn on motor and lamp power */
dev->model->cmd_set->set_lamp_power (dev->calib_reg, SANE_TRUE);
dev->model->cmd_set->set_lamp_power (dev, dev->calib_reg, SANE_TRUE);
dev->model->cmd_set->set_motor_power (dev->calib_reg, SANE_TRUE);
status =

Wyświetl plik

@ -1322,7 +1322,8 @@ gl646_set_motor_power (Genesys_Register_Set * regs, SANE_Bool set)
}
static void
gl646_set_lamp_power (Genesys_Register_Set * regs, SANE_Bool set)
gl646_set_lamp_power (Genesys_Device * dev,
Genesys_Register_Set * regs, SANE_Bool set)
{
if (set)
{

Wyświetl plik

@ -3061,8 +3061,11 @@ gl841_set_motor_power (Genesys_Register_Set * regs, SANE_Bool set)
}
static void
gl841_set_lamp_power (Genesys_Register_Set * regs, SANE_Bool set)
gl841_set_lamp_power (Genesys_Device * dev,
Genesys_Register_Set * regs, SANE_Bool set)
{
Genesys_Register_Set * r;
int i;
if (set)
{
@ -3070,6 +3073,14 @@ gl841_set_lamp_power (Genesys_Register_Set * regs, SANE_Bool set)
sanei_genesys_read_reg_from_set (regs,
0x03) |
REG03_LAMPPWR);
r = sanei_genesys_get_address (regs, 0x10);
for (i = 0; i < 6; i++, r++) {
if (dev->sensor.regs_0x10_0x1d[i] == 0x00)
r->value = 0x01;/*0x00 will not be accepted*/
else
r->value = dev->sensor.regs_0x10_0x1d[i];
}
}
else
{
@ -3077,6 +3088,11 @@ gl841_set_lamp_power (Genesys_Register_Set * regs, SANE_Bool set)
sanei_genesys_read_reg_from_set (regs,
0x03) &
~REG03_LAMPPWR);
r = sanei_genesys_get_address (regs, 0x10);
for (i = 0; i < 6; i++, r++) {
r->value = 0x01;/* 0x0101 is as off as possible */
}
}
}

Wyświetl plik

@ -302,7 +302,9 @@ typedef struct Genesys_Command_Set
SANE_Status (*save_power) (Genesys_Device * dev, SANE_Bool enable);
void (*set_motor_power) (Genesys_Register_Set * regs, SANE_Bool set);
void (*set_lamp_power) (Genesys_Register_Set * regs, SANE_Bool set);
void (*set_lamp_power) (Genesys_Device * dev,
Genesys_Register_Set * regs,
SANE_Bool set);
SANE_Status (*begin_scan) (Genesys_Device * dev,
Genesys_Register_Set * regs,