X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=src%2Fhardware%2Funi-t-ut32x%2Fprotocol.h;h=eb10a65b8b267a464d7f5d61329637d9fb782718;hb=a0ba75bda2d1a8d3502f365a2a2a7461a68149fc;hp=8513117cba92edf0e1402951620376dc58430c65;hpb=155b680da482cea2381becb73c51cfb838bff31e;p=libsigrok.git diff --git a/src/hardware/uni-t-ut32x/protocol.h b/src/hardware/uni-t-ut32x/protocol.h index 8513117c..eb10a65b 100644 --- a/src/hardware/uni-t-ut32x/protocol.h +++ b/src/hardware/uni-t-ut32x/protocol.h @@ -22,50 +22,43 @@ #include #include -#include "libsigrok.h" +#include #include "libsigrok-internal.h" #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_IN (0x80 | 2) #define EP_OUT 2 -enum { - DATA_SOURCE_LIVE, +#define PACKET_SIZE 19 + +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; + struct sr_sw_limits limits; + enum ut32x_data_source data_source; unsigned char buf[8]; struct libusb_transfer *xfer; - void *cb_data; - /* Temporary state across callbacks */ unsigned char packet[32]; - int packet_len; + size_t packet_len; }; SR_PRIV int uni_t_ut32x_handle_events(int fd, int revents, void *cb_data); -SR_PRIV void uni_t_ut32x_receive_transfer(struct libusb_transfer *transfer); +SR_PRIV void LIBUSB_CALL uni_t_ut32x_receive_transfer(struct libusb_transfer *transfer); #endif