Lars-Peter Clausen
bd47acabe3
sr: fx2lafw: Allocate header and packet struct on the stack
...
The header and packet struct are only used in the scope of this function and
they are freed at the end of it. Also these structs are rather small, so they
can safely be allocated on the stack. By doing so memory leaks on the error
paths are avoided.
Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2012-06-28 00:40:51 +02:00
Joel Holdsworth
0c156e06c5
fx2lafw: Made libusb_claim_interface error messages more informative
2012-06-28 00:40:48 +02:00
Bert Vermeulen
3b6c19303d
fx2lafw: fix broken firmware upload timeout
...
Also corner case error init.
2012-06-27 01:02:39 +02:00
Lars-Peter Clausen
fa114e4ab1
sr: fx2lafw: Set correct unitsize for trigger buffer
...
Commit 88b75eb719 ("fx2lafw: Added device caps and added support for wide
sampling") increased the size of the trigger buffer from 8 to 16 bit, but forgot
to adjust the unitsize logic packet which is used to send the contents of the
trigger buffer. This patch sets the unitsize to sizeof() of the trigger buffer.
Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2012-06-25 19:48:21 +02:00
Lars-Peter Clausen
f3ab43a8fb
sr: fx2lafw: Fix multistage trigger
...
Multistage triggers currently do no work, because there is a return statement
in the middle of the trigger detector which will be hit as soon as the first
stage in a multistage trigger matches. This patch removes the return statement
so that the trigger detector can continue to try to match the next stage. In
order for this to work we also make sure that the trigger stage is only reset
if the current sample does not match.
Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2012-06-24 14:35:26 +02:00
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
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
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
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
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
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
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
2e526f4a6a
fx2lafw: Moved num_samples into context struct
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
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