|
|
|
@ -265,11 +265,6 @@ struct shinkos6145_correctionparam { |
|
|
|
|
} __attribute__((packed)); /* 16384 bytes */ |
|
|
|
|
|
|
|
|
|
/* Structs for printer */ |
|
|
|
|
struct s6145_cmd_hdr { |
|
|
|
|
uint16_t cmd; |
|
|
|
|
uint16_t len; /* Not including this header */ |
|
|
|
|
} __attribute__((packed)); |
|
|
|
|
|
|
|
|
|
#define S6145_CMD_GETSTATUS 0x0001 |
|
|
|
|
#define S6145_CMD_MEDIAINFO 0x0002 |
|
|
|
|
#define S6145_CMD_ERRORLOG 0x0004 |
|
|
|
@ -337,7 +332,7 @@ static char *cmd_names(uint16_t v) { |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
struct s6145_print_cmd { |
|
|
|
|
struct s6145_cmd_hdr hdr; |
|
|
|
|
struct sinfonia_cmd_hdr hdr; |
|
|
|
|
uint8_t id; |
|
|
|
|
uint16_t count; |
|
|
|
|
uint16_t columns; |
|
|
|
@ -390,13 +385,8 @@ static char *print_methods (uint8_t v) { |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
struct s6145_cancel_cmd { |
|
|
|
|
struct s6145_cmd_hdr hdr; |
|
|
|
|
uint8_t id; |
|
|
|
|
} __attribute__((packed)); |
|
|
|
|
|
|
|
|
|
struct s6145_reset_cmd { |
|
|
|
|
struct s6145_cmd_hdr hdr; |
|
|
|
|
struct sinfonia_cmd_hdr hdr; |
|
|
|
|
uint8_t target; |
|
|
|
|
uint8_t curveid; |
|
|
|
|
} __attribute__((packed)); |
|
|
|
@ -407,7 +397,7 @@ struct s6145_reset_cmd { |
|
|
|
|
#define TONE_CURVE_ID 0x01 |
|
|
|
|
|
|
|
|
|
struct s6145_readtone_cmd { |
|
|
|
|
struct s6145_cmd_hdr hdr; |
|
|
|
|
struct sinfonia_cmd_hdr hdr; |
|
|
|
|
uint8_t target; |
|
|
|
|
uint8_t curveid; |
|
|
|
|
} __attribute__((packed)); |
|
|
|
@ -416,7 +406,7 @@ struct s6145_readtone_cmd { |
|
|
|
|
#define READ_TONE_CURVE_CURR 0x02 |
|
|
|
|
|
|
|
|
|
struct s6145_setparam_cmd { |
|
|
|
|
struct s6145_cmd_hdr hdr; |
|
|
|
|
struct sinfonia_cmd_hdr hdr; |
|
|
|
|
uint8_t target; |
|
|
|
|
uint32_t param; |
|
|
|
|
} __attribute__((packed)); |
|
|
|
@ -450,30 +440,25 @@ struct s6145_setparam_cmd { |
|
|
|
|
#define PARAM_SLEEP_240MIN 0x00000005 |
|
|
|
|
|
|
|
|
|
struct s6145_seteeprom_cmd { |
|
|
|
|
struct s6145_cmd_hdr hdr; |
|
|
|
|
struct sinfonia_cmd_hdr hdr; |
|
|
|
|
uint8_t data[256]; /* Maxlen */ |
|
|
|
|
} __attribute__((packed)); |
|
|
|
|
|
|
|
|
|
struct s6145_errorlog_cmd { |
|
|
|
|
struct s6145_cmd_hdr hdr; |
|
|
|
|
struct sinfonia_cmd_hdr hdr; |
|
|
|
|
uint16_t index; /* 0 is latest */ |
|
|
|
|
} __attribute__((packed)); |
|
|
|
|
|
|
|
|
|
struct s6145_getparam_cmd { |
|
|
|
|
struct s6145_cmd_hdr hdr; |
|
|
|
|
struct sinfonia_cmd_hdr hdr; |
|
|
|
|
uint8_t target; |
|
|
|
|
} __attribute__((packed)); |
|
|
|
|
|
|
|
|
|
struct s6145_getprintidstatus_cmd { |
|
|
|
|
struct s6145_cmd_hdr hdr; |
|
|
|
|
struct sinfonia_cmd_hdr hdr; |
|
|
|
|
uint8_t id; |
|
|
|
|
} __attribute__((packed)); |
|
|
|
|
|
|
|
|
|
struct s6145_fwinfo_cmd { |
|
|
|
|
struct s6145_cmd_hdr hdr; |
|
|
|
|
uint8_t target; |
|
|
|
|
} __attribute__((packed)); |
|
|
|
|
|
|
|
|
|
#define FWINFO_TARGET_MAIN_BOOT 0x01 |
|
|
|
|
#define FWINFO_TARGET_MAIN_APP 0x02 |
|
|
|
|
#define FWINFO_TARGET_PRINT_TABLES 0x03 |
|
|
|
@ -495,7 +480,7 @@ static char *fwinfo_targets (uint8_t v) { |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
struct s6145_update_cmd { |
|
|
|
|
struct s6145_cmd_hdr hdr; |
|
|
|
|
struct sinfonia_cmd_hdr hdr; |
|
|
|
|
uint8_t target; |
|
|
|
|
uint8_t curve_id; |
|
|
|
|
uint8_t reset; // ??
|
|
|
|
@ -503,19 +488,6 @@ struct s6145_update_cmd { |
|
|
|
|
uint32_t size; |
|
|
|
|
} __attribute__((packed)); |
|
|
|
|
|
|
|
|
|
struct s6145_status_hdr { |
|
|
|
|
uint8_t result; |
|
|
|
|
uint8_t error; |
|
|
|
|
uint8_t printer_major; |
|
|
|
|
uint8_t printer_minor; |
|
|
|
|
uint8_t reserved[3]; |
|
|
|
|
uint8_t status; |
|
|
|
|
uint16_t payload_len; |
|
|
|
|
} __attribute__((packed)); |
|
|
|
|
|
|
|
|
|
#define RESULT_SUCCESS 0x01 |
|
|
|
|
#define RESULT_FAIL 0x02 |
|
|
|
|
|
|
|
|
|
static char *error_codes(uint8_t major, uint8_t minor) |
|
|
|
|
{ |
|
|
|
|
switch(major) { |
|
|
|
@ -781,7 +753,7 @@ static char *status_str(uint8_t v) { |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
struct s6145_status_resp { |
|
|
|
|
struct s6145_status_hdr hdr; |
|
|
|
|
struct sinfonia_status_hdr hdr; |
|
|
|
|
uint32_t count_lifetime; |
|
|
|
|
uint32_t count_maint; |
|
|
|
|
uint32_t count_paper; |
|
|
|
@ -808,12 +780,12 @@ struct s6145_status_resp { |
|
|
|
|
} __attribute__((packed)); |
|
|
|
|
|
|
|
|
|
struct s6145_geteeprom_resp { |
|
|
|
|
struct s6145_status_hdr hdr; |
|
|
|
|
struct sinfonia_status_hdr hdr; |
|
|
|
|
uint8_t data[256]; |
|
|
|
|
} __attribute__((packed)); |
|
|
|
|
|
|
|
|
|
struct s6145_readtone_resp { |
|
|
|
|
struct s6145_status_hdr hdr; |
|
|
|
|
struct sinfonia_status_hdr hdr; |
|
|
|
|
uint16_t total_size; |
|
|
|
|
} __attribute__((packed)); |
|
|
|
|
|
|
|
|
@ -920,7 +892,7 @@ static const char *print_ribbons (uint8_t v) { |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
struct s6145_mediainfo_resp { |
|
|
|
|
struct s6145_status_hdr hdr; |
|
|
|
|
struct sinfonia_status_hdr hdr; |
|
|
|
|
uint8_t ribbon; |
|
|
|
|
uint8_t reserved; |
|
|
|
|
uint8_t count; |
|
|
|
@ -928,23 +900,23 @@ struct s6145_mediainfo_resp { |
|
|
|
|
} __attribute__((packed)); |
|
|
|
|
|
|
|
|
|
struct s6145_errorlog_resp { |
|
|
|
|
struct s6145_status_hdr hdr; |
|
|
|
|
struct sinfonia_status_hdr hdr; |
|
|
|
|
uint8_t count; |
|
|
|
|
struct sinfonia_error_item items[10]; /* Not all necessarily used */ |
|
|
|
|
} __attribute__((packed)); |
|
|
|
|
|
|
|
|
|
struct s6145_getparam_resp { |
|
|
|
|
struct s6145_status_hdr hdr; |
|
|
|
|
struct sinfonia_status_hdr hdr; |
|
|
|
|
uint32_t param; |
|
|
|
|
} __attribute__((packed)); |
|
|
|
|
|
|
|
|
|
struct s6145_getserial_resp { |
|
|
|
|
struct s6145_status_hdr hdr; |
|
|
|
|
struct sinfonia_status_hdr hdr; |
|
|
|
|
uint8_t data[8]; |
|
|
|
|
} __attribute__((packed)); |
|
|
|
|
|
|
|
|
|
struct s6145_getprintidstatus_resp { |
|
|
|
|
struct s6145_status_hdr hdr; |
|
|
|
|
struct sinfonia_status_hdr hdr; |
|
|
|
|
uint8_t id; |
|
|
|
|
uint16_t remaining; |
|
|
|
|
uint16_t finished; |
|
|
|
@ -958,25 +930,15 @@ struct s6145_getprintidstatus_resp { |
|
|
|
|
#define STATUS_ERROR 0xFFFF |
|
|
|
|
|
|
|
|
|
struct s6145_getextcounter_resp { |
|
|
|
|
struct s6145_status_hdr hdr; |
|
|
|
|
struct sinfonia_status_hdr hdr; |
|
|
|
|
uint32_t lifetime_distance; /* Inches */ |
|
|
|
|
uint32_t maint_distance; |
|
|
|
|
uint32_t head_distance; |
|
|
|
|
uint8_t reserved[32]; |
|
|
|
|
} __attribute__((packed)); |
|
|
|
|
|
|
|
|
|
struct s6145_fwinfo_resp { |
|
|
|
|
struct s6145_status_hdr hdr; |
|
|
|
|
uint8_t name[8]; |
|
|
|
|
uint8_t type[16]; |
|
|
|
|
uint8_t date[10]; |
|
|
|
|
uint8_t major; |
|
|
|
|
uint8_t minor; |
|
|
|
|
uint16_t checksum; |
|
|
|
|
} __attribute__((packed)); |
|
|
|
|
|
|
|
|
|
struct s6145_imagecorr_resp { |
|
|
|
|
struct s6145_status_hdr hdr; |
|
|
|
|
struct sinfonia_status_hdr hdr; |
|
|
|
|
uint16_t total_size; |
|
|
|
|
} __attribute__((packed)); |
|
|
|
|
|
|
|
|
@ -1026,7 +988,7 @@ static int s6145_do_cmd(struct shinkos6145_ctx *ctx, |
|
|
|
|
int minlen, int *num) |
|
|
|
|
{ |
|
|
|
|
int ret; |
|
|
|
|
struct s6145_status_hdr *resp = (struct s6145_status_hdr *) rdbuf; |
|
|
|
|
struct sinfonia_status_hdr *resp = (struct sinfonia_status_hdr *) rdbuf; |
|
|
|
|
|
|
|
|
|
libusb_device_handle *dev = ctx->dev; |
|
|
|
|
uint8_t endp_up = ctx->endp_up; |
|
|
|
@ -1060,7 +1022,7 @@ static int s6145_do_cmd(struct shinkos6145_ctx *ctx, |
|
|
|
|
|
|
|
|
|
static int get_status(struct shinkos6145_ctx *ctx) |
|
|
|
|
{ |
|
|
|
|
struct s6145_cmd_hdr cmd; |
|
|
|
|
struct sinfonia_cmd_hdr cmd; |
|
|
|
|
struct s6145_status_resp *resp = (struct s6145_status_resp *) rdbuf; |
|
|
|
|
struct s6145_getextcounter_resp *resp2 = (struct s6145_getextcounter_resp *) rdbuf; |
|
|
|
|
int ret, num = 0; |
|
|
|
@ -1088,7 +1050,7 @@ static int get_status(struct shinkos6145_ctx *ctx) |
|
|
|
|
resp->hdr.printer_major, |
|
|
|
|
resp->hdr.printer_minor, error_codes(resp->hdr.printer_major, resp->hdr.printer_minor)); |
|
|
|
|
} |
|
|
|
|
if (le16_to_cpu(resp->hdr.payload_len) != (sizeof(struct s6145_status_resp) - sizeof(struct s6145_status_hdr))) |
|
|
|
|
if (le16_to_cpu(resp->hdr.payload_len) != (sizeof(struct s6145_status_resp) - sizeof(struct sinfonia_status_hdr))) |
|
|
|
|
return -1; |
|
|
|
|
|
|
|
|
|
INFO(" Print Counts:\n"); |
|
|
|
@ -1125,7 +1087,7 @@ static int get_status(struct shinkos6145_ctx *ctx) |
|
|
|
|
ERROR("Failed to execute %s command\n", cmd_names(cmd.cmd)); |
|
|
|
|
return ret; |
|
|
|
|
} |
|
|
|
|
if (le16_to_cpu(resp2->hdr.payload_len) != (sizeof(struct s6145_getextcounter_resp) - sizeof(struct s6145_status_hdr))) |
|
|
|
|
if (le16_to_cpu(resp2->hdr.payload_len) != (sizeof(struct s6145_getextcounter_resp) - sizeof(struct sinfonia_status_hdr))) |
|
|
|
|
return -1; |
|
|
|
|
|
|
|
|
|
INFO("Lifetime Distance: %08u inches\n", le32_to_cpu(resp2->lifetime_distance)); |
|
|
|
@ -1185,8 +1147,8 @@ static int get_status(struct shinkos6145_ctx *ctx) |
|
|
|
|
|
|
|
|
|
static int get_fwinfo(struct shinkos6145_ctx *ctx) |
|
|
|
|
{ |
|
|
|
|
struct s6145_fwinfo_cmd cmd; |
|
|
|
|
struct s6145_fwinfo_resp *resp = (struct s6145_fwinfo_resp *)rdbuf; |
|
|
|
|
struct sinfonia_fwinfo_cmd cmd; |
|
|
|
|
struct sinfonia_fwinfo_resp *resp = (struct sinfonia_fwinfo_resp *)rdbuf; |
|
|
|
|
int num = 0; |
|
|
|
|
int i; |
|
|
|
|
|
|
|
|
@ -1207,7 +1169,7 @@ static int get_fwinfo(struct shinkos6145_ctx *ctx) |
|
|
|
|
continue; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if (le16_to_cpu(resp->hdr.payload_len) != (sizeof(struct s6145_fwinfo_resp) - sizeof(struct s6145_status_hdr))) |
|
|
|
|
if (le16_to_cpu(resp->hdr.payload_len) != (sizeof(struct sinfonia_fwinfo_resp) - sizeof(struct sinfonia_status_hdr))) |
|
|
|
|
continue; |
|
|
|
|
|
|
|
|
|
INFO(" %s\t ver %02x.%02x\n", fwinfo_targets(i), |
|
|
|
@ -1225,7 +1187,7 @@ static int get_fwinfo(struct shinkos6145_ctx *ctx) |
|
|
|
|
|
|
|
|
|
static int get_errorlog(struct shinkos6145_ctx *ctx) |
|
|
|
|
{ |
|
|
|
|
struct s6145_cmd_hdr cmd; |
|
|
|
|
struct sinfonia_cmd_hdr cmd; |
|
|
|
|
struct s6145_errorlog_resp *resp = (struct s6145_errorlog_resp *) rdbuf; |
|
|
|
|
int ret, num = 0; |
|
|
|
|
int i; |
|
|
|
@ -1241,7 +1203,7 @@ static int get_errorlog(struct shinkos6145_ctx *ctx) |
|
|
|
|
return ret; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if (le16_to_cpu(resp->hdr.payload_len) != (sizeof(struct s6145_errorlog_resp) - sizeof(struct s6145_status_hdr))) |
|
|
|
|
if (le16_to_cpu(resp->hdr.payload_len) != (sizeof(struct s6145_errorlog_resp) - sizeof(struct sinfonia_status_hdr))) |
|
|
|
|
return -2; |
|
|
|
|
|
|
|
|
|
INFO("Stored Error Events: %u entries:\n", resp->count); |
|
|
|
@ -1271,8 +1233,8 @@ static void dump_mediainfo(struct s6145_mediainfo_resp *resp) |
|
|
|
|
|
|
|
|
|
static int cancel_job(struct shinkos6145_ctx *ctx, char *str) |
|
|
|
|
{ |
|
|
|
|
struct s6145_cancel_cmd cmd; |
|
|
|
|
struct s6145_status_hdr *resp = (struct s6145_status_hdr *) rdbuf; |
|
|
|
|
struct sinfonia_cancel_cmd cmd; |
|
|
|
|
struct sinfonia_status_hdr *resp = (struct sinfonia_status_hdr *) rdbuf; |
|
|
|
|
int ret, num = 0; |
|
|
|
|
|
|
|
|
|
if (!str) |
|
|
|
@ -1296,8 +1258,8 @@ static int cancel_job(struct shinkos6145_ctx *ctx, char *str) |
|
|
|
|
|
|
|
|
|
static int flash_led(struct shinkos6145_ctx *ctx) |
|
|
|
|
{ |
|
|
|
|
struct s6145_cmd_hdr cmd; |
|
|
|
|
struct s6145_status_hdr *resp = (struct s6145_status_hdr *) rdbuf; |
|
|
|
|
struct sinfonia_cmd_hdr cmd; |
|
|
|
|
struct sinfonia_status_hdr *resp = (struct sinfonia_status_hdr *) rdbuf; |
|
|
|
|
int ret, num = 0; |
|
|
|
|
|
|
|
|
|
cmd.cmd = cpu_to_le16(S6145_CMD_FLASHLED); |
|
|
|
@ -1318,7 +1280,7 @@ static int flash_led(struct shinkos6145_ctx *ctx) |
|
|
|
|
static int set_param(struct shinkos6145_ctx *ctx, int target, uint32_t param) |
|
|
|
|
{ |
|
|
|
|
struct s6145_setparam_cmd cmd; |
|
|
|
|
struct s6145_status_hdr *resp = (struct s6145_status_hdr *) rdbuf; |
|
|
|
|
struct sinfonia_status_hdr *resp = (struct sinfonia_status_hdr *) rdbuf; |
|
|
|
|
int ret, num = 0; |
|
|
|
|
|
|
|
|
|
/* Set up command */ |
|
|
|
@ -1365,7 +1327,7 @@ static int get_param(struct shinkos6145_ctx *ctx, int target, uint32_t *param) |
|
|
|
|
static int reset_curve(struct shinkos6145_ctx *ctx, int target) |
|
|
|
|
{ |
|
|
|
|
struct s6145_reset_cmd cmd; |
|
|
|
|
struct s6145_status_hdr *resp = (struct s6145_status_hdr *) rdbuf; |
|
|
|
|
struct sinfonia_status_hdr *resp = (struct sinfonia_status_hdr *) rdbuf; |
|
|
|
|
int ret, num = 0; |
|
|
|
|
|
|
|
|
|
cmd.target = target; |
|
|
|
@ -1521,7 +1483,7 @@ done: |
|
|
|
|
static int set_tonecurve(struct shinkos6145_ctx *ctx, int target, char *fname) |
|
|
|
|
{ |
|
|
|
|
struct s6145_update_cmd cmd; |
|
|
|
|
struct s6145_status_hdr *resp = (struct s6145_status_hdr *) rdbuf; |
|
|
|
|
struct sinfonia_status_hdr *resp = (struct sinfonia_status_hdr *) rdbuf; |
|
|
|
|
int ret, num = 0; |
|
|
|
|
|
|
|
|
|
INFO("Set %s Tone Curve from '%s'\n", sinfonia_update_targets(target), fname); |
|
|
|
@ -1579,7 +1541,7 @@ done: |
|
|
|
|
|
|
|
|
|
static int shinkos6145_get_imagecorr(struct shinkos6145_ctx *ctx) |
|
|
|
|
{ |
|
|
|
|
struct s6145_cmd_hdr cmd; |
|
|
|
|
struct sinfonia_cmd_hdr cmd; |
|
|
|
|
struct s6145_imagecorr_resp *resp = (struct s6145_imagecorr_resp *) rdbuf; |
|
|
|
|
|
|
|
|
|
size_t total = 0; |
|
|
|
@ -1636,7 +1598,7 @@ done: |
|
|
|
|
|
|
|
|
|
static int shinkos6145_get_eeprom(struct shinkos6145_ctx *ctx) |
|
|
|
|
{ |
|
|
|
|
struct s6145_cmd_hdr cmd; |
|
|
|
|
struct sinfonia_cmd_hdr cmd; |
|
|
|
|
struct s6145_geteeprom_resp *resp = (struct s6145_geteeprom_resp *) rdbuf; |
|
|
|
|
|
|
|
|
|
int ret, num; |
|
|
|
@ -1824,7 +1786,7 @@ static int shinkos6145_attach(void *vctx, struct libusb_device_handle *dev, int |
|
|
|
|
if (test_mode < TEST_MODE_NOATTACH) { |
|
|
|
|
/* Query Media */ |
|
|
|
|
struct s6145_mediainfo_resp *resp = (struct s6145_mediainfo_resp *) rdbuf; |
|
|
|
|
struct s6145_cmd_hdr cmd; |
|
|
|
|
struct sinfonia_cmd_hdr cmd; |
|
|
|
|
int num; |
|
|
|
|
|
|
|
|
|
if (s6145_do_cmd(ctx, |
|
|
|
@ -2055,7 +2017,7 @@ static int shinkos6145_main_loop(void *vctx, const void *vjob) { |
|
|
|
|
|
|
|
|
|
int i, last_state = -1, state = S_IDLE; |
|
|
|
|
|
|
|
|
|
struct s6145_cmd_hdr *cmd = (struct s6145_cmd_hdr *) cmdbuf; |
|
|
|
|
struct sinfonia_cmd_hdr *cmd = (struct sinfonia_cmd_hdr *) cmdbuf; |
|
|
|
|
struct s6145_print_cmd *print = (struct s6145_print_cmd *) cmdbuf; |
|
|
|
|
struct s6145_status_resp *sts = (struct s6145_status_resp *) rdbuf; |
|
|
|
|
struct s6145_mediainfo_resp *media = (struct s6145_mediainfo_resp *) rdbuf; |
|
|
|
@ -2080,7 +2042,7 @@ static int shinkos6145_main_loop(void *vctx, const void *vjob) { |
|
|
|
|
return CUPS_BACKEND_FAILED; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if (le16_to_cpu(media->hdr.payload_len) != (sizeof(struct s6145_mediainfo_resp) - sizeof(struct s6145_status_hdr))) |
|
|
|
|
if (le16_to_cpu(media->hdr.payload_len) != (sizeof(struct s6145_mediainfo_resp) - sizeof(struct sinfonia_status_hdr))) |
|
|
|
|
return CUPS_BACKEND_FAILED; |
|
|
|
|
|
|
|
|
|
/* Validate print sizes */ |
|
|
|
@ -2119,7 +2081,7 @@ top: |
|
|
|
|
|
|
|
|
|
if ((ret = s6145_do_cmd(ctx, |
|
|
|
|
cmdbuf, sizeof(*cmd), |
|
|
|
|
sizeof(struct s6145_status_hdr), |
|
|
|
|
sizeof(struct sinfonia_status_hdr), |
|
|
|
|
&num)) < 0) { |
|
|
|
|
ERROR("Failed to execute %s command\n", cmd_names(cmd->cmd)); |
|
|
|
|
return CUPS_BACKEND_FAILED; |
|
|
|
@ -2253,7 +2215,7 @@ top: |
|
|
|
|
|
|
|
|
|
if ((ret = s6145_do_cmd(ctx, |
|
|
|
|
cmdbuf, sizeof(*print), |
|
|
|
|
sizeof(struct s6145_status_hdr), |
|
|
|
|
sizeof(struct sinfonia_status_hdr), |
|
|
|
|
&num)) < 0) { |
|
|
|
|
ERROR("Failed to execute %s command\n", cmd_names(print->hdr.cmd)); |
|
|
|
|
return ret; |
|
|
|
@ -2314,7 +2276,7 @@ printer_error: |
|
|
|
|
|
|
|
|
|
static int shinkos6145_query_serno(struct libusb_device_handle *dev, uint8_t endp_up, uint8_t endp_down, char *buf, int buf_len) |
|
|
|
|
{ |
|
|
|
|
struct s6145_cmd_hdr cmd; |
|
|
|
|
struct sinfonia_cmd_hdr cmd; |
|
|
|
|
struct s6145_getserial_resp *resp = (struct s6145_getserial_resp*) rdbuf; |
|
|
|
|
int ret, num = 0; |
|
|
|
|
|
|
|
|
@ -2349,7 +2311,7 @@ static int shinkos6145_query_serno(struct libusb_device_handle *dev, uint8_t end |
|
|
|
|
static int shinkos6145_query_markers(void *vctx, struct marker **markers, int *count) |
|
|
|
|
{ |
|
|
|
|
struct shinkos6145_ctx *ctx = vctx; |
|
|
|
|
struct s6145_cmd_hdr cmd; |
|
|
|
|
struct sinfonia_cmd_hdr cmd; |
|
|
|
|
struct s6145_status_resp *sts = (struct s6145_status_resp *) rdbuf; |
|
|
|
|
int num; |
|
|
|
|
|
|
|
|
|