LibUSB (new API):
- Add a new API function to check the connected status of the USB handle in the LibUSB v1.0 and LibUSB v0.1 interfaces. Approved by: thompsa (mentor)
This commit is contained in:
parent
113801819a
commit
f1b5fa6e49
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=213848
@ -231,6 +231,14 @@ been disconnected and a LIBUSB_ERROR code on failure.
|
|||||||
.Pp
|
.Pp
|
||||||
.
|
.
|
||||||
.Ft int
|
.Ft int
|
||||||
|
.Fn libusb_check_connected "libusb_device_handle *devh"
|
||||||
|
Test if USB device is still connected. Returns 0 on success,
|
||||||
|
LIBUSB_ERROR_NO_DEVICE if has been disconnected and a LIBUSB_ERROR
|
||||||
|
code on failure.
|
||||||
|
.
|
||||||
|
.Pp
|
||||||
|
.
|
||||||
|
.Ft int
|
||||||
.Fn libusb_kernel_driver_active "libusb_device_handle *devh" "int interface"
|
.Fn libusb_kernel_driver_active "libusb_device_handle *devh" "int interface"
|
||||||
Determine if a driver is active on a interface. Returns 0 if no kernel driver
|
Determine if a driver is active on a interface. Returns 0 if no kernel driver
|
||||||
is active, returns 1 if a kernel driver is active, returns LIBUSB_ERROR_NO_DEVICE
|
is active, returns 1 if a kernel driver is active, returns LIBUSB_ERROR_NO_DEVICE
|
||||||
@ -488,6 +496,7 @@ The library is also compliant with LibUSB version 0.1.12.
|
|||||||
.Fn usb_find_devices
|
.Fn usb_find_devices
|
||||||
.Fn usb_device
|
.Fn usb_device
|
||||||
.Fn usb_get_busses
|
.Fn usb_get_busses
|
||||||
|
.Fn usb_check_connected
|
||||||
.
|
.
|
||||||
.Sh SEE ALSO
|
.Sh SEE ALSO
|
||||||
.Xr libusb20 3 ,
|
.Xr libusb20 3 ,
|
||||||
|
@ -316,6 +316,7 @@ int libusb_set_configuration(libusb_device_handle * devh, int configuration);
|
|||||||
int libusb_claim_interface(libusb_device_handle * devh, int interface_number);
|
int libusb_claim_interface(libusb_device_handle * devh, int interface_number);
|
||||||
int libusb_release_interface(libusb_device_handle * devh, int interface_number);
|
int libusb_release_interface(libusb_device_handle * devh, int interface_number);
|
||||||
int libusb_reset_device(libusb_device_handle * devh);
|
int libusb_reset_device(libusb_device_handle * devh);
|
||||||
|
int libusb_check_connected(libusb_device_handle * devh);
|
||||||
int libusb_kernel_driver_active(libusb_device_handle * devh, int interface);
|
int libusb_kernel_driver_active(libusb_device_handle * devh, int interface);
|
||||||
int libusb_detach_kernel_driver(libusb_device_handle * devh, int interface);
|
int libusb_detach_kernel_driver(libusb_device_handle * devh, int interface);
|
||||||
int libusb_attach_kernel_driver(libusb_device_handle * devh, int interface);
|
int libusb_attach_kernel_driver(libusb_device_handle * devh, int interface);
|
||||||
|
@ -662,6 +662,21 @@ libusb_reset_device(struct libusb20_device *pdev)
|
|||||||
return (err ? LIBUSB_ERROR_OTHER : 0);
|
return (err ? LIBUSB_ERROR_OTHER : 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int
|
||||||
|
libusb_check_connected(struct libusb20_device *pdev)
|
||||||
|
{
|
||||||
|
libusb_device *dev;
|
||||||
|
int err;
|
||||||
|
|
||||||
|
dev = libusb_get_device(pdev);
|
||||||
|
if (dev == NULL)
|
||||||
|
return (LIBUSB_ERROR_INVALID_PARAM);
|
||||||
|
|
||||||
|
err = libusb20_dev_check_connected(pdev);
|
||||||
|
|
||||||
|
return (err ? LIBUSB_ERROR_NO_DEVICE : 0);
|
||||||
|
}
|
||||||
|
|
||||||
int
|
int
|
||||||
libusb_kernel_driver_active(struct libusb20_device *pdev, int interface)
|
libusb_kernel_driver_active(struct libusb20_device *pdev, int interface)
|
||||||
{
|
{
|
||||||
|
@ -795,6 +795,19 @@ usb_reset(usb_dev_handle * dev)
|
|||||||
return (usb_close(dev));
|
return (usb_close(dev));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int
|
||||||
|
usb_check_connected(usb_dev_handle * dev)
|
||||||
|
{
|
||||||
|
int err;
|
||||||
|
|
||||||
|
err = libusb20_dev_check_connected((void *)dev);
|
||||||
|
|
||||||
|
if (err)
|
||||||
|
return (-1);
|
||||||
|
|
||||||
|
return (0);
|
||||||
|
}
|
||||||
|
|
||||||
const char *
|
const char *
|
||||||
usb_strerror(void)
|
usb_strerror(void)
|
||||||
{
|
{
|
||||||
|
@ -291,6 +291,7 @@ int usb_set_altinterface(usb_dev_handle * dev, int alternate);
|
|||||||
int usb_resetep(usb_dev_handle * dev, unsigned int ep);
|
int usb_resetep(usb_dev_handle * dev, unsigned int ep);
|
||||||
int usb_clear_halt(usb_dev_handle * dev, unsigned int ep);
|
int usb_clear_halt(usb_dev_handle * dev, unsigned int ep);
|
||||||
int usb_reset(usb_dev_handle * dev);
|
int usb_reset(usb_dev_handle * dev);
|
||||||
|
int usb_check_connected(usb_dev_handle * dev);
|
||||||
const char *usb_strerror(void);
|
const char *usb_strerror(void);
|
||||||
void usb_init(void);
|
void usb_init(void);
|
||||||
void usb_set_debug(int level);
|
void usb_set_debug(int level);
|
||||||
|
Loading…
Reference in New Issue
Block a user