Commit Graph

1467 Commits

Author SHA1 Message Date
Uwe Hermann 67bd805523 Switch to a non-recursive automake setup.
Instead of >= 44 Makefile.am's we now only have one top-level
Makefile.am, and use the 'subdir-objects' automake option to
handle the build via non-recursive (auto)make.

This has the advantage of fewer (boilerplate or other) files and less
clutter in general, as well as performance advantages since the new
setup can build many files in parallel (with 'make -j'), not only 2 or 3
files within the same (e.g. hardware/xxxx/* subdirectory) and also since
we no longer need to build intermediate libtool helper libs per subdirectory.

A quick, non-scientific test build on a quad-core laptop with 'make -j 4'
yields a build time reduction from 35s to 19s.

All autotools features that worked before are still intact without any
regressions, including the Make targets 'install', 'uninstall', 'check',
'dist', 'clean', 'distclean' and so on, as well as all the usual portability
handling (build works on any OS, with any Make implementation such as
GNU Make or BSD Make, with any shell such as sh/ksh/zsh/bash/dash, etc. etc.)
and features such as out-of-tree build support, cross-compile support,
testsuite support (also with colored output), "silent make rules", etc. etc.
2014-03-20 13:10:05 +01:00
Uwe Hermann 9ad05e6cd2 scpi_usbtmc_libusb.c: Fix two error checks.
Two error checks had a missing "ret = ", which lead to an incorrect
value being passed to libusb_error_name().

Also, lower the level for those messages from sr_err() to sr_dbg()
since they're not fatal.
2014-03-11 19:48:47 +01:00
Uwe Hermann d8cbd659ce scpi_usbtmc_libusb.c: Consistently check for < 0 (libusb calls). 2014-03-11 19:48:00 +01:00
Uwe Hermann a84f6ad389 Fix 'aquisition' typo in a few places. 2014-03-11 19:42:20 +01:00
Matthias Heidbrink 7f7f6a2e0c gmc-mh-1x-2x: Whitespace fixes (cosmetic). 2014-03-08 11:04:27 +01:00
Matthias Heidbrink dc05dd6069 visa: Fixed missing header warnings/uninitialized variable. 2014-03-08 10:56:16 +01:00
Matthias Heidbrink d1d3b7dff9 gmc-mh-1x-2x: Cosmetic fixes for Metrahit 25S. 2014-03-08 10:50:21 +01:00
Matthias Heidbrink c6c63b08af gmc-mh-1x-2x: Fixed 300 µA range scaling. 2014-03-08 10:40:38 +01:00
Fabio 0bc3ab92e6 Fluke189 support
I can confirm that the 189 uses the same "QM" command as the 187:
<-- QM\r
--> QM,+03.225 mV AC
2014-03-05 12:33:14 +01:00
Uwe Hermann 0ab702601d brymen-bm86x: Remove std_dev_clear() wrapper. 2014-02-28 13:13:09 +01:00
Aurelien Jacobs ecaa89af0e brymen-bm86x: actual driver implementation 2014-02-27 22:50:09 +01:00
Aurelien Jacobs 8d9c8554a5 brymen-bm86x: Initial driver skeleton. 2014-02-27 22:50:09 +01:00
Bert Vermeulen a66307424e Remove std_dev_clear() wrappers from drivers. 2014-02-26 21:37:18 +01:00
Uwe Hermann 0294a409b8 conrad-digi-35-cpu: Add missing Makefile.am, minor cosmetics. 2014-02-12 15:29:14 +01:00
Matthias Heidbrink c6a2843a58 conrad-digi-35-cpu: Implemented driver. 2014-02-12 15:10:07 +01:00
Matthias Heidbrink 823b4e5817 conrad-digi-35-cpu: Initial driver framework. 2014-02-12 15:10:06 +01:00
Uwe Hermann a90061e5d1 gmc-mh-1x-2x: Shorten driver names a bit. 2014-02-12 15:04:54 +01:00
Matthias Heidbrink fadd07072b gmc-mh-1x-2x: Support for interface SI232-II with driver gmc-mh-2x-bd232. 2014-02-11 18:05:25 +01:00
Matthias Heidbrink c90beca780 gmc-mh-1x-2x: Added new driver gmc-mh-2x-bd232. 2014-02-11 18:05:25 +01:00
Matthias Heidbrink 6392d5992b gmc-mh-1x-2x: Cleanup, docs, minor fixes. 2014-02-11 18:04:54 +01:00
Daniel Elstner d8b6b28b80 scpi_visa: Add missing callback parameter.
(scpi_visa_dev_inst_new): Fix serious compiler warning due to
missing drvc parameter in prototype.
2014-02-07 20:20:20 +01:00
Uwe Hermann 52f6951c4e scpi_usbtmc_libusb: Consistent libusb error handling. 2014-02-07 19:42:27 +01:00
Uwe Hermann ed840c8612 scpi: Disable scpi_usbtmc in favor of scpi_usbtmc_libusb for now.
Having both in the list will "find" the same device twice.
2014-02-07 19:01:45 +01:00
Aurelien Jacobs 2a0f6924d2 usb: remove unused sr_usb_find_usbtmc() 2014-02-07 18:53:04 +01:00
Aurelien Jacobs 20ed3ceee7 scpi: add a libusb based implementation of usbtmc 2014-02-07 18:53:04 +01:00
Aurelien Jacobs ca28abd6a5 hameg-hmo: use the new scpi scan API 2014-02-07 18:53:04 +01:00
Aurelien Jacobs 9d3ae01b37 rigol-ds: use the new scpi scan API 2014-02-07 18:53:04 +01:00
Aurelien Jacobs b541f8376d scpi: add a generic scan API and implement it in usbtmc and serial transport
note that sr_usb_find_serial() is copied from the hameg-hmo driver
2014-02-07 18:53:04 +01:00
Aurelien Jacobs 17bdda5868 scpi: add a struct drv_context parameter to scpi_dev_inst_new() 2014-02-07 18:53:04 +01:00
Aurelien Jacobs 6e94eb4142 rigol-ds: apply :KEY:LOCK DISABLE only to DS1K 2014-02-07 18:53:04 +01:00
Aurelien Jacobs 3918fbb0cf rigol-ds: properly end WAIT_TRIGGER event handling 2014-02-07 18:53:04 +01:00
Aurelien Jacobs 83dbd9f09c rigol-ds: properly deal with dev_close() getting called multiple times 2014-02-07 18:53:04 +01:00
Uwe Hermann 7ad4e2b80b scpi_visa.c: Minor cosmetics. 2014-02-03 00:24:13 +01:00
Martin Ling 1fb2312f99 Add librevisa SCPI backend. 2014-02-02 22:42:25 +01:00
Uwe Hermann a6c12f3f70 Drop unneeded comments. 2014-01-30 17:52:44 +01:00
Daniel Elstner 6358f0a956 sysclk-lwla: Implement SR_CONF_CLOCK_EDGE setting. 2014-01-30 12:04:42 +01:00
Bert Vermeulen 625763e2c2 ols: Code cleanup and more debug output. 2014-01-30 11:58:07 +01:00
Bert Vermeulen 016e72f30e ols: Fix endianness problems in protocol. 2014-01-29 15:34:24 +01:00
Daniel Elstner e6e54bd253 sysclk-lwla: Add support for external trigger input.
Implement the configuration setting TRIGGER_SOURCE with the
choices CH (logic channels) and TRG (external trigger input).
Also implement the TRIGGER_SLOPE setting for selecting the
edge to trigger on (rising or falling).
2014-01-28 23:34:53 +01:00
Daniel Elstner e0df15d436 sysclk-lwla: Simplify and optimize word extraction.
It turns out that all LWLA protocol responses consist either
of 32-bit units or of 32-bit units combined into 64-bit units.
Thus it makes sense to double the basic unit size for reading
from 16 bit to 32 bit.
We cannot do the same for command messages though, as those
actually do use 16-bit quantities in some places, and 32-bit
arguments are not always aligned to 32-bit boundaries.

(acquisition_state.xfer_buf_in): Change unit type to uint32_t,
and update related macros and code accordingly.
(LWLA_TO_UINT32): New macro to replace LWLA_READ32, operating
directly on 32-bit values instead of pointers to 16-bit units.
Make use of a compiler-recognized idiom for bitwise rotation
to efficiently swap the 16-bit halves of a 32-bit word.
(LWLA_TO_UINT16): New macro to replace LWLA_READ16.
(LWLA_READ64): Remove unused macro.
(LWLA_WORD_[0123]): Slightly simplify 16-bit word extraction.
2014-01-28 23:34:53 +01:00
Daniel Elstner 5413df1952 sysclk-lwla: Limit use of SR_ERR_ARG to user-supplied arguments.
The return code SR_ERR_ARG is intended for reporting unsupported
or inapplicable device configuration settings and is not a hard
error.  In order to indicate failure of internal sanity checks,
use SR_ERR_BUG instead.
2014-01-28 23:26:16 +01:00
poljar (Damir Jelić) 1c873c114c scpi: Limit the log message in get_string() to 70 characters. 2014-01-28 21:25:34 +01:00
poljar (Damir Jelić) 9d156555a5 demo: Cast to double while calculating the pattern frequency.
Without the cast non integer frequencies weren't possible (e.g. with a sampling
frequency of 50Hz we would end up with a signal frequency of 2Hz instead of
2.5Hz). The result were signals which had an incorrect number of samples per
period.

BugLink: http://sigrok.org/bugzilla/show_bug.cgi?id=297
2014-01-28 21:23:54 +01:00
Bert Vermeulen 464d49360a rigol-ds: Deal with dev_close() getting called multiple times. 2014-01-27 21:19:41 +01:00
Daniel Elstner ca9b9f4834 hwdriver: Change TRIGGER_SLOPE setting to string type.
Drivers interpreted the uint64 values to the SR_CONF_TRIGGER_SLOPE
configuration setting in different ways.  In order to orthogonalize
the API, change the type of the setting to a string with the same
format as uses for logic probes.
2014-01-27 20:55:01 +01:00
Bert Vermeulen fe90fbb782 demo: Require sample limit. 2014-01-25 21:20:29 +01:00
Daniel Elstner c2066c2104 sysclk-lwla: Load bitstream files in RBF format.
Modify the bitstream loading routine to work directly with the
Raw Binary Files (.rbf) generated by Altera tools.  Previously,
a custom format was used which was basically an RBF preceded by
a 4-byte header specifying the transfer length.
2014-01-25 20:44:42 +01:00
Bert Vermeulen 7f4975b440 demo: Keep separate counters for logic and analog sources.
Since they have different internal buffer sizes, their output counters
are not in sync. See bug 295.
2014-01-25 20:39:50 +01:00
Martin Ling fe0d9caa88 rigol-ds: Fix a couple of compile warnings. 2014-01-23 23:12:37 +01:00
Daniel Elstner ee38c8ba3e sysclk-lwla: Implement config_commit() callback.
Move pre-acquisition hardware setup to the new config_commit()
callback.  At the moment, the only setting applied at commit
time is switching the clock source, which involves uploading
a new bitstream to the FPGA.
2014-01-23 02:43:16 +01:00