ols: use new scan API
This commit is contained in:
parent
ed300b9f6a
commit
10e5cbede8
|
@ -227,10 +227,11 @@ static struct sr_dev_inst *get_metadata(int fd)
|
||||||
{
|
{
|
||||||
struct sr_dev_inst *sdi;
|
struct sr_dev_inst *sdi;
|
||||||
struct context *ctx;
|
struct context *ctx;
|
||||||
uint32_t tmp_int;
|
struct sr_probe *probe;
|
||||||
|
uint32_t tmp_int, ui;
|
||||||
uint8_t key, type, token;
|
uint8_t key, type, token;
|
||||||
GString *tmp_str, *devname, *version;
|
GString *tmp_str, *devname, *version;
|
||||||
gchar tmp_c;
|
guchar tmp_c;
|
||||||
|
|
||||||
sdi = sr_dev_inst_new(0, SR_ST_INACTIVE, NULL, NULL, NULL);
|
sdi = sr_dev_inst_new(0, SR_ST_INACTIVE, NULL, NULL, NULL);
|
||||||
ctx = ols_dev_new();
|
ctx = ols_dev_new();
|
||||||
|
@ -289,7 +290,12 @@ static struct sr_dev_inst *get_metadata(int fd)
|
||||||
switch (token) {
|
switch (token) {
|
||||||
case 0x00:
|
case 0x00:
|
||||||
/* Number of usable probes */
|
/* Number of usable probes */
|
||||||
ctx->num_probes = tmp_int;
|
for (ui = 0; ui < tmp_int; ui++) {
|
||||||
|
if (!(probe = sr_probe_new(ui, SR_PROBE_LOGIC, TRUE,
|
||||||
|
probe_names[ui])))
|
||||||
|
return 0;
|
||||||
|
sdi->probes = g_slist_append(sdi->probes, probe);
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case 0x01:
|
case 0x01:
|
||||||
/* Amount of sample memory available (bytes) */
|
/* Amount of sample memory available (bytes) */
|
||||||
|
@ -322,7 +328,12 @@ static struct sr_dev_inst *get_metadata(int fd)
|
||||||
switch (token) {
|
switch (token) {
|
||||||
case 0x00:
|
case 0x00:
|
||||||
/* Number of usable probes */
|
/* Number of usable probes */
|
||||||
ctx->num_probes = tmp_c;
|
for (ui = 0; ui < tmp_c; ui++) {
|
||||||
|
if (!(probe = sr_probe_new(ui, SR_PROBE_LOGIC, TRUE,
|
||||||
|
probe_names[ui])))
|
||||||
|
return 0;
|
||||||
|
sdi->probes = g_slist_append(sdi->probes, probe);
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case 0x01:
|
case 0x01:
|
||||||
/* protocol version */
|
/* protocol version */
|
||||||
|
@ -356,16 +367,19 @@ static int hw_init(void)
|
||||||
return SR_OK;
|
return SR_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int hw_scan(void)
|
static GSList *hw_scan(GSList *options)
|
||||||
{
|
{
|
||||||
struct sr_dev_inst *sdi;
|
struct sr_dev_inst *sdi;
|
||||||
struct context *ctx;
|
struct context *ctx;
|
||||||
GSList *ports, *l;
|
struct sr_probe *probe;
|
||||||
|
GSList *devices, *ports, *l;
|
||||||
GPollFD *fds, probefd;
|
GPollFD *fds, probefd;
|
||||||
int devcnt, final_devcnt, num_ports, fd, ret, i;
|
int devcnt, final_devcnt, num_ports, fd, ret, i, j;
|
||||||
char buf[8], **dev_names, **serial_params;
|
char buf[8], **dev_names, **serial_params;
|
||||||
|
|
||||||
|
(void)options;
|
||||||
final_devcnt = 0;
|
final_devcnt = 0;
|
||||||
|
devices = NULL;
|
||||||
|
|
||||||
/* Scan all serial ports. */
|
/* Scan all serial ports. */
|
||||||
ports = list_serial_ports();
|
ports = list_serial_ports();
|
||||||
|
@ -455,7 +469,12 @@ static int hw_scan(void)
|
||||||
sdi = sr_dev_inst_new(final_devcnt, SR_ST_INACTIVE,
|
sdi = sr_dev_inst_new(final_devcnt, SR_ST_INACTIVE,
|
||||||
"Sump", "Logic Analyzer", "v1.0");
|
"Sump", "Logic Analyzer", "v1.0");
|
||||||
ctx = ols_dev_new();
|
ctx = ols_dev_new();
|
||||||
ctx->num_probes = 32;
|
for (j = 0; j < 32; j++) {
|
||||||
|
if (!(probe = sr_probe_new(j, SR_PROBE_LOGIC, TRUE,
|
||||||
|
probe_names[j])))
|
||||||
|
return 0;
|
||||||
|
sdi->probes = g_slist_append(sdi->probes, probe);
|
||||||
|
}
|
||||||
sdi->priv = ctx;
|
sdi->priv = ctx;
|
||||||
}
|
}
|
||||||
ctx->serial = sr_serial_dev_inst_new(dev_names[i], -1);
|
ctx->serial = sr_serial_dev_inst_new(dev_names[i], -1);
|
||||||
|
@ -485,7 +504,7 @@ hw_init_free_fds:
|
||||||
hw_init_free_ports:
|
hw_init_free_ports:
|
||||||
g_slist_free(ports);
|
g_slist_free(ports);
|
||||||
|
|
||||||
return final_devcnt;
|
return devices;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int hw_dev_open(int dev_index)
|
static int hw_dev_open(int dev_index)
|
||||||
|
|
|
@ -64,7 +64,6 @@ struct context {
|
||||||
uint32_t max_samplerate;
|
uint32_t max_samplerate;
|
||||||
uint32_t max_samples;
|
uint32_t max_samples;
|
||||||
uint32_t protocol_version;
|
uint32_t protocol_version;
|
||||||
int num_probes;
|
|
||||||
|
|
||||||
uint64_t cur_samplerate;
|
uint64_t cur_samplerate;
|
||||||
uint32_t cur_samplerate_divider;
|
uint32_t cur_samplerate_divider;
|
||||||
|
|
Loading…
Reference in New Issue