Commit Graph

183 Commits

Author SHA1 Message Date
Lars-Peter Clausen eabf24035b sr: fx2lafw: Fix memory leaks in receive_transfer
There are a few memory leaks in the receive_transfer transfer function. The most
serve of them is that a sample buffer is not freed if the triggered has not
matched yet, which causes a sigrok process which is waiting for a trigger to
consume several megabytes of memory within seconds. The other leaks are on the
error paths in that function.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2012-06-22 09:23:30 +02:00
Uwe Hermann 0a88ec3d9c sr: fx2lafw: Use gboolean, cosmetics, fix gcc warning. 2012-05-31 22:48:40 +02:00
Joel Holdsworth f4575b6549 fx2lafw: Added a check to limit the sample rate during 16-bit sampling 2012-05-31 19:53:36 +01:00
Joel Holdsworth d1ddc7a9a8 fx2lafw: Added device caps and added support for wide sampling 2012-05-31 19:52:32 +01:00
Joel Holdsworth a533743dd1 sr: Made sample rate lists const 2012-05-31 19:51:11 +01:00
Joel Holdsworth 1b79df2f57 sr: Made the dev_config_set parameter a const pointer 2012-05-31 19:51:11 +01:00
Joel Holdsworth b7f578bef5 sr: Made the dev_info_get return value const 2012-05-31 19:51:10 +01:00
Joel Holdsworth 915f7cc87a sr: Made hwcap const 2012-05-31 19:51:09 +01:00
Bert Vermeulen f366e86c68 sr: change all drivers to use SR_DF_META_LOGIC 2012-05-30 23:55:36 +02:00
Uwe Hermann 7e41e319d9 sr: fx2lafw: Forgot to add (C) line to fx2lafw.h in recent commit. 2012-05-30 23:31:03 +02:00
Uwe Hermann 0a8c0c324e sr: fx2lafw: Only check for correct major FW version.
Changes in the minor version number are OK, as those should never
contain any incompatible/API changes.
2012-05-30 23:23:14 +02:00
Uwe Hermann 921634ec10 sr: Fix typos. 2012-05-30 22:42:47 +02:00
Uwe Hermann cf94c8167b sr: fx2lafw: Add (C) line from old saleae driver it's based on. 2012-05-30 22:42:45 +02:00
Uwe Hermann f60fdf6ebe sr: fx2lafw: s/MAX_RENUM_DELAY/MAX_RENUM_DELAY_MS/. 2012-05-30 09:30:50 +02:00
Uwe Hermann e8bd58ffd2 sr: fx2lafw: Fix a firmware upload bug on 32bit systems.
The glib GTimeVal data type (and some functions using it) will be faded
out from glib sooner or later, so it's not a good idea to use them anyway.

In this specific case GTimeVal.tv_sec was overflowing, leading a check in
libsigrok to fail, and thus to FX2 firmware upload errors, i.e.
non-working fx2lafw devices.

  http://thread.gmane.org/gmane.comp.debugging.sigrok.devel/166

The root cause is that GTimeVal.tv_sec is a 'glong' (8 bytes on 64bit
systems, but only 4 on 32bit systems).

We now use an int64_t (and g_get_monotonic_time() instead of the more
problematics g_get_current_time() which uses a GTimeVal).

This has been verified to fix the issue on a 32bit system.

Other uses of GTimeVal in libsigrok will be removed in a later release.

Also, drop unneeded GTV_TO_MSEC.
2012-05-30 09:30:18 +02:00
Uwe Hermann 9f05304e4e sr: ARMFLY AX-Pro is supported by fx2lafw (LA only). 2012-05-29 20:25:08 +02:00
Uwe Hermann 37dc0b16a6 fx2lafw: Cosmetics. 2012-05-11 00:22:30 +02:00
Joel Holdsworth dc68c660d5 fx2lafw: Added a gpif delay debug message 2012-05-10 13:11:07 +01:00
Joel Holdsworth 79dc64985f fx2lafw: Added support for 20kHz and 25kHz sampling 2012-05-10 13:10:59 +01:00
Joel Holdsworth 897c1a2ee5 fx2lafw: Added support for 100kHz and 50kHz sampling 2012-05-10 13:08:09 +01:00
Uwe Hermann 1e94408ae5 sr: fx2lafw: Get/display FX2 REVID. 2012-05-06 19:54:46 +02:00
Uwe Hermann 1663e4706c sr: fx2lafw: Braintechnology USB-LPS support. 2012-05-06 17:24:40 +02:00
Bert Vermeulen 6b73d9a598 fx2lafw: use iManufacturer/iProduct fields to identify our firmware
It's more deterministic than the endpoint profile check we did before. Which
was also broken.
2012-04-27 01:28:47 +02:00
Uwe Hermann 934cde02b8 fx2lafw: supported_samplerates[] should be 0-terminated. 2012-04-19 00:55:29 +02:00
Joel Holdsworth f488762a17 fx2lafw: Added support for default Cypess FX2 without EEPROM 2012-04-19 00:12:22 +02:00
Joel Holdsworth 9304d57650 fx2lafw: Added slower sample rates 2012-04-18 19:07:39 +01:00
Uwe Hermann 44dfd483db sr: fx2lafw: Cosmetics. 2012-04-10 22:32:31 +02:00
Joel Holdsworth 13bf7eccbb fx2lafw: Added command to verify firmware version 2012-04-10 18:27:24 +01:00
Joel Holdsworth 6fbe5e6081 fx2lafw: Safer use of libusb_get_device_list 2012-04-08 17:19:52 +01:00
Uwe Hermann da68656857 sr: fx2lafw: Consistency fixes. 2012-03-31 11:33:43 +02:00
Uwe Hermann 7ae2f9d56f sr: fx2lafw: Cosmetics. 2012-03-28 01:19:28 +02:00
Uwe Hermann b04902b646 sr: fx2lafw: Use SR_PRIV where needed. 2012-03-28 01:19:28 +02:00
Uwe Hermann 30da9658ad sr: fx2lafw: command.h: Add missing include guards. 2012-03-28 01:19:28 +02:00
Uwe Hermann f4a9e5c0aa sr: fx2lafw: Cosmetics. 2012-03-28 01:19:27 +02:00
Joel Holdsworth 3e6292b296 fx2lafw: Made finish_acquisition a static function 2012-03-25 19:42:37 +01:00
Uwe Hermann 590b9f9a91 sr: Fix some samplerate fields. 2012-03-24 22:32:47 +01:00
Joel Holdsworth cb61e9f7c3 fx2lafw: Only terminate session after all transfers have been aborted 2012-03-24 10:09:28 +00:00
Joel Holdsworth 24125e0520 fx2lafw: Removed a line of redundant code 2012-03-24 10:07:58 +00:00
Joel Holdsworth 6c6781b6a7 fx2lafw: Imported software triggering from fx2lafw 2012-03-21 22:47:25 +00:00
Uwe Hermann 2e7cb0040a cli: Fix -V/-h output a bit.
Options and their defaults should not be documented there, but rather in
the manpage or such.
2012-03-21 23:20:09 +01:00
Uwe Hermann ebc3473882 sr: s/err/ret/ for consistency.
We use ret, err, error, and others for return codes of functions.
Standardize on 'ret' for consistency reasons for now.
2012-03-21 23:20:06 +01:00
Joel Holdsworth ecc16ed070 fx2lafw: Upped NUM_SIMUL_TRANSFERS to 32 2012-03-14 22:56:15 +00:00
Joel Holdsworth 4502e86921 fx2lafw: Added CWAV USBee SX to the device list 2012-03-12 21:49:34 +00:00
Joel Holdsworth 0ca21631dd fx2lafw: Corrected a comment 2012-03-12 21:47:45 +00:00
Joel Holdsworth 93a9f3daaf fx2lafw: Added Saleae Logic (and clones) to the device list 2012-03-12 21:47:44 +00:00
Joel Holdsworth f8b07fc6c3 fx2lafw: Moved firmware path into fx2lafw_profile 2012-03-12 21:41:28 +00:00
Joel Holdsworth 4679d14db3 fx2lafw: Made fx2lafw profiles const 2012-03-12 21:41:27 +00:00
Joel Holdsworth 6ccfadaf66 fx2lafw: Made string pointers constant 2012-03-12 21:39:02 +00:00
Joel Holdsworth 17b6c75a89 fx2lafw: Added ESLA201A to device list 2012-03-12 21:38:57 +00:00
Joel Holdsworth 017375d17e fx2lafw: Send start command after bulk transfer have been set up 2012-03-11 20:59:39 +00:00
Joel Holdsworth 9031ce63f3 fx2lafw: Corrected check_conf_profile checks 2012-03-07 07:52:05 +00:00
Joel Holdsworth dba024420f fx2lafw: Implemented control of sample rates 2012-03-07 07:52:05 +00:00
Joel Holdsworth f92994fd91 fx2lafw: Ensure default sample rate is set 2012-03-07 07:52:05 +00:00
Joel Holdsworth d98c4e35ce fx2lafw: Removed CMD_STOP and renumbered commands 2012-03-07 07:52:05 +00:00
Joel Holdsworth 2e526f4a6a fx2lafw: Moved num_samples into context struct 2012-03-07 07:52:05 +00:00
Joel Holdsworth 19ccdf696c fx2lafw: Removed CMD_SET_SAMPLERATE 2012-03-07 07:52:05 +00:00
Joel Holdsworth f6582cd7bf fx2lafw: Implemented initial support for start capture 2012-03-07 07:52:05 +00:00
Joel Holdsworth 74fcfb806d fx2lafw: Devices now retain the same PID/VID after fw load 2012-03-07 07:51:39 +00:00
Joel Holdsworth e318664793 fx2lafw: Implemented SR_HWCAP_PROBECONFIG and SR_HWCAP_LIMIT_SAMPLES 2012-03-07 07:51:39 +00:00
Joel Holdsworth c8f2c9dda4 fx2lafw: Fixed a compiler error, and made cv_data consistent with saleae-logic.c 2012-03-07 07:51:31 +00:00
Uwe Hermann 0abee5076f sr: Fix some TODOs, improve comments/docs. 2012-03-04 15:10:12 +01:00
Uwe Hermann 3cd3a20b35 sr: More callback param renames.
Start/stop acquisition callbacks: Consistently name the 'void *' parameter
cb_data for now. The per-device-instance device pointer is called
'session_dev_id' everywhere for now, but this should be renamed to
something more clear.
2012-03-04 15:10:09 +01:00
Uwe Hermann 1f9813eb6c sr: Name all callback data 'cb_data'. 2012-03-02 02:25:42 +01:00
Uwe Hermann 31ccebc492 sr: s/sr_session_bus/sr_session_send/. 2012-03-01 23:49:25 +01:00
Uwe Hermann c09f0b578c sr/cli/gtk/qt/: s/plugin/driver/. 2012-02-28 23:52:30 +01:00
Uwe Hermann 6c39d99a28 sr: fx2lafw: Consistent #include guard naming. 2012-02-27 23:55:06 +01:00
Uwe Hermann f9a69557d2 sr: fx2lafw: Use gboolean consistenly. 2012-02-27 23:53:44 +01:00
Uwe Hermann 772a0e6153 fx2lafw: Small consistency fixes. 2012-02-27 23:40:38 +01:00
Uwe Hermann be4b99e897 fx2lafw: Compile fix. 2012-02-27 23:26:05 +01:00
Joel Holdsworth 5da939028d fx2lafw: Implemented hw_dev_acquisition_stop 2012-02-27 21:58:25 +00:00
Joel Holdsworth 610dbb7091 fx2lafw: Implemented hw_dev_acquisition_start 2012-02-27 21:58:25 +00:00
Joel Holdsworth 7cb621d418 fx2lafw: Basic implementation of hw_dev_config_set with SR_HWCAP_LIMIT_SAMPLES 2012-02-27 21:58:25 +00:00
Joel Holdsworth 62bc70e412 fx2lafw: Added more to hw_cleanup 2012-02-27 21:58:25 +00:00
Joel Holdsworth f1898235e8 fx2lafw: Implemented hw_dev_close 2012-02-27 21:58:25 +00:00
Joel Holdsworth 43125c6993 fx2lafw: Implemented hw_dev_open 2012-02-27 21:58:25 +00:00
Joel Holdsworth b1eeb67e92 fx2lafw: Implemented firmware upload 2012-02-27 21:58:25 +00:00
Joel Holdsworth cdfdd71101 fx2lafw: Renamed fx2lafw_dev to ctx in hw_dev_info_get 2012-02-27 21:58:25 +00:00
Joel Holdsworth 90282c82bc fx2lafw: Renamed fx2lafw_dev to ctx in hw_init 2012-02-27 21:58:25 +00:00
Joel Holdsworth cac0bbaafd fx2lafw: Renamed dev_insts variable in hw_init 2012-02-27 21:58:25 +00:00
Joel Holdsworth aae2fed675 fx2lafw: Implemented hw_get_status 2012-02-25 11:11:44 +00:00
Joel Holdsworth 8b35f47483 fx2lafw: Exposed capabilities data 2012-02-25 11:11:44 +00:00
Joel Holdsworth 187b358232 fx2lafw: Added probing for fx2lafw devices 2012-02-25 11:11:29 +00:00
Joel Holdsworth f302a08256 fx2lafw: Added empty hardware module for fx2lafw 2012-02-25 09:11:53 +00:00