]> git.sur5r.net Git - openocd/blobdiff - src/jtag/drivers/libusb1_common.h
libusb: require pkg-config support
[openocd] / src / jtag / drivers / libusb1_common.h
index 89e8c1ec5a67b418975f1bb9866b8c4385490ecf..0e653d845400d3b9c997713ad830a8e280f0259b 100644 (file)
  *   You should have received a copy of the GNU General Public License     *
  *   along with this program; if not, write to the                         *
  *   Free Software Foundation, Inc.,                                       *
- *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
+ *   51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.           *
  ***************************************************************************/
 
 #ifndef JTAG_LIBUSB_COMMON_H
 #define JTAG_LIBUSB_COMMON_H
 
-#include <helper/types.h>
-#include <libusb-1.0/libusb.h>
+#include <libusb.h>
 
 #define jtag_libusb_device                     libusb_device
 #define jtag_libusb_device_handle              libusb_device_handle
 #define jtag_libusb_reset_device(dev)          libusb_reset_device(dev)
 #define jtag_libusb_get_device(devh)           libusb_get_device(devh)
 
-inline int jtag_libusb_claim_interface(jtag_libusb_device_handle *devh,
-                                      int iface)
+static inline int jtag_libusb_claim_interface(jtag_libusb_device_handle *devh,
+               int iface)
 {
        return libusb_claim_interface(devh, iface);
 };
 
+static inline int jtag_libusb_release_interface(jtag_libusb_device_handle *devh,
+               int iface)
+{
+       return libusb_release_interface(devh, iface);
+}
+
 int jtag_libusb_open(const uint16_t vids[], const uint16_t pids[],
-                    struct jtag_libusb_device_handle **out);
+               struct jtag_libusb_device_handle **out);
 void jtag_libusb_close(jtag_libusb_device_handle *dev);
+int jtag_libusb_control_transfer(jtag_libusb_device_handle *dev,
+               uint8_t requestType, uint8_t request, uint16_t wValue,
+               uint16_t wIndex, char *bytes,   uint16_t size, unsigned int timeout);
 int jtag_libusb_bulk_write(struct jtag_libusb_device_handle *dev, int ep,
-                          char *bytes, int size, int timeout);
+               char *bytes,    int size, int timeout);
 int jtag_libusb_bulk_read(struct jtag_libusb_device_handle *dev, int ep,
-                         char *bytes, int size, int timeout);
+               char *bytes, int size, int timeout);
 int jtag_libusb_set_configuration(jtag_libusb_device_handle *devh,
-                                 int configuration);
+               int configuration);
 int jtag_libusb_get_endpoints(struct jtag_libusb_device *udev,
-                             unsigned int *usb_read_ep,
-                             unsigned int *usb_write_ep);
+               unsigned int *usb_read_ep,
+               unsigned int *usb_write_ep);
 
 #endif /* JTAG_USB_COMMON_H */