/* HM-CFG-USB libusb-driver
*
- * Copyright (c) 2013 Michael Gernoth <michael@gernoth.net>
+ * Copyright (c) 2013-16 Michael Gernoth <michael@gernoth.net>
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to
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);
-struct hmcfgusb_dev *hmcfgusb_init(hmcfgusb_cb_fn cb, void *data);
+int hmcfgusb_send_null_frame(struct hmcfgusb_dev *usbdev, int silent);
+struct hmcfgusb_dev *hmcfgusb_init(hmcfgusb_cb_fn cb, void *data, char *serial);
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);