kodak8810: Bugfixes:
* Try to support multicut on EK8810 * Handle INVALID_PARAMS error when submitting job
This commit is contained in:
parent
cf4b9b0023
commit
1b90a94f8b
|
@ -1002,7 +1002,6 @@ static int shinkos6245_main_loop(void *vctx, const void *vjob) {
|
|||
uint8_t cmdbuf[CMDBUF_LEN];
|
||||
|
||||
int last_state = -1, state = S_IDLE;
|
||||
uint8_t mcut;
|
||||
int copies;
|
||||
|
||||
struct sinfonia_cmd_hdr *cmd = (struct sinfonia_cmd_hdr *) cmdbuf;;
|
||||
|
@ -1025,13 +1024,14 @@ static int shinkos6245_main_loop(void *vctx, const void *vjob) {
|
|||
case CODE_8x4_2:
|
||||
case CODE_8x5_2:
|
||||
case CODE_8x6_2:
|
||||
mcut = PRINT_METHOD_COMBO_2;
|
||||
job->jp.method = PRINT_METHOD_COMBO_2;
|
||||
break;
|
||||
case CODE_8x4_3:
|
||||
mcut = PRINT_METHOD_COMBO_3;
|
||||
job->jp.method = PRINT_METHOD_COMBO_3;
|
||||
break;
|
||||
default:
|
||||
mcut = PRINT_METHOD_STD;
|
||||
job->jp.method = PRINT_METHOD_STD;
|
||||
break;
|
||||
}
|
||||
// XXX what about mcut |= PRINT_METHOD_DISABLE_ERR;
|
||||
|
||||
|
@ -1163,7 +1163,8 @@ top:
|
|||
print->columns = print->columns2 = cpu_to_le16(job->jp.columns);
|
||||
print->rows = print->rows2 = cpu_to_le16(job->jp.rows);
|
||||
print->mode = job->jp.oc_mode;
|
||||
print->method = mcut;
|
||||
print->method = job->jp.method;
|
||||
print->reserved2 = job->jp.media;
|
||||
|
||||
if ((ret = sinfonia_docmd(&ctx->dev,
|
||||
cmdbuf, sizeof(*print),
|
||||
|
@ -1179,7 +1180,7 @@ top:
|
|||
} else if ((resp.status & 0xf0) == 0x30 || sts.hdr.status == ERROR_BUFFER_FULL) {
|
||||
INFO("Printer busy (%s), retrying\n", sinfonia_status_str(sts.hdr.status));
|
||||
break;
|
||||
} else if (resp.status != ERROR_NONE)
|
||||
} else if (resp.status != ERROR_NONE || resp.error == ERROR_INVALID_PARAM)
|
||||
goto printer_error;
|
||||
}
|
||||
|
||||
|
@ -1298,7 +1299,7 @@ static const char *shinkos6245_prefixes[] = {
|
|||
|
||||
struct dyesub_backend shinkos6245_backend = {
|
||||
.name = "Sinfonia CHC-S6245 / Kodak 8810",
|
||||
.version = "0.23" " (lib " LIBSINFONIA_VER ")",
|
||||
.version = "0.24" " (lib " LIBSINFONIA_VER ")",
|
||||
.uri_prefixes = shinkos6245_prefixes,
|
||||
.cmdline_usage = shinkos6245_cmdline,
|
||||
.cmdline_arg = shinkos6245_cmdline_arg,
|
||||
|
|
|
@ -421,6 +421,9 @@ const char *sinfonia_status_str(uint8_t v);
|
|||
#define SINFONIA_CMD_BUTTON 0x4006 // 2145 only
|
||||
#define SINFONIA_CMD_SETPARAM 0x4007
|
||||
|
||||
#define SINFONIA_CMD_UNKNOWN 0x4008 // 8810 only, panorama status?
|
||||
#define SINFONIA_CMD_UNKNOWN2 0x400C // 8810 only, panorama setup?
|
||||
|
||||
#define SINFONIA_CMD_GETUNIQUE 0x8003 // 2145 only
|
||||
|
||||
#define SINFONIA_CMD_GETCORR 0x400D
|
||||
|
|
|
@ -172,6 +172,8 @@ kodak-8810,0x040a,0x404d,0x11,PageSize=c8x10
|
|||
kodak-8810,0x040a,0x404d,0x12,PageSize=A4
|
||||
kodak-8810,0x040a,0x404d,0x12,PageSize=w576h864
|
||||
kodak-8810,0x040a,0x404d,0x12,PageSize=w576h576
|
||||
kodak-8810,0x040a,0x404d,0x12,PageSize=w360h576
|
||||
kodak-8810,0x040a,0x404d,0x12,PageSize=w432h576
|
||||
kodak-8810,0x040a,0x404d,0x11,PageSize=w288h576;StpLamination=Glossy
|
||||
kodak-8810,0x040a,0x404d,0x11,PageSize=w288h576;StpLamination=Satin
|
||||
#
|
||||
|
|
|
Loading…
Reference in New Issue