X-Git-Url: http://sigrok.org/gitweb/?a=blobdiff_plain;f=hardware%2Fchronovu-la8%2Fdriver.h;h=39e360b60c4548da3e17e715e9f9570427ab9705;hb=c46762a285d7c844a771f5c1f0ad2447a00906b3;hp=d972d182f6b70ca105167e7fc4fb89150cc01136;hpb=45c59c8bdd01954f9214fe7b869d92c55415d109;p=libsigrok.git diff --git a/hardware/chronovu-la8/driver.h b/hardware/chronovu-la8/driver.h index d972d182..39e360b6 100644 --- a/hardware/chronovu-la8/driver.h +++ b/hardware/chronovu-la8/driver.h @@ -28,7 +28,6 @@ #include "libsigrok-internal.h" #define USB_VENDOR_ID 0x0403 -#define USB_PRODUCT_ID 0x6001 #define USB_DESCRIPTION "ChronoVu LA8" #define USB_VENDOR_NAME "ChronoVu" #define USB_MODEL_NAME "LA8" @@ -43,7 +42,7 @@ #define NUM_BLOCKS 2048 /* Number of blocks */ /* Private, per-device-instance driver context. */ -struct context { +struct dev_context { /** FTDI device context (used by libftdi). */ struct ftdi_context *ftdic; @@ -98,6 +97,9 @@ struct context { /** The divcount value (determines the sample period) for the LA8. */ uint8_t divcount; + + /** This ChronoVu LA8's USB PID (multiple versions exist). */ + uint16_t usb_pid; }; /* driver.c */ @@ -108,14 +110,14 @@ extern const struct sr_samplerates samplerates; SR_PRIV void fill_supported_samplerates_if_needed(void); SR_PRIV int is_valid_samplerate(uint64_t samplerate); SR_PRIV uint8_t samplerate_to_divcount(uint64_t samplerate); -SR_PRIV int la8_write(struct context *ctx, uint8_t *buf, int size); -SR_PRIV int la8_read(struct context *ctx, uint8_t *buf, int size); -SR_PRIV int la8_close(struct context *ctx); -SR_PRIV int la8_close_usb_reset_sequencer(struct context *ctx); -SR_PRIV int la8_reset(struct context *ctx); -SR_PRIV int configure_probes(struct context *ctx, const GSList *probes); -SR_PRIV int set_samplerate(struct sr_dev_inst *sdi, uint64_t samplerate); -SR_PRIV int la8_read_block(struct context *ctx); -SR_PRIV void send_block_to_session_bus(struct context *ctx, int block); +SR_PRIV int la8_write(struct dev_context *devc, uint8_t *buf, int size); +SR_PRIV int la8_read(struct dev_context *devc, uint8_t *buf, int size); +SR_PRIV int la8_close(struct dev_context *devc); +SR_PRIV int la8_close_usb_reset_sequencer(struct dev_context *devc); +SR_PRIV int la8_reset(struct dev_context *devc); +SR_PRIV int configure_probes(const struct sr_dev_inst *sdi); +SR_PRIV int set_samplerate(const struct sr_dev_inst *sdi, uint64_t samplerate); +SR_PRIV int la8_read_block(struct dev_context *devc); +SR_PRIV void send_block_to_session_bus(struct dev_context *devc, int block); #endif