The working group "VISA for Linux" of the IVI Foundation www.ivifoundation.org specifies common rules, shared libraries and drivers to implement the specification of "VPP-4.3: The VISA Library" on Linux to be compatible with implementations on other operating systems.
The USBTMC protocol is part of the "VISA Library" that is used by many popular T&M applications. An initial implementation for Linux based on libusb has been created. While functional it has some drawbacks: - Performance - Requires root privileges to reclaim devices already claimed by the usbtmc driver The following collaborative patches meet the requirements of the IVI Foundation to implement the library based on the usbtmc driver. Improvements in the data transfer rate of over 130 MByte/s for usb 3.x connections have been measured. Guido Kiener, Dave Penkler, Steve Bayless (12): 01 Remove rigol_quirk 02 Support Read Status Byte with SRQ per file handle 03 Add ioctls to set/get usb timeout 04 Add ioctls for trigger, EOM bit, TermChar 05 Add ioctl for generic requests on control pipe 06 Add vendor specific/asynchronous read/write ioctls 07 Add ioctl USBTMC488_IOCTL_WAIT_SRQ 08 Optimize read/write and add ioctls for auto_abort 09 Fix ioctl USBTMC_IOCTL_CLEAR 10 Add test functions to set HALT Feature (Stall) 11 Add ioctls to abort with specific tags 12 Add ioctl to return API version of usbtmc driver Documentation/ioctl/ioctl-number.txt | 2 +- drivers/usb/class/usbtmc.c | 1951 +++++++++++++++++++++----- include/uapi/linux/usb/tmc.h | 60 + 3 files changed, 1628 insertions(+), 385 deletions(-) -- 2.17.0 -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html