USBDEVFS_RESET vs IOCTL_USB_RESET USBDEVFS_RESET vs IOCTL_USB_RESET linux linux

USBDEVFS_RESET vs IOCTL_USB_RESET


I think you talk about IOCTL_USBFS_RESET instead of IOCTL_USB_RESET?

IOCTL_USBFS_RESET is specific to libusb. Indeed, libusb does not use structures nor ioctls defined in usbdevice_fs.h. Instead it redefine everything in os/linux_usbfs.h (I think for historical reasons). These two headers are binary compatible but, libusb does not use same names for structures and ioctls. For structures, prefix usbdevfs_ is replaced with usbfs_ (usbfs_ctrltransfer, usbfs_bulktransfer, ...). For ioctls, prefix USBDEVFS_ is replaced by IOCTL_USBFS_.

So, indeed, IOCTL_USBFS_RESET is the same than USBDEVFS_RESET (= _IO('U', 20)).