From 1f0c7eedd7ace89ad2557c64ca876b84d8cf35f1 Mon Sep 17 00:00:00 2001 From: Sid Price Date: Fri, 30 Jun 2023 16:51:36 -0600 Subject: [PATCH] hosted/probe_info: Resolve issues with BMP only build --- src/platforms/hosted/probe_info.c | 10 +++++++--- src/platforms/hosted/probe_info.h | 10 ++++++++-- 2 files changed, 15 insertions(+), 5 deletions(-) diff --git a/src/platforms/hosted/probe_info.c b/src/platforms/hosted/probe_info.c index f616c2eae01..2d4a8eed008 100644 --- a/src/platforms/hosted/probe_info.c +++ b/src/platforms/hosted/probe_info.c @@ -32,8 +32,6 @@ */ #include -#include - #include "probe_info.h" #include "general.h" @@ -46,6 +44,9 @@ probe_info_s *probe_info_add_by_serial(probe_info_s *const list, const bmp_type_ probe_info_s *probe_info_add_by_id(probe_info_s *const list, const bmp_type_t type, libusb_device *device, uint16_t vid, uint16_t pid, const char *const mfr, const char *const product, const char *const serial, const char *const version) { +#if HOSTED_BMP_ONLY == 1 + (void)device; +#endif probe_info_s *probe_info = malloc(sizeof(*probe_info)); if (!probe_info) { DEBUG_INFO("Fatal: Failed to allocate memory for a probe info structure\n"); @@ -55,8 +56,10 @@ probe_info_s *probe_info_add_by_id(probe_info_s *const list, const bmp_type_t ty probe_info->type = type; probe_info->vid = vid; probe_info->pid = pid; +#if HOSTED_BMP_ONLY == 0 if (device != NULL) probe_info->libusb_dev = libusb_ref_device(device); +#endif probe_info->manufacturer = mfr; probe_info->product = product; probe_info->serial = serial; @@ -139,6 +142,7 @@ void probe_info_to_bmp_info(const probe_info_s *const probe, bmp_info_s *info) DEBUG_ERROR("Probe descriptor string '%s (%s)' exceeds allowable manufacturer description length\n", probe->product, probe->manufacturer); } - +#if HOSTED_BMP_ONLY == 0 info->libusb_dev = probe->libusb_dev; +#endif } diff --git a/src/platforms/hosted/probe_info.h b/src/platforms/hosted/probe_info.h index 925e22b1a29..2c47060ce2c 100644 --- a/src/platforms/hosted/probe_info.h +++ b/src/platforms/hosted/probe_info.h @@ -38,11 +38,17 @@ #include "platform.h" #include "bmp_hosted.h" +#if HOSTED_BMP_ONLY == 1 +typedef struct usb_device libusb_device; +#endif + typedef struct probe_info { bmp_type_t type; uint16_t vid; uint16_t pid; +#if HOSTED_BMP_ONLY == 0 libusb_device *libusb_dev; +#endif const char *manufacturer; const char *product; const char *serial; @@ -53,8 +59,8 @@ typedef struct probe_info { probe_info_s *probe_info_add_by_serial( probe_info_s *list, bmp_type_t type, const char *mfr, const char *product, const char *serial, const char *version); -probe_info_s *probe_info_add_by_id(probe_info_s *const list, const bmp_type_t type, libusb_device *device, - uint16_t vid, uint16_t pid, const char *const mfr, const char *const product, const char *const serial, +probe_info_s *probe_info_add_by_id(probe_info_s *const list, const bmp_type_t type, libusb_device *device, uint16_t vid, + uint16_t pid, const char *const mfr, const char *const product, const char *const serial, const char *const version); size_t probe_info_count(const probe_info_s *list); void probe_info_list_free(const probe_info_s *list);