#include <arpa/inet.h>
#include "sigrok.h"
#include "sigrok-internal.h"
-#include "config.h"
#include "link-mso19.h"
#define USB_VENDOR "3195"
ops[1] = mso_trans(REG_CTL1, mso->ctlbase1);
mso->ctlbase1 |= BIT_CTL1_ADC_UNKNOWN4;
+ sr_dbg("Requesting ADC reset");
return mso_send_control_message(sdi, ARRAY_AND_SIZE(ops));
}
mso->ctlbase1 |= BIT_CTL1_RESETFSM;
ops[0] = mso_trans(REG_CTL1, mso->ctlbase1);
+ sr_dbg("Requesting ADC reset");
return mso_send_control_message(sdi, ARRAY_AND_SIZE(ops));
}
struct mso *mso = sdi->priv;
uint16_t ops[1];
- mso->ctlbase1 &= BIT_CTL1_LED;
+ mso->ctlbase1 &= ~BIT_CTL1_LED;
if (state)
mso->ctlbase1 |= BIT_CTL1_LED;
ops[0] = mso_trans(REG_CTL1, mso->ctlbase1);
+ sr_dbg("Requesting LED toggle");
return mso_send_control_message(sdi, ARRAY_AND_SIZE(ops));
}
char buf[1];
int ret;
+ sr_dbg("Requesting trigger state");
ret = mso_send_control_message(sdi, ARRAY_AND_SIZE(ops));
if (info == NULL || ret != SR_OK)
return ret;
ret = SR_ERR;
*info = buf[0];
+ sr_dbg("Trigger state is: 0x%x", *info);
return ret;
}
{
uint16_t ops[] = { mso_trans(REG_BUFFER, 0) };
+ sr_dbg("Requesting buffer dump");
return mso_send_control_message(sdi, ARRAY_AND_SIZE(ops));
}
mso_trans(REG_CTL1, mso->ctlbase1),
};
+ sr_dbg("Requesting trigger arm");
return mso_send_control_message(sdi, ARRAY_AND_SIZE(ops));
}
mso_trans(REG_CTL1, mso->ctlbase1),
};
+ sr_dbg("Requesting forced capture");
return mso_send_control_message(sdi, ARRAY_AND_SIZE(ops));
}
mso_trans(REG_CTL1, mso->ctlbase1 | BIT_CTL1_RESETADC),
};
+ sr_dbg("Setting dac word to 0x%x", val);
return mso_send_control_message(sdi, ARRAY_AND_SIZE(ops));
}
mso_trans(REG_CLKRATE2, val & 0xff),
};
+ sr_dbg("Setting clkrate word to 0x%x", val);
return mso_send_control_message(sdi, ARRAY_AND_SIZE(ops));
}
if (sdi->serial->fd != -1)
serial_close(sdi->serial->fd);
if (sdi->priv != NULL)
+ {
free(sdi->priv);
+ sdi->priv = NULL;
+ }
sr_device_instance_free(sdi);
}
g_slist_free(device_instances);
/* FIXME: discard serial buffer */
mso_check_trigger(sdi, &mso->trigger_state);
-// sr_warn("trigger state: %c", mso->trigger_state);
+ sr_dbg("trigger state: 0x%x", mso->trigger_state);
ret = mso_reset_adc(sdi);
if (ret != SR_OK)
return ret;
mso_check_trigger(sdi, &mso->trigger_state);
-// sr_warn("trigger state: %c", mso->trigger_state);
+ sr_dbg("trigger state: 0x%x", mso->trigger_state);
// ret = mso_reset_fsm(sdi);
// if (ret != SR_OK)
// return ret;
+ sr_dbg("Finished %s", __func__);
+
// return SR_ERR;
return SR_OK;
}
sdi->status = SR_ST_INACTIVE;
}
+ sr_dbg("finished %s", __func__);
return SR_OK;
}
sr_session_bus(session_device_id, &packet);
}
-struct sr_device_plugin link_mso19_plugin_info = {
+SR_PRIV struct sr_device_plugin link_mso19_plugin_info = {
.name = "link-mso19",
.longname = "Link Instruments MSO-19",
.api_version = 1,