X-Git-Url: https://sigrok.org/gitweb/?p=libsigrok.git;a=blobdiff_plain;f=src%2Fhardware%2Fdslogic%2Fprotocol.h;h=23c1d507fb999088cc90cef82339c0eb125263e1;hp=3729e5cd178be481b28efd58133057da6f9253d4;hb=4bd770f56b1658d0d17e4b15f808d0a98bf6e325;hpb=b0acb693f94d920887684eb9fdae77e036965975 diff --git a/src/hardware/dslogic/protocol.h b/src/hardware/dslogic/protocol.h index 3729e5cd..23c1d507 100644 --- a/src/hardware/dslogic/protocol.h +++ b/src/hardware/dslogic/protocol.h @@ -53,6 +53,36 @@ #define DSLOGIC_PLUS_FPGA_FIRMWARE "dreamsourcelab-dslogic-plus-fpga.fw" #define DSLOGIC_BASIC_FPGA_FIRMWARE "dreamsourcelab-dslogic-basic-fpga.fw" +enum dslogic_operation_modes { + DS_OP_NORMAL, + DS_OP_INTERNAL_TEST, + DS_OP_EXTERNAL_TEST, + DS_OP_LOOPBACK_TEST, +}; + +enum dslogic_edge_modes { + DS_EDGE_RISING, + DS_EDGE_FALLING, +}; + +struct dslogic_version { + uint8_t major; + uint8_t minor; +}; + +struct dslogic_mode { + uint8_t flags; + uint8_t sample_delay_h; + uint8_t sample_delay_l; +}; + +struct dslogic_trigger_pos { + uint32_t real_pos; + uint32_t ram_saddr; + uint32_t remain_cnt; + uint8_t first_block[500]; +}; + struct dslogic_profile { uint16_t vid; uint16_t pid; @@ -111,15 +141,11 @@ struct dev_context { double cur_threshold; }; +SR_PRIV int dslogic_fpga_firmware_upload(const struct sr_dev_inst *sdi); SR_PRIV int dslogic_set_voltage_threshold(const struct sr_dev_inst *sdi, double threshold); -SR_PRIV int dslogic_command_start_acquisition(const struct sr_dev_inst *sdi); SR_PRIV int dslogic_dev_open(struct sr_dev_inst *sdi, struct sr_dev_driver *di); SR_PRIV struct dev_context *dslogic_dev_new(void); -SR_PRIV void dslogic_abort_acquisition(struct dev_context *devc); -SR_PRIV void LIBUSB_CALL dslogic_receive_transfer(struct libusb_transfer *transfer); -SR_PRIV size_t dslogic_get_buffer_size(struct dev_context *devc); -SR_PRIV unsigned int dslogic_get_timeout(struct dev_context *devc); -SR_PRIV void dslogic_send_data(struct sr_dev_inst *sdi, uint8_t *data, - size_t length, size_t sample_width); +SR_PRIV int dslogic_acquisition_start(const struct sr_dev_inst *sdi); +SR_PRIV int dslogic_acquisition_stop(struct sr_dev_inst *sdi); #endif