drivers/libusb_helper: introduce oocd_libusb_dev_mem_alloc() helper
commit15f74c2595fe20235b27ce079a35e066d6b6611c
authorTomas Vanek <vanekt@fbl.cz>
Wed, 20 Dec 2023 12:20:27 +0000 (20 13:20 +0100)
committerTomas Vanek <vanekt@fbl.cz>
Fri, 12 Jan 2024 07:12:32 +0000 (12 07:12 +0000)
tree1aad4d74bf148e0c45c470544bc3e9c0c09e0f64
parentadcc8ef87bc1ed47c95f1f2d23072b2b916e1555
drivers/libusb_helper: introduce oocd_libusb_dev_mem_alloc() helper

On some systems (at least Windows/CYGWIN and macOS) libusb_dev_mem_alloc()
simply returns NULL.

Use the result of the very first libusb_dev_mem_alloc() call to decide
if the underlining system supports dev mem allocation or we should
fall-back to plain heap malloc().

From the decision time on, keep using the selected type of memory allocator
and deallocator.

Signed-off-by: Tomas Vanek <vanekt@fbl.cz>
Change-Id: Ia1f0965cea44b4bb6d936b02ec43f5a16a46f080
Reviewed-on: https://review.openocd.org/c/openocd/+/8059
Tested-by: jenkins
Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com>
src/jtag/drivers/libusb_helper.c
src/jtag/drivers/libusb_helper.h