summaryrefslogtreecommitdiff
path: root/backend/epson2-ops.c
diff options
context:
space:
mode:
Diffstat (limited to 'backend/epson2-ops.c')
-rw-r--r--backend/epson2-ops.c21
1 files changed, 18 insertions, 3 deletions
diff --git a/backend/epson2-ops.c b/backend/epson2-ops.c
index 5d8c84d..eac01b0 100644
--- a/backend/epson2-ops.c
+++ b/backend/epson2-ops.c
@@ -240,6 +240,21 @@ e2_dev_post_init(struct Epson_Device *dev)
e2_add_resolution(dev, dev->optical_res);
}
+ /* add missing resolutions for known scanners */
+
+ if (e2_dev_model(dev, "GT-X800") || e2_dev_model(dev, "GT-X700")) {
+
+ DBG(1, "known scanner, integrating resolution list\n");
+ e2_add_resolution(dev, 4800);
+ e2_add_resolution(dev, 6400);
+ e2_add_resolution(dev, 9600);
+ e2_add_resolution(dev, 12800);
+
+ last = dev->res_list[dev->res_list_size - 1];
+ }
+
+ /* guess for the others */
+
if (dev->dpi_range.max > last && dev->dpi_range.max != dev->optical_res) {
int val = last + last;
@@ -581,7 +596,7 @@ e2_discover_capabilities(Epson_Scanner *s)
/*
* Extended status flag request (ESC f).
- * this also requests the scanner device name from the the scanner.
+ * this also requests the scanner device name from the scanner.
* It seems unsupported on the network transport (CX11NF/LP-A500).
*/
@@ -720,7 +735,7 @@ e2_discover_capabilities(Epson_Scanner *s)
}
/* TPU2 */
- if (e2_model(s, "GT-X800") || e2_model(s, "GT-X900")) {
+ if (e2_model(s, "GT-X800") || e2_model(s, "GT-X900") || e2_model(s, "GT-X980")) {
if (le32atoh(&buf[68]) > 0 ) {
e2_set_tpu2_area(s,
le32atoh(&buf[68]),
@@ -1272,7 +1287,7 @@ e2_setup_block_mode(Epson_Scanner * s)
DBG(1, "max req size: %d, line count: %d\n", maxreq, s->lcount);
/* XXX investigate this */
- if (s->lcount < 3 && (e2_model(s, "GT-X800") || e2_model(s, "GT-X900"))) {
+ if (s->lcount < 3 && (e2_model(s, "GT-X800") || e2_model(s, "GT-X900") || e2_model(s, "GT-X980"))) {
s->lcount = 21;
DBG(17,
"%s: set lcount = %i bigger than sanei_scsi_max_request_size\n",