diff options
Diffstat (limited to 'utils/regtools')
-rw-r--r-- | utils/regtools/qeditor/backend.cpp | 23 |
1 files changed, 8 insertions, 15 deletions
diff --git a/utils/regtools/qeditor/backend.cpp b/utils/regtools/qeditor/backend.cpp index 423b0bb520..86e4d60ef9 100644 --- a/utils/regtools/qeditor/backend.cpp +++ b/utils/regtools/qeditor/backend.cpp | |||
@@ -211,20 +211,10 @@ int HWStubDevice::GetDevAddress() | |||
211 | 211 | ||
212 | bool HWStubDevice::Probe() | 212 | bool HWStubDevice::Probe() |
213 | { | 213 | { |
214 | struct libusb_device_descriptor desc; | ||
215 | if(libusb_get_device_descriptor(m_dev, &desc)) | ||
216 | return false; | ||
217 | if(desc.idVendor != HWSTUB_USB_VID || desc.idProduct != HWSTUB_USB_PID) | ||
218 | return false; | ||
219 | if(!Open()) | 214 | if(!Open()) |
220 | return false; | 215 | return false; |
221 | int ret = hwstub_get_desc(m_hwdev, HWSTUB_DT_VERSION, &m_hwdev_ver, sizeof(m_hwdev_ver)); | ||
222 | if(ret != sizeof(m_hwdev_ver)) | ||
223 | goto Lerr; | ||
224 | if(m_hwdev_ver.bMajor != HWSTUB_VERSION_MAJOR || m_hwdev_ver.bMinor < HWSTUB_VERSION_MINOR) | ||
225 | goto Lerr; | ||
226 | // get target | 216 | // get target |
227 | ret = hwstub_get_desc(m_hwdev, HWSTUB_DT_TARGET, &m_hwdev_target, sizeof(m_hwdev_target)); | 217 | int ret = hwstub_get_desc(m_hwdev, HWSTUB_DT_TARGET, &m_hwdev_target, sizeof(m_hwdev_target)); |
228 | if(ret != sizeof(m_hwdev_target)) | 218 | if(ret != sizeof(m_hwdev_target)) |
229 | goto Lerr; | 219 | goto Lerr; |
230 | // get STMP information | 220 | // get STMP information |
@@ -373,10 +363,13 @@ HWStubBackendHelper::HWStubBackendHelper() | |||
373 | m_hotplug = libusb_has_capability(LIBUSB_CAP_HAS_HOTPLUG); | 363 | m_hotplug = libusb_has_capability(LIBUSB_CAP_HAS_HOTPLUG); |
374 | if(m_hotplug) | 364 | if(m_hotplug) |
375 | { | 365 | { |
366 | int evt = LIBUSB_HOTPLUG_EVENT_DEVICE_ARRIVED | | ||
367 | LIBUSB_HOTPLUG_EVENT_DEVICE_LEFT; | ||
376 | m_hotplug = LIBUSB_SUCCESS == libusb_hotplug_register_callback( | 368 | m_hotplug = LIBUSB_SUCCESS == libusb_hotplug_register_callback( |
377 | NULL, (libusb_hotplug_event)(LIBUSB_HOTPLUG_EVENT_DEVICE_ARRIVED | LIBUSB_HOTPLUG_EVENT_DEVICE_LEFT), | 369 | NULL, (libusb_hotplug_event)evt, LIBUSB_HOTPLUG_ENUMERATE, |
378 | LIBUSB_HOTPLUG_ENUMERATE, HWSTUB_USB_VID, HWSTUB_USB_PID, HWSTUB_CLASS, | 370 | LIBUSB_HOTPLUG_MATCH_ANY, LIBUSB_HOTPLUG_MATCH_ANY, LIBUSB_HOTPLUG_MATCH_ANY, |
379 | &HWStubBackendHelper::HotPlugCallback, reinterpret_cast< void* >(this), &m_hotplug_handle); | 371 | &HWStubBackendHelper::HotPlugCallback, reinterpret_cast< void* >(this), |
372 | &m_hotplug_handle); | ||
380 | } | 373 | } |
381 | #endif | 374 | #endif |
382 | } | 375 | } |
@@ -393,7 +386,7 @@ QList< HWStubDevice* > HWStubBackendHelper::GetDevList() | |||
393 | { | 386 | { |
394 | QList< HWStubDevice* > list; | 387 | QList< HWStubDevice* > list; |
395 | libusb_device **dev_list; | 388 | libusb_device **dev_list; |
396 | ssize_t cnt = libusb_get_device_list(NULL, &dev_list); | 389 | ssize_t cnt = hwstub_get_device_list(NULL, &dev_list); |
397 | for(int i = 0; i < cnt; i++) | 390 | for(int i = 0; i < cnt; i++) |
398 | { | 391 | { |
399 | HWStubDevice *dev = new HWStubDevice(dev_list[i]); | 392 | HWStubDevice *dev = new HWStubDevice(dev_list[i]); |