diff --git a/include/ps2000_internal.h b/include/ps2000_internal.h index 2fdc609..6c4651a 100644 --- a/include/ps2000_internal.h +++ b/include/ps2000_internal.h @@ -526,6 +526,10 @@ int _ps2000_ops_check_device_state(ps2000_context_t *ctx); void _ps2000_ops_update_device_state(ps2000_context_t *ctx); int _ps2000_ops_siggen_default_init(ps2000_context_t *ctx); int _ps2000_ops_check_channel(ps2000_context_t *ctx); +/* FIX #16: Extended validation with frequency check */ +int _ps2000_ops_validate_siggen_freq(ps2000_context_t *ctx, + double freq_normalized, + uint32_t awg_samples); /* --- USB Transport (_ps2000_usb_*) --- */ ps2000_status_t _ps2000_usb_open_device(ps2000_context_t *ctx, uint32_t serial); @@ -539,8 +543,9 @@ ps2000_status_t _ps2000_usb_bulk_transfer(ps2000_context_t *ctx, uint8_t ep, /* --- HW / IO commands (_ps2000_hw_*) --- */ ps2000_status_t _ps2000_hw_init_sequence(ps2000_context_t *ctx); -ps2000_status_t _ps2000_hw_write_reg(ps2000_context_t *ctx, uint8_t reg, uint16_t val); -ps2000_status_t _ps2000_hw_read_reg(ps2000_context_t *ctx, uint8_t reg, uint16_t *val); +/* FIX #13: reg parameter changed to uint16_t */ +ps2000_status_t _ps2000_hw_write_reg(ps2000_context_t *ctx, uint16_t reg, uint16_t val); +ps2000_status_t _ps2000_hw_read_reg(ps2000_context_t *ctx, uint16_t reg, uint16_t *val); ps2000_status_t _ps2000_hw_load_fpga(ps2000_context_t *ctx, const uint8_t *bitstream, uint32_t len); ps2000_status_t _ps2000_hw_adc_spi_write(ps2000_context_t *ctx, @@ -548,6 +553,10 @@ ps2000_status_t _ps2000_hw_adc_spi_write(ps2000_context_t *ctx, ps2000_status_t _ps2000_hw_io_cmd(ps2000_context_t *ctx, ps2000_io_cmd_t cmd, uint16_t addr, uint16_t value); void _ps2000_hw_cleanup(ps2000_context_t *ctx); +/* FIX #15: PreLaunch */ +ps2000_status_t _ps2000_hw_prelaunch(void); +/* FIX #15: Apply fix */ +int _ps2000_hw_apply_fix(uint32_t magic, uint16_t version); /* --- Init table parser (_ps2000_init_tbl_*) --- */ ps2000_status_t _ps2000_init_tbl_execute(ps2000_context_t *ctx,