X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=hardware%2Fcommon%2Fusb.c;h=bac420b31c31c758594af37ddf1aca78393f26b4;hb=1b943b6d8b81be8b91216525a56007c5bdef43df;hp=584a09dc383f4a0014331a82a648effa19de1737;hpb=9116262931773877e4dd279336ebb2be8f182c05;p=libsigrok.git diff --git a/hardware/common/usb.c b/hardware/common/usb.c index 584a09dc..bac420b3 100644 --- a/hardware/common/usb.c +++ b/hardware/common/usb.c @@ -1,5 +1,5 @@ /* - * This file is part of the sigrok project. + * This file is part of the libsigrok project. * * Copyright (C) 2012 Uwe Hermann * Copyright (C) 2012 Bert Vermeulen @@ -25,22 +25,22 @@ #include "libsigrok.h" #include "libsigrok-internal.h" -/* SR_HWCAP_CONN takes one of these: */ -#define CONN_USB_VIDPID "^([0-9a-z]{1,4})\\.([0-9a-z]{1,4})$" +/* SR_CONF_CONN takes one of these: */ +#define CONN_USB_VIDPID "^([0-9a-z]{4})\\.([0-9a-z]{4})$" #define CONN_USB_BUSADDR "^(\\d+)\\.(\\d+)$" /* Some USBTMC-specific enums, as defined in the USBTMC standard. */ #define SUBCLASS_USBTMC 0x03 #define USBTMC_USB488 0x01 -/* Message logging helpers with driver-specific prefix string. */ -#define DRIVER_LOG_DOMAIN "usb: " -#define sr_log(l, s, args...) sr_log(l, DRIVER_LOG_DOMAIN s, ## args) -#define sr_spew(s, args...) sr_spew(DRIVER_LOG_DOMAIN s, ## args) -#define sr_dbg(s, args...) sr_dbg(DRIVER_LOG_DOMAIN s, ## args) -#define sr_info(s, args...) sr_info(DRIVER_LOG_DOMAIN s, ## args) -#define sr_warn(s, args...) sr_warn(DRIVER_LOG_DOMAIN s, ## args) -#define sr_err(s, args...) sr_err(DRIVER_LOG_DOMAIN s, ## args) +/* Message logging helpers with subsystem-specific prefix string. */ +#define LOG_PREFIX "usb: " +#define sr_log(l, s, args...) sr_log(l, LOG_PREFIX s, ## args) +#define sr_spew(s, args...) sr_spew(LOG_PREFIX s, ## args) +#define sr_dbg(s, args...) sr_dbg(LOG_PREFIX s, ## args) +#define sr_info(s, args...) sr_info(LOG_PREFIX s, ## args) +#define sr_warn(s, args...) sr_warn(LOG_PREFIX s, ## args) +#define sr_err(s, args...) sr_err(LOG_PREFIX s, ## args) /** * Find USB devices according to a connection string. @@ -82,11 +82,11 @@ SR_PRIV GSList *sr_usb_find(libusb_context *usb_ctx, const char *conn) reg = g_regex_new(CONN_USB_BUSADDR, 0, 0, NULL); if (g_regex_match(reg, conn, 0, &match)) { if ((mstr = g_match_info_fetch(match, 1))) - bus = strtoul(mstr, NULL, 16); + bus = strtoul(mstr, NULL, 10); g_free(mstr); if ((mstr = g_match_info_fetch(match, 2))) - addr = strtoul(mstr, NULL, 16); + addr = strtoul(mstr, NULL, 10); g_free(mstr); sr_dbg("Trying to find USB device with bus.address = " "%d.%d.", bus, addr); @@ -189,6 +189,7 @@ SR_PRIV GSList *sr_usb_find_usbtmc(libusb_context *usb_ctx) libusb_get_device_address(devlist[i]), NULL); devices = g_slist_append(devices, usb); } + libusb_free_config_descriptor(confdes); } } libusb_free_device_list(devlist, 1);