X-Git-Url: http://git.zerfleddert.de/cgi-bin/gitweb.cgi/hmcfgusb/blobdiff_plain/9db2e455127fa181c68cf093d23fe0c1ee142925..018f85faaef11f00f1f7736ccfe4d8f2fc9671ab:/hmcfgusb.h diff --git a/hmcfgusb.h b/hmcfgusb.h index 98b5085..7bfc53d 100644 --- a/hmcfgusb.h +++ b/hmcfgusb.h @@ -21,7 +21,7 @@ * IN THE SOFTWARE. */ -typedef void (*hmcfgusb_cb_fn)(uint8_t *buf, int buf_len, void *data); +typedef int (*hmcfgusb_cb_fn)(uint8_t *buf, int buf_len, void *data); struct hmcfgusb_dev { libusb_device_handle *usb_devh; @@ -29,9 +29,17 @@ struct hmcfgusb_dev { int n_usb_pfd; struct pollfd *pfd; int n_pfd; + int bootloader; + time_t opened_at; }; int hmcfgusb_send(struct hmcfgusb_dev *usbdev, unsigned char* send_data, int len, int done); +int hmcfgusb_send_null_frame(struct hmcfgusb_dev *usbdev, int silent); struct hmcfgusb_dev *hmcfgusb_init(hmcfgusb_cb_fn cb, void *data); int hmcfgusb_add_pfd(struct hmcfgusb_dev *dev, int fd, short events); int hmcfgusb_poll(struct hmcfgusb_dev *dev, int timeout); +void hmcfgusb_enter_bootloader(struct hmcfgusb_dev *dev); +void hmcfgusb_leave_bootloader(struct hmcfgusb_dev *dev); +void hmcfgusb_close(struct hmcfgusb_dev *dev); +void hmcfgusb_exit(void); +void hmcfgusb_set_debug(int d);