#define LIBSIGROK_HARDWARE_LASCAR_EL_USB_PROTOCOL_H
#include <stdint.h>
-#include "libsigrok.h"
+#include <libsigrok/libsigrok.h>
#include "libsigrok-internal.h"
#define LOG_PREFIX "lascar-el-usb"
-#define LASCAR_VENDOR "Lascar"
#define LASCAR_INTERFACE 0
#define LASCAR_EP_IN 0x82
#define LASCAR_EP_OUT 2
#define SLEEP_US_LONG (5 * 1000)
#define SLEEP_US_SHORT (1 * 1000)
-/** Private, per-device-instance driver context. */
struct dev_context {
- void *cb_data;
const struct elusb_profile *profile;
+
/* Generic EL-USB */
unsigned char config[MAX_CONFIGBLOCK_SIZE];
unsigned int log_size;
unsigned int logged_samples;
unsigned int rcvd_samples;
uint64_t limit_samples;
+
/* Model-specific */
/* EL-USB-CO: these are something like scaling and calibration values
* fixed per device, used to convert the sample values to CO ppm. */
struct elusb_profile {
int modelid;
- char *modelname;
+ const char *modelname;
int logformat;
};
unsigned char *configblock, int *configlen);
SR_PRIV struct sr_dev_inst *lascar_scan(int bus, int address);
SR_PRIV int lascar_el_usb_handle_events(int fd, int revents, void *cb_data);
-SR_PRIV void lascar_el_usb_receive_transfer(struct libusb_transfer *transfer);
+SR_PRIV void LIBUSB_CALL lascar_el_usb_receive_transfer(struct libusb_transfer *transfer);
SR_PRIV int lascar_start_logging(const struct sr_dev_inst *sdi);
SR_PRIV int lascar_stop_logging(const struct sr_dev_inst *sdi);
SR_PRIV int lascar_is_logging(const struct sr_dev_inst *sdi);
-SR_PRIV int dev_acquisition_stop(struct sr_dev_inst *sdi, void *cb_data);
#endif