#define LOG_PREFIX "uni-t-ut32x"
#define DEFAULT_DATA_SOURCE DATA_SOURCE_LIVE
-#define USB_CONN "1a86.e008"
-#define VENDOR "UNI-T"
-#define MODEL "UT32x"
-#define USB_INTERFACE 0
-#define USB_CONFIGURATION 1
-#define EP_IN (0x80 | 2)
-#define EP_OUT 2
+#define PACKET_SIZE 19
-enum {
- DATA_SOURCE_LIVE,
+enum ut32x_data_source {
+ DATA_SOURCE_LIVE,
DATA_SOURCE_MEMORY,
};
-enum {
+enum ut32x_cmd_code {
CMD_GET_LIVE = 1,
CMD_STOP = 2,
CMD_GET_STORED = 7,
};
-/** Private, per-device-instance driver context. */
struct dev_context {
- /* Acquisition settings */
- uint64_t limit_samples;
- gboolean data_source;
-
- /* Operational state */
- uint64_t num_samples;
- unsigned char buf[8];
- struct libusb_transfer *xfer;
-
- /* Temporary state across callbacks */
- unsigned char packet[32];
- int packet_len;
+ struct sr_sw_limits limits;
+ enum ut32x_data_source data_source;
+ uint8_t packet[PACKET_SIZE];
+ size_t packet_len;
};
-SR_PRIV int uni_t_ut32x_handle_events(int fd, int revents, void *cb_data);
-SR_PRIV void LIBUSB_CALL uni_t_ut32x_receive_transfer(struct libusb_transfer *transfer);
+SR_PRIV int ut32x_handle_events(int fd, int revents, void *cb_data);
#endif