| 1961 | } |
| 1962 | |
| 1963 | static int dev_acquisition_start(struct sr_dev_inst *sdi, void *cb_data) |
| 1964 | { |
| 1965 | (void)cb_data; |
| 1966 | |
| 1967 | struct DSL_context *devc; |
| 1968 | struct sr_usb_dev_inst *usb; |
| 1969 | struct drv_context *drvc; |
| 1970 | const struct libusb_pollfd **lupfd; |
| 1971 | unsigned int i; |
| 1972 | int ret; |
| 1973 | struct ctl_wr_cmd wr_cmd; |
| 1974 | GSList *l; |
| 1975 | |
| 1976 | if (sdi->status != SR_ST_ACTIVE){ |
| 1977 | ds_set_last_error(SR_ERR_DEVICE_CLOSED); |
| 1978 | return SR_ERR_DEVICE_CLOSED; |
| 1979 | } |
| 1980 | |
| 1981 | drvc = di->priv; |
| 1982 | devc = sdi->priv; |
| 1983 | usb = sdi->conn; |
| 1984 | |
| 1985 | //devc->cb_data = cb_data; |
| 1986 | devc->cb_data = sdi; |
| 1987 | devc->num_samples = 0; |
| 1988 | devc->empty_transfer_count = 0; |
| 1989 | devc->empty_poll_count = 0; |
| 1990 | devc->status = DSL_INIT; |
| 1991 | devc->num_transfers = 0; |
| 1992 | devc->submitted_transfers = 0; |
| 1993 | devc->actual_samples = (devc->limit_samples + SAMPLES_ALIGN) & ~SAMPLES_ALIGN; |
| 1994 | devc->abort = FALSE; |
| 1995 | devc->mstatus_valid = FALSE; |
| 1996 | devc->mstatus.captured_cnt0 = 0; |
| 1997 | devc->mstatus.captured_cnt1 = 0; |
| 1998 | devc->mstatus.captured_cnt2 = 0; |
| 1999 | devc->mstatus.captured_cnt3 = 0; |
| 2000 | devc->mstatus.trig_hit = 0; |
| 2001 | devc->overflow = FALSE; |
| 2002 | devc->instant_tail_bytes = dsl_header_size(devc); |
| 2003 | |
| 2004 | /* Configures devc->trigger_* and devc->sample_wide */ |
| 2005 | if (dsl_configure_probes(sdi) != SR_OK) { |
| 2006 | sr_err("%s: Failed to configure probes.", __func__); |
| 2007 | return SR_ERR; |
| 2008 | } |
| 2009 | |
| 2010 | /* Stop Previous GPIF acquisition */ |
| 2011 | wr_cmd.header.dest = DSL_CTL_STOP; |
| 2012 | wr_cmd.header.size = 0; |
| 2013 | if ((ret = command_ctl_wr(usb->devhdl, wr_cmd)) != SR_OK) { |
| 2014 | sr_err("%s: Stop DSCope acquisition failed!", __func__); |
| 2015 | return ret; |
| 2016 | } else { |
| 2017 | sr_info("%s: Stop Previous DSCope acquisition!", __func__); |
| 2018 | } |
| 2019 | |
| 2020 | /* Arm FPGA before acquisition start*/ |
nothing calls this directly
no test coverage detected