Commit Graph

4761 Commits

Author SHA1 Message Date
Uwe Hermann b53738baf7 Replace g_malloc{0,} with g_try_malloc{0,}.
The g_malloc()/g_malloc0() versions exit/segfault if not enough memory
is available, which is not a good thing in libsigrok.

Instead, we use the g_try_malloc()/g_try_malloc0() variants, which
return NULL if not enough memory is available, so that the caller can
handle the error properly.
2011-04-16 18:08:15 +02:00
Uwe Hermann 50959ddcdc gnuplot output: Optimize by only storing changes.
Only output new lines in gnuplot output if there have been changes in
the samples (similar to what VCD does). As long as the first and last
sample are output, the resulting plot looks OK.

This reduces the size of the output file from roughly 200MB to just 60KB
in one specific test setup (depends on the number of probes and on the
signal, of course). The time and CPU load required to generate the gnuplot
output and the resulting plot (PNG or other) is also drastically reduced
from multiple minutes to roughly 30 seconds (again, depends on various
things).

Thanks Ken Mobley of ChronoVu for the report.
2011-04-15 21:49:22 +02:00
Uwe Hermann 15f2d0c0f2 Don't close/reset the FTDI device too often.
Only call la8_close_usb_reset_sequencer() in hw_closedev(), it's not
needed in hw_stop_acquisition().

Thanks Ken Mobley of ChronoVu for the report.
2011-04-15 20:47:26 +02:00
Uwe Hermann 2f5c8c9696 LA8: free() sample buffers in hw_closedev().
Thanks Ken Mobley of ChronoVu for the report.
2011-04-15 20:05:45 +02:00
Uwe Hermann b08024a836 libsigrok: Introduce sr_dbg/sr_info/sr_warn/sr_err.
We should use these (internal) functions in libsigrok exclusively from
now on, i.e. no more use of glib's g_debug() etc.

These functions are only for libsigrok, the frontends use whatever
logging mechanism is suitable there.
2011-04-14 10:11:08 +02:00
Uwe Hermann 83e9d58638 Add chronovu-la8 input file format support. 2011-04-11 00:21:19 +02:00
Uwe Hermann 8c48f17944 Add chronovu-la8 output file format. 2011-04-10 23:59:38 +02:00
Uwe Hermann 20ebd1fe1d gnuplot output: More error checks. 2011-04-10 23:03:34 +02:00
Uwe Hermann cdb3573ceb input/output formats: s/extension/id/.
The struct entry 'extension' is not really a (filename) extension, but
rather a unique ID used for input or output formats, e.g. in the sigrok
CLI or GUI interface. Thus, rename it accordingly.
2011-04-10 23:03:34 +02:00
Uwe Hermann 8703f512a7 LA8: Use the new SR_ERR_ARG macro. 2011-04-10 23:03:33 +02:00
Uwe Hermann f7d2982d42 Add SR_ERR_ARG #define.
Changing the number of SR_ERR_SAMPLERATE is not a problem ATM, as we
never had a public release of libsigrok, i.e. nobody relies on the API yet.
2011-04-10 23:03:33 +02:00
Uwe Hermann 819184ee68 Binary output: Add more error checks. 2011-04-10 23:03:33 +02:00
Uwe Hermann d494a4aa9d input/output formats: Explicit struct member names.
This makes it immediately clear what an entry is supposed to be, no
need to look it up in some header file.
2011-04-10 23:03:33 +02:00
Uwe Hermann f4314d7e06 Add initial support for the ChronoVu LA8. 2011-04-04 19:40:30 +02:00
Uwe Hermann 8a7b47cdfa Revert temporary changes for 0.2 release. 2011-04-03 23:18:46 +02:00
Uwe Hermann 2f3aab0ee9 Disable some stuff which should not be in 0.2.
Disable decoders, disable lib building.
2011-04-03 22:47:51 +02:00
Uwe Hermann 847c21bc65 Hook up output/text directory with autotools.
This is needed for 'make distcheck' to work.

Also, add missing text.h to the list of source files.
2011-04-03 20:15:12 +02:00
Bert Vermeulen 4fe9a6da79 OLS driver overhaul
support for metadata in recent versions of the FPGA code
moved constants and structs out to separate header file
got rid of all device instance-specific globals
2011-04-03 06:18:05 +02:00
Bert Vermeulen f437ea3fe2 small warning fix 2011-04-03 06:18:05 +02:00
Bert Vermeulen 4487177c79 output_ols: disabled cursors don't really need to be listed 2011-04-03 06:18:05 +02:00
Uwe Hermann 82957b65b1 ASIX Sigma: Fix firmware loading bug.
When no firmware file is found, return the right error code so sigrok
doesn't continue running with no firmware loaded.

Thanks Martin Stensgård <mastensg@ping.uio.no> for the patch!
2011-03-25 13:44:16 +01:00
Uwe Hermann 8bb416becf Kill unused functions (avoid namespace pollution). 2011-03-03 20:24:25 +01:00
Uwe Hermann 120b259ea8 Drop obsolete vcd_header. 2011-03-03 20:24:25 +01:00
Uwe Hermann d078d2e5f3 Make some more items 'static'. 2011-03-03 20:24:25 +01:00
Uwe Hermann 25b4fb8557 Add doxygen comment to sr_filter_probes(). 2011-03-03 20:24:25 +01:00
Uwe Hermann cd009d5561 sr_exit(): Return int to be able to report errors. 2011-03-03 20:24:24 +01:00
Uwe Hermann f5a443f27a Make DATASTORE_CHUNKSIZE private. 2011-03-03 20:24:24 +01:00
Uwe Hermann c91404191e Add SR_HZ macro for consistency. 2011-03-03 20:24:24 +01:00
Uwe Hermann 59df0c77e2 Add SR_ prefix to the KHZ/MHZ/GHZ macros. 2011-03-03 20:24:24 +01:00
Uwe Hermann 9688b443f6 Add SR_ prefix for MAX_NUM_PROBES/MAX_PROBENAME_LEN. 2011-02-20 21:16:26 +01:00
Uwe Hermann 4cea9eb20d Make ARRAY_SIZE/ARRAY_AND_SIZE private.
This is not libsigrok-specific and should not be part of our API.
2011-02-20 21:16:26 +01:00
Uwe Hermann 54ac5277c5 Constify some more 'char *' parameters. 2011-02-20 21:16:26 +01:00
Uwe Hermann 809c5f2011 Add sr_ prefix for analog stuff some structs. 2011-02-20 21:16:24 +01:00
Uwe Hermann a887e3da97 Add sr_ prefix to receive_data_callback typedef.
Also, drop obsolete add_source() prototype from sigrok-cli.h.
2011-02-20 21:16:24 +01:00
Uwe Hermann 13b0573369 Add sr_ prefix to datafeed_callback typedef. 2011-02-20 21:16:23 +01:00
Uwe Hermann e5551f657d Drop obsolete source_callback_*(). 2011-02-20 21:16:23 +01:00
Uwe Hermann c25d2039de Add sr_ prefix to filter_probes(). 2011-02-20 21:16:23 +01:00
Uwe Hermann 8225e92175 Constify a few more 'char *' parameters. 2011-02-20 21:16:23 +01:00
Uwe Hermann 8233ff53ae Make load_hwplugins() private. 2011-02-20 21:16:22 +01:00
Uwe Hermann ee4b6342af Add sr_ prefix to list_hwplugins(). 2011-02-20 21:16:22 +01:00
Uwe Hermann 6f1be0a2d4 Add sr_ prefix to session_{add,remove}. 2011-02-20 21:16:22 +01:00
Uwe Hermann 77b454421a Disable analog bits/gnuplot output for now. 2011-02-20 21:16:20 +01:00
Uwe Hermann 29cbfeaf5c Mark some private stuff 'static'. 2011-02-20 21:16:20 +01:00
Uwe Hermann a65de0309b Add sr_ prefix for hwcap structs/functions. 2011-02-20 21:16:19 +01:00
Uwe Hermann a46d35febf Drop prototype for non-existant make_metadata(). 2011-02-20 21:00:32 +01:00
Uwe Hermann 218557b85a Quickfix for a segfault with file input via -i.
Stuff like

  ./bin/sigrok-cli -i rnd.dd -a transitioncounter

would segfault (rnd.dd consists of random bytes) because device->plugin
was NULL and was being dereferenced.

Thanks Olivier Fauchon <olivier@aixmarseille.com> for reporting.
2011-02-13 11:27:52 +01:00
Bert Vermeulen 305bde4d42 implement version 1.3 of the OLS output format, now streaming 2011-02-12 06:18:16 +01:00
Bert Vermeulen 4bfbf9fce7 demo: forgot second part of samplerate support 2011-02-12 06:14:37 +01:00
Uwe Hermann e5d1717e6d Saleae: Make more private stuff static. 2011-02-09 00:07:29 +01:00
Uwe Hermann ba0b1dc639 Doxygen config files: Initial configuration. 2011-02-08 23:59:14 +01:00