From 8dd1ed24542720640ace964b214be7d7a4b68288 Mon Sep 17 00:00:00 2001 From: Kano Date: Sun, 31 Mar 2013 21:58:48 +1100 Subject: [PATCH] usbutils extra message requirements --- usbutils.c | 29 +++++++++++++++++++++++++++++ usbutils.h | 7 +++++++ 2 files changed, 36 insertions(+) diff --git a/usbutils.c b/usbutils.c index 13941477..69bd72ec 100644 --- a/usbutils.c +++ b/usbutils.c @@ -195,6 +195,8 @@ extern struct device_drv avalon_drv; #define STRBUFLEN 256 static const char *BLANK = ""; +static const char *space = " "; +static const char *nodatareturned = "no data returned "; // For device limits by driver static struct driver_count { @@ -286,6 +288,12 @@ static const char *C_PURGETX_S = "PurgeTx"; static const char *C_FLASHREPLY_S = "FlashReply"; static const char *C_REQUESTDETAILS_S = "RequestDetails"; static const char *C_GETDETAILS_S = "GetDetails"; +static const char *C_REQUESTRESULTS_S = "RequestResults"; +static const char *C_GETRESULTS_S = "GetResults"; +static const char *C_REQUESTQUEJOB_S = "RequestQueJob"; +static const char *C_REQUESTQUEJOBSTATUS_S = "RequestQueJobStatus"; +static const char *C_QUEJOB_S = "QueJob"; +static const char *C_QUEJOBSTATUS_S = "QueJobStatus"; #ifdef EOL #undef EOL @@ -745,6 +753,12 @@ static void cgusb_check_init() usb_commands[C_FLASHREPLY] = C_FLASHREPLY_S; usb_commands[C_REQUESTDETAILS] = C_REQUESTDETAILS_S; usb_commands[C_GETDETAILS] = C_GETDETAILS_S; + usb_commands[C_REQUESTRESULTS] = C_REQUESTRESULTS_S; + usb_commands[C_GETRESULTS] = C_GETRESULTS_S; + usb_commands[C_REQUESTQUEJOB] = C_REQUESTQUEJOB_S; + usb_commands[C_REQUESTQUEJOBSTATUS] = C_REQUESTQUEJOBSTATUS_S; + usb_commands[C_QUEJOB] = C_QUEJOB_S; + usb_commands[C_QUEJOBSTATUS] = C_QUEJOBSTATUS_S; stats_initialised = true; } @@ -759,6 +773,21 @@ const char *usb_cmdname(enum usb_cmds cmd) return usb_commands[cmd]; } +void usb_applog(struct cgpu_info *cgpu, enum usb_cmds cmd, char *msg, int amount, int err) +{ + if (msg && !*msg) + msg = NULL; + + if (!msg && amount == 0 && err == LIBUSB_SUCCESS) + msg = (char *)nodatareturned; + + applog(LOG_ERR, "%s%i: %s failed%s%s (err=%d amt%d)", + cgpu->drv->name, cgpu->device_id, + usb_cmdname(cmd), + msg ? space : BLANK, msg ? msg : BLANK, + err, amount); +} + #ifndef WIN32 #include #include diff --git a/usbutils.h b/usbutils.h index 7cacc43a..8e34d817 100644 --- a/usbutils.h +++ b/usbutils.h @@ -125,6 +125,12 @@ enum usb_cmds { C_FLASHREPLY, C_REQUESTDETAILS, C_GETDETAILS, + C_REQUESTRESULTS, + C_GETRESULTS, + C_REQUESTQUEJOB, + C_REQUESTQUEJOBSTATUS, + C_QUEJOB, + C_QUEJOBSTATUS, C_MAX }; @@ -133,6 +139,7 @@ struct cgpu_info; void usb_all(int level); const char *usb_cmdname(enum usb_cmds cmd); +void usb_applog(struct cgpu_info *bflsc, enum usb_cmds cmd, char *msg, int amount, int err); void usb_uninit(struct cgpu_info *cgpu); bool usb_init(struct cgpu_info *cgpu, struct libusb_device *dev, struct usb_find_devices *found); void usb_detect(struct device_drv *drv, bool (*device_detect)(struct libusb_device *, struct usb_find_devices *));