X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=src%2Fhardware%2Fzeroplus-logic-cube%2Fapi.c;h=3681352e73e058828ec03e4cb7b800b80e554eef;hb=3be42bc22f8b36599a448273c12a76d3e0f7a940;hp=48845c7a2c26b62f37f4bbc23d834d0420b8fc37;hpb=0f34cb472368be61aa2e7bc9d9d1b25bb28aa560;p=libsigrok.git
diff --git a/src/hardware/zeroplus-logic-cube/api.c b/src/hardware/zeroplus-logic-cube/api.c
index 48845c7a..3681352e 100644
--- a/src/hardware/zeroplus-logic-cube/api.c
+++ b/src/hardware/zeroplus-logic-cube/api.c
@@ -17,6 +17,7 @@
* along with this program. If not, see .
*/
+#include
#include "protocol.h"
#define VENDOR_NAME "ZEROPLUS"
@@ -30,7 +31,7 @@
struct zp_model {
uint16_t vid;
uint16_t pid;
- char *model_name;
+ const char *model_name;
unsigned int channels;
unsigned int sample_depth; /* In Ksamples/channel */
unsigned int max_sampling_freq;
@@ -50,7 +51,7 @@ static const struct zp_model zeroplus_models[] = {
{0x0c12, 0x700e, "LAP-C(16032)", 16, 32, 100},
{0x0c12, 0x7016, "LAP-C(162000)", 16, 2048, 200},
{0x0c12, 0x7100, "AKIP-9101", 16, 256, 200},
- { 0, 0, 0, 0, 0, 0 }
+ ALL_ZERO
};
static const uint32_t devopts[] = {
@@ -174,7 +175,7 @@ static GSList *scan(struct sr_dev_driver *di, GSList *options)
(void)options;
- drvc = di->priv;
+ drvc = di->context;
devices = NULL;
@@ -182,12 +183,7 @@ static GSList *scan(struct sr_dev_driver *di, GSList *options)
libusb_get_device_list(drvc->sr_ctx->libusb_ctx, &devlist); /* TODO: Errors. */
for (i = 0; devlist[i]; i++) {
- ret = libusb_get_device_descriptor(devlist[i], &des);
- if (ret != 0) {
- sr_err("Failed to get device descriptor: %s.",
- libusb_error_name(ret));
- continue;
- }
+ libusb_get_device_descriptor(devlist[i], &des);
if ((ret = libusb_open(devlist[i], &hdl)) < 0)
continue;
@@ -262,7 +258,7 @@ static GSList *scan(struct sr_dev_driver *di, GSList *options)
static GSList *dev_list(const struct sr_dev_driver *di)
{
- return ((struct drv_context *)(di->priv))->instances;
+ return ((struct drv_context *)(di->context))->instances;
}
static int dev_open(struct sr_dev_inst *sdi)
@@ -275,7 +271,7 @@ static int dev_open(struct sr_dev_inst *sdi)
int device_count, ret, i;
char connection_id[64];
- drvc = di->priv;
+ drvc = di->context;
usb = sdi->conn;
if (!(devc = sdi->priv)) {
@@ -587,15 +583,11 @@ static int dev_acquisition_start(const struct sr_dev_inst *sdi,
/* Check for empty capture */
if ((status & STATUS_READY) && !stop_address) {
- packet.type = SR_DF_END;
- sr_session_send(cb_data, &packet);
+ std_session_send_df_end(cb_data, LOG_PREFIX);
return SR_OK;
}
- if (!(buf = g_try_malloc(PACKET_SIZE))) {
- sr_err("Packet buffer malloc failed.");
- return SR_ERR_MALLOC;
- }
+ buf = g_malloc(PACKET_SIZE);
/* Check if the trigger is in the samples we are throwing away */
trigger_now = now_address == trigger_address ||
@@ -699,8 +691,7 @@ static int dev_acquisition_start(const struct sr_dev_inst *sdi,
analyzer_read_stop(usb->devhdl);
g_free(buf);
- packet.type = SR_DF_END;
- sr_session_send(cb_data, &packet);
+ std_session_send_df_end(cb_data, LOG_PREFIX);
return SR_OK;
}
@@ -710,10 +701,8 @@ static int dev_acquisition_stop(struct sr_dev_inst *sdi, void *cb_data)
{
struct dev_context *devc;
struct sr_usb_dev_inst *usb;
- struct sr_datafeed_packet packet;
- packet.type = SR_DF_END;
- sr_session_send(cb_data, &packet);
+ std_session_send_df_end(cb_data, LOG_PREFIX);
if (!(devc = sdi->priv)) {
sr_err("%s: sdi->priv was NULL", __func__);
@@ -743,5 +732,5 @@ SR_PRIV struct sr_dev_driver zeroplus_logic_cube_driver_info = {
.dev_close = dev_close,
.dev_acquisition_start = dev_acquisition_start,
.dev_acquisition_stop = dev_acquisition_stop,
- .priv = NULL,
+ .context = NULL,
};