epsonds: code cleanup, fix initial hang

merge-requests/1/head
Alessandro Zummo 2015-04-04 00:49:22 +02:00
rodzic 9d196e8889
commit c3545da14d
5 zmienionych plików z 7 dodań i 16 usunięć

Wyświetl plik

@ -226,6 +226,8 @@ static SANE_Status esci2_cmd_simple(epsonds_scanner* s, char *cmd, SANE_Status (
SANE_Status esci2_fin(epsonds_scanner *s)
{
DBG(5, "%s\n", __func__);
SANE_Status status = esci2_cmd_simple(s, "FIN x0000000", NULL);
s->locked = 0;
return status;

Wyświetl plik

@ -157,21 +157,15 @@ SANE_Status eds_fsx(epsonds_scanner *s)
SANE_Status eds_lock(epsonds_scanner *s)
{
int tries = 3;
SANE_Status status;
DBG(5, "%s\n", __func__);
if (s->hw->connection == SANE_EPSONDS_USB) {
sanei_usb_set_timeout(USB_SHORT_TIMEOUT);
}
SANE_Status status = eds_fsx(s);
if (status != SANE_STATUS_GOOD) {
do {
sleep(1);
status = eds_fsx(s);
} while (--tries && status != SANE_STATUS_GOOD);
}
status = eds_fsx(s);
if (s->hw->connection == SANE_EPSONDS_USB) {
sanei_usb_set_timeout(USB_TIMEOUT);

Wyświetl plik

@ -15,7 +15,7 @@
#define epsonds_io_h
#define USB_TIMEOUT (6 * 1000)
#define USB_SHORT_TIMEOUT (1 * 500)
#define USB_SHORT_TIMEOUT (1 * 800)
size_t eds_send(epsonds_scanner *s, void *buf, size_t length, SANE_Status *status);
size_t eds_recv(epsonds_scanner *s, void *buf, size_t length, SANE_Status *status);

Wyświetl plik

@ -167,9 +167,6 @@ open_scanner(epsonds_scanner *s)
if (s->hw->connection == SANE_EPSONDS_USB) {
status = sanei_usb_open(s->hw->sane.name, &s->fd);
if (status == SANE_STATUS_GOOD)
sanei_usb_clear_halt(s->fd);
sanei_usb_set_timeout(USB_TIMEOUT);
} else {

Wyświetl plik

@ -153,8 +153,6 @@ typedef struct ring_buffer
} ring_buffer;
// typedef struct epsonds_scanner epsonds_scanner;
/* an instance of a scanner */
struct epsonds_scanner