add putative support for LiDE 120

merge-requests/1/head
Stphane Voltz 2015-03-17 22:20:28 +01:00
rodzic 1e6a3f4148
commit 128c8931b3
9 zmienionych plików z 104 dodań i 7 usunięć

Wyświetl plik

@ -1,4 +1,10 @@
<<<<<<< HEAD
2015-03-17 Stéphane Voltz <stef.dev@free.fr>
* backend/genesys.c, backend/genesys.conf.in,
backend/genesys_devices.c, backend/genesys_gl124.c,
backend/genesys_gl124.h, backend/genesys_low.h,
doc/descriptions/genesys.desc, doc/sane-genesys.man: add support for
Canon LiDE 120
2015-03-14 René Rebe <rene@exactcode.de>
* backend/avision.h backend/avision.c:
fixed 32-bit build regression due new feature_type and
@ -14,7 +20,6 @@
fixed multiple regressions (range initilaizer, clobbering
paper-length window bits, ...) introduced over the past years, added
support for newer ASIC gamma table size, added AV220D2+ ID
2015-03-04 Stéphane Voltz <stef.dev@free.fr>
* doc/descriptions/genesys.desc: mark LiDE 120 as unsupported.

Wyświetl plik

@ -3044,12 +3044,14 @@ genesys_send_shading_coefficient (Genesys_Device * dev)
case CIS_CANONLIDE100:
case CIS_CANONLIDE200:
case CIS_CANONLIDE110:
case CIS_CANONLIDE120:
case CIS_CANONLIDE210:
case CIS_CANONLIDE220:
/* TODO store this in a data struct so we avoid
* growing this switch */
if(dev->model->ccd_type!=CIS_CANONLIDE110
&& dev->model->ccd_type!=CIS_CANONLIDE210
&& dev->model->ccd_type!=CIS_CANONLIDE120
&& dev->model->ccd_type!=CIS_CANONLIDE220)
target_code=0xdc00;
else

Wyświetl plik

@ -60,6 +60,9 @@ usb 0x04a9 0x1907
# Canon LiDE 210
usb 0x04a9 0x190a
# Canon LiDE 120
usb 0x04a9 0x190e
# Canon LiDE 220
usb 0x04a9 0x190f

Wyświetl plik

@ -660,6 +660,30 @@ static Genesys_Sensor Sensor[] = {
{2.1, 2.1, 2.1},
{NULL, NULL, NULL}}
,
/* CANONLIDE120 */
{CIS_CANONLIDE120,
2400, /* optical resolution */
87, /* black pixels */
16, /* dummy pixels 16 */
303, /* 303 */
5168*4, /* total pixels */
210,
200,
{0x00, 0x00, 0x00, 0x00},
/* reg 0x10 - 0x15 : EXPR, EXPG and EXPB */
{0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* reg 0x16 - 0x1d */
0x10, 0x04, 0x00, 0x01, 0x30, 0x00, 0x02, 0x01 },
/* reg 0x52 - 0x5e */
{
0x00, 0x02, 0x04, 0x06, 0x04, 0x04, 0x04, 0x04,
0x1a, 0x00, 0xc0, 0x00, 0x00
}
,
{2.1, 2.1, 2.1},
{NULL, NULL, NULL}}
,
/* CANON LIDE 210 sensor */
{CIS_CANONLIDE210,
2400, /* optical resolution */
@ -1877,6 +1901,59 @@ static Genesys_Model canon_lide_110_model = {
400
};
static Genesys_Model canon_lide_120_model = {
"canon-lide-120", /* Name */
"Canon", /* Device vendor string */
"LiDE 120", /* Device model name */
GENESYS_GL124,
NULL,
{4800, 2400, 1200, 600, 300, 150, 100, 75, 0}, /* possible x-resolutions */
{4800, 2400, 1200, 600, 300, 150, 100, 75, 0}, /* possible y-resolutions */
{16, 8, 0}, /* possible depths in gray mode */
{16, 8, 0}, /* possible depths in color mode */
SANE_FIX (2.2), /* Start of scan area in mm (x) */
SANE_FIX (9.0), /* Start of scan area in mm (y) */
SANE_FIX (216.70), /* Size of scan area in mm (x) */
SANE_FIX (300.0), /* Size of scan area in mm (y) */
SANE_FIX (1.0), /* Start of white strip in mm (y) */
SANE_FIX (0.0), /* Start of black mark in mm (x) */
SANE_FIX (0.0), /* Start of scan area in TA mode in mm (x) */
SANE_FIX (0.0), /* Start of scan area in TA mode in mm (y) */
SANE_FIX (100.0), /* Size of scan area in TA mode in mm (x) */
SANE_FIX (100.0), /* Size of scan area in TA mode in mm (y) */
SANE_FIX (0.0), /* Start of white strip in TA mode in mm (y) */
SANE_FIX (0.0), /* Size of scan area after paper sensor stops
sensing document in mm */
SANE_FIX (0.0), /* Amount of feeding needed to eject document
after finishing scanning in mm */
0, 0, 0, /* RGB CCD Line-distance correction in pixel */
COLOR_ORDER_RGB, /* Order of the CCD/CIS colors */
SANE_TRUE, /* Is this a CIS scanner? */
SANE_FALSE, /* Is this a sheetfed scanner? */
CIS_CANONLIDE120,
DAC_CANONLIDE110,
GPO_CANONLIDE110,
MOTOR_CANONLIDE110,
GENESYS_FLAG_SKIP_WARMUP
| GENESYS_FLAG_OFFSET_CALIBRATION
| GENESYS_FLAG_DARK_CALIBRATION
| GENESYS_FLAG_HALF_CCD_MODE
| GENESYS_FLAG_SHADING_REPARK
| GENESYS_FLAG_CUSTOM_GAMMA,
GENESYS_HAS_SCAN_SW | GENESYS_HAS_COPY_SW | GENESYS_HAS_EMAIL_SW | GENESYS_HAS_FILE_SW,
50,
400
};
static Genesys_Model canon_lide_210_model = {
"canon-lide-210", /* Name */
@ -3583,6 +3660,7 @@ static Genesys_USB_Device_Entry genesys_usb_device_list[] = {
{0x03f0, 0x4705, &hpn6310_model},
/* GL124 devices */
{0x04a9, 0x1909, &canon_lide_110_model},
{0x04a9, 0x190e, &canon_lide_120_model},
{0x04a9, 0x190a, &canon_lide_210_model},
{0x04a9, 0x190f, &canon_lide_220_model},
{0, 0, NULL}

Wyświetl plik

@ -3528,7 +3528,8 @@ gl124_init_gpio (Genesys_Device * dev)
DBGSTART;
/* per model GPIO layout */
if (strcmp (dev->model->name, "canon-lide-110") == 0)
if ((strcmp (dev->model->name, "canon-lide-110") == 0)
||(strcmp (dev->model->name, "canon-lide-120") == 0))
{
idx = 0;
}
@ -3561,7 +3562,8 @@ gl124_init_memory_layout (Genesys_Device * dev)
DBGSTART;
/* point to per model memory layout */
if (strcmp (dev->model->name, "canon-lide-110") == 0)
if ((strcmp (dev->model->name, "canon-lide-110") == 0)
||(strcmp (dev->model->name, "canon-lide-120") == 0))
{
idx = 0;
}

Wyświetl plik

@ -620,13 +620,19 @@ static Sensor_Profile sensors[]={
{CIS_CANONLIDE110, 1200, 0, 10528, 0x1e, 0x9f, 0x55, 5168, 163, 101, 388, 574, 393, order_01 , 0x00, 0x08, 0x20, 0x22},
{CIS_CANONLIDE110, 2400, 0, 20864, 0x1e, 0x9f, 0x55, 5168, 163, 4679, 6839, 8401, 6859, order_0213, 0x00, 0x06, 0x20, 0x24},
/* LiDE 120 */
{CIS_CANONLIDE120, 600, 1, 2768, 0x0f, 0x9f, 0x55, 2584, 154, 101, 388, 574, 393, NULL , 0x00, 0x0c, 0x20, 0x21},
{CIS_CANONLIDE120, 600, 0, 5360, 0x0f, 0x9f, 0x55, 5168, 163, 101, 388, 574, 393, NULL , 0x00, 0x0a, 0x20, 0x21},
{CIS_CANONLIDE120, 1200, 0, 10528, 0x0f, 0x9f, 0x55, 5168, 163, 101, 388, 574, 393, order_01 , 0x00, 0x08, 0x20, 0x22},
{CIS_CANONLIDE120, 2400, 0, 20864, 0x0f, 0x9f, 0x55, 5168, 163, 4679, 6839, 8401, 6859, order_0213, 0x00, 0x06, 0x20, 0x24},
/* LiDE 210 */
{CIS_CANONLIDE210, 600, 1, 2768, 0x1e, 0x9f, 0x55, 2584, 154, 101, 388, 574, 393, NULL , 0x00, 0x0c, 0x20, 0x21},
{CIS_CANONLIDE210, 600, 0, 5360, 0x1e, 0x9f, 0x55, 5168, 163, 101, 388, 574, 393, NULL , 0x00, 0x0a, 0x20, 0x21},
{CIS_CANONLIDE210, 1200, 0, 10528, 0x1e, 0x9f, 0x55, 5168, 163, 101, 388, 574, 393, order_01 , 0x00, 0x08, 0x20, 0x22},
{CIS_CANONLIDE210, 2400, 0, 20864, 0x1e, 0x9f, 0x55, 5168, 163, 4679, 6839, 8401, 6859, order_0213, 0x00, 0x06, 0x20, 0x24},
/* LiDE 210 */
/* LiDE 220 */
{CIS_CANONLIDE220, 600, 1, 2768, 0x0f, 0x9f, 0x55, 2584, 154, 101, 388, 574, 393, NULL , 0x00, 0x0c, 0x20, 0x21},
{CIS_CANONLIDE220, 600, 0, 5360, 0x0f, 0x9f, 0x55, 5168, 163, 101, 388, 574, 393, NULL , 0x00, 0x0a, 0x20, 0x21},
{CIS_CANONLIDE220, 1200, 0, 10528, 0x0f, 0x9f, 0x55, 5168, 163, 101, 388, 574, 393, order_01 , 0x00, 0x08, 0x20, 0x22},

Wyświetl plik

@ -383,6 +383,7 @@ Genesys_Color_Order;
#define CIS_CANONLIDE210 27
#define CIS_CANONLIDE80 28
#define CIS_CANONLIDE220 29
#define CIS_CANONLIDE120 30
#define GPO_UMAX 0
#define GPO_ST12 1

Wyświetl plik

@ -148,7 +148,7 @@
:model "CanoScan LiDE 120"
:interface "USB"
:usbid "0x04a9" "0x190e"
:status :unsupported
:status :untested
:comment "GL124+ based, resolution from 75 to 2400 dpi"
:model "CanoScan LiDE 200"

Wyświetl plik

@ -10,7 +10,7 @@ access to USB flatbed scanners based on the Genesys GL646, GL841, GL843, GL847 a
At present, the following scanners are known to work with this backend:
.PP
.RS
Canon LiDE 35/40/50/60/100/110/200/210/220/700
Canon LiDE 35/40/50/60/100/110/120/200/210/220/700
.br
Hewlett-Packard HP2300C/HP2400/HP3670/HP3690/G4010/G4050
.br