Bert Vermeulen
3ffb6964a1
sr/drivers: change driver dev_acquisition_start/_stop calls to use sdi
2012-08-03 11:27:31 +02:00
Bert Vermeulen
25a0f108f4
sr/drivers: change driver dev_open/dev_close calls to use sdi
2012-08-03 11:27:31 +02:00
Bert Vermeulen
6f4b1868e8
sr/drivers: use sr_dev_inst instead of device index for dev_config_set()
...
All driver API calls using device index as a parameter will instead use a
const struct sr_dev_inst.
2012-08-03 10:27:39 +02:00
Bert Vermeulen
b2b5445c30
asix-sigma: don't use deprecated hwcap_get_all() driver API call
2012-08-03 10:27:39 +02:00
Bert Vermeulen
d7bbecfdb9
asix-sigma: scan/info_get fixes
2012-08-03 10:27:39 +02:00
Bert Vermeulen
4147960558
asix-sigma: use new driver info_get() API call
2012-08-03 10:27:38 +02:00
Bert Vermeulen
eec944c5b8
asix-sigma: don't attempt to free static struct
...
Added more debugging as well.
2012-08-03 10:27:38 +02:00
Bert Vermeulen
0448d11097
asix-sigma: use new scan API + fixes
...
Now freeing FTDI context and driver-private context.
2012-08-03 10:27:38 +02:00
Bert Vermeulen
ed300b9f6a
asix-sigma: use driver struct-based device instance list
2012-08-03 10:27:38 +02:00
Bert Vermeulen
61136ea603
sr: add new driver API call: scan()
...
This changes the semantics of the init() call as well. That now only
initializes the driver -- an administrative affair, no hardware gets
touched during this call. It returns a standard SR_OK or SR_ERR* code.
The scan() call does a discovery run for devices it knows, and returns
the number found. It can be called at any time.
2012-08-03 10:27:36 +02:00
Bert Vermeulen
40dda2c3a5
sr: remove unused argument from hardware driver function init()
...
It was actually used in one way: the session file loaded abused it for
passing in the filename -- something it definitely wasn't intended for.
This now uses the proper way to pass arguments to a driver: the new
SR_HWCAP_SESSIONFILE.
The OLS driver could also use it as an indication of the serial port to
use instead of actively probing all serial ports on the system, but there
wasn't any frontend code that passed in such a parameter, making it
entirely useless. That will soon be handled differently with the new
scan() API call, regardless.
2012-08-03 10:27:36 +02:00
Bert Vermeulen
45c59c8bdd
sr: moved sigrok.h so libsigrok/libsigrok.h
...
All frontends will have to include <libsigrok/libsigrok.h> from now on.
This header includes proto.h and version.h, both installed from the
distribution into $INCLUDE/libsigrok/ as well.
The only dynamically changed header is now version.h, which has both
libsigrok and libtool compile-time versions in it.
2012-07-05 01:17:28 +02: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
6352d030df
sr: We support both SIGMA and SIGMA2.
...
Also, a few minor coding-style fixes etc.
2012-05-03 01:41:02 +02:00
Håvard Espeland
42cdeef626
sigma: Fix segfault when no Sigma present.
2012-04-23 13:36:17 +02:00
Håvard Espeland
868501fa46
sigma: Bump copyright notice.
2012-04-22 15:10:46 +02:00
Håvard Espeland
e210c6c090
sr: Remove zlib dependency.
...
No longer needed by Sigma driver.
2012-04-22 14:59:10 +02:00
Håvard Espeland
e3fff420da
sigma: Add support for SIGMA2 (req. new firmware).
2012-04-22 14:59:10 +02:00
Håvard Espeland
3c36c403fa
sigma: Use heap for datafeed packet and header.
2012-04-22 14:59:10 +02:00
Håvard Espeland
805919b042
sigma: Fix bugs in receive_data callback.
...
- Poll data position on Sigma for every iteration.
- Return TRUE when no data ready.
2012-04-22 14:59:10 +02:00
Uwe Hermann
0aeb0ccd55
sr: sr_err() et. al. don't need trailing \n.
2012-04-10 23:25:57 +02:00
Uwe Hermann
590b9f9a91
sr: Fix some samplerate fields.
2012-03-24 22:32:47 +01: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
d261dbbfcc
sr: Fix/document probe names.
2012-02-28 01:09:29 +01:00
Uwe Hermann
ea9cfed7a5
sr: Consistent ctx name for per-dev-inst context.
2012-02-18 18:07:42 +01:00
Uwe Hermann
6b3dfec8de
sr: Fix incorrectly renamed functions.
2012-02-18 12:25:43 +01:00
Uwe Hermann
ee61b340da
sr: Remove unneeded temp. variable use.
2012-02-18 12:16:49 +01:00
Uwe Hermann
a9a245b428
sr: s/config_set/dev_config_set/.
...
This functions is per-device-instance, so use dev_ as prefix as with
the other ones.
2012-02-18 12:11:15 +01:00
Uwe Hermann
69040b7c8f
sr: s/acquisition_*/dev_acquisition_*/.
...
These functions are per-device-instance, so use dev_ as prefix as with
the other ones.
2012-02-18 12:03:49 +01:00
Uwe Hermann
e7eb703fff
sr: opendev/closedev -> dev_open/dev_close.
2012-02-18 11:57:43 +01:00
Uwe Hermann
8105505d06
sr: s/st*_acquisition/acquisition_st*/.
2012-02-18 11:46:51 +01:00
Uwe Hermann
5097b0d091
sr/cli/gtk/qt: s/get_dev_info/dev_info_get/.
2012-02-18 11:41:21 +01:00
Uwe Hermann
a7d05fcb38
sr/cli/gtk/qt: s/configuration/config/.
2012-02-18 00:31:35 +01:00
Uwe Hermann
ffedd0bf5d
sr/cli/gtk: s/capability/hwcap/.
2012-02-18 00:17:18 +01:00
Uwe Hermann
1d9a8a5fe1
sr/cli/gtk: A few more s/instance/inst/.
2012-02-17 23:55:27 +01:00
Uwe Hermann
bb7ef79377
sr/cli/gtk/qt: s/device/dev/ in many places.
...
Also, a few s/instance/inst/ occurences.
2012-02-17 23:47:00 +01:00
Uwe Hermann
d68e2d1a21
sr: Some more s/device_instance/dev_inst/.
2012-02-17 22:40:51 +01:00
Uwe Hermann
7b48d6e104
sr: Prefix log messages with subsystem string.
2012-02-17 22:40:51 +01:00
Bert Vermeulen
341ce41545
sr: don't free driver-specific per-device struct in drivers
...
sr_dev_inst_free() takes care of that.
2012-02-14 12:26:22 +01:00
Bert Vermeulen
da1466d677
sr: rename more functions to sr_thing_action format
...
Also improved the interface to find capabilities in a hardware plugin.
2012-02-14 00:23:51 +01:00
Bert Vermeulen
d3683c42e7
sr: rename all sr_device_instance_* functions to sr_dev_inst_*
2012-02-13 22:45:49 +01:00
Uwe Hermann
57ab7d9f92
sr: cleanup callback: Return int.
2012-02-13 19:49:01 +01:00
Uwe Hermann
3010f21c91
sr: stop_acquisition callback: Return int.
2012-02-13 19:49:00 +01:00
Uwe Hermann
133a37bfba
Use g_try_malloc/g_free/g_strdup consistently.
...
Avoid plain malloc()/free() in sr/srd, especially in the API calls.
Also avoid g_malloc*() in favor of g_try_malloc*().
Use g_strdup() instead of strdup() so that we can use g_free()
consistently everywhere.
Exceptions: Stuff that is allocated via other libs (not using glib),
should also be properly free'd using the respective free-ing function
(instead of g_free()). Examples: Stuff allocated by libusb, libftdi, etc.
Also, use sr_err() instead of sr_warn() for actual errors. sr_warn() is
meant for non-fatal/uncritical warnings.
2012-02-11 22:34:16 +01:00
Uwe Hermann
8c4b600393
sr: asix: Change a free() to g_free() as it should be.
...
This also fixes a compiler warning (on FreeBSD at least).
2012-02-11 00:38:48 +01:00
Uwe Hermann
0f8522bf74
Project-wide consistent naming for #include guards.
...
Document the naming scheme in HACKING.
2012-02-05 15:05:13 +01:00
Uwe Hermann
5c64390e5a
sr/cli/gtk: Remove analog left-overs from API.
...
This will come back in some form or another later, but for now
don't clutter the API with non-working stuff. Removing stuff from APIs
is not possible without breaking the API, adding stuff later is simpler.
2012-02-05 15:05:12 +01:00
Uwe Hermann
ca070ed9a0
sr: Make more symbols private via static/SR_PRIV.
...
Additional zeroplus fixes:
- Remove unneeded function prototypes from .h files.
- Remove unused variables and/or use standard libusb #defines instead.
- Remove unused GL_* error code #defines.
2012-02-02 21:46:10 +01:00
Uwe Hermann
1a081ca67d
sr: Mark API functions with SR_API/SR_PRIV.
...
Use SR_API to mark public API symbols, and SR_PRIV for private symbols.
Variables and functions marked 'static' are private already and don't
need SR_PRIV. However, functions which are not static (because they need
to be used in other libsigrok-internal files) but are also not meant to
be part of the public libsigrok API, must use SR_PRIV.
This uses the 'visibility' feature of gcc (requires gcc >= 4.0).
Details: http://gcc.gnu.org/wiki/Visibility
2012-02-02 00:03:17 +01:00
Bert Vermeulen
0146970797
sr: remove unused time/duration fields from datafeed packets
2012-02-01 02:59:41 +01:00
Uwe Hermann
db8ae7b941
sr/srd: Remove/fix non-applicable autotools stuff.
2011-12-30 11:14:24 +01:00
Uwe Hermann
c37d2b1ba1
probe names: Fix cosmetics, add docs, fix off-by-one.
2011-12-29 19:50:14 +01:00
Kristoffer Sjöberg
464d12c72a
Move the probe naming to the creator of the device, and let each driver name its own probes.
2011-12-29 17:04:31 +01:00
Uwe Hermann
b7f09cf86d
libsigrok: Fix #includes.
...
In the lib, we should only #include "sigrok.h" or "sigrok-internal.h",
but not the (possibly installed and thus different/older versions) via
<sigrok.h> or <sigrok-internal.h>.
Frontends should of course use <sigrok.h> and <sigrok-internal.h>.
2011-12-28 23:07:08 +01:00
Uwe Hermann
cb93f8a927
Other method to avoid "unused var" compiler warnings.
...
The '(void)varname' method is nicer than 'varname = varname' and also
prevents warnings when compiling sigrok with clang instead of gcc.
2011-11-24 22:57:48 +01:00
Uwe Hermann
a562c3a2e5
libsigrok: Use sr_err() et al instead of printf.
2011-11-17 23:47:45 +01:00
Uwe Hermann
719c5a934c
Fix some compiler warnings.
2011-11-15 21:05:40 +01:00
Bert Vermeulen
9c939c5132
use new datafeed packet format
2011-06-19 14:28:50 +02:00
Uwe Hermann
340cfac0f0
log messages: Use device name, not vendor name.
...
There can be multiple devices from the same vendor, obviously.
2011-05-05 13:06:14 +02:00
Uwe Hermann
697785d1ae
libsigrok: closedev() now has a return code.
...
This is useful to allow frontends to react upon close failures in a
way they see fit (e.g. a popup in the GUI, or error message in the CLI).
They can also still ignore the error if they want, of course.
2011-05-05 13:06:14 +02:00
Uwe Hermann
86f5e3d826
libsigrok: Rename open/close to opendev/closedev.
2011-05-05 13:06:11 +02:00
Uwe Hermann
da0918aae0
ASIX: Small consistency fixes.
2011-04-25 00:21:40 +02:00
Uwe Hermann
e519ba8645
Hardware drivers: Use names for struct entries.
2011-04-19 00:18:06 +02:00
Uwe Hermann
12ad53f5a6
ASIX Sigma: Improve error handling a bit.
2011-04-16 18:08:18 +02:00
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
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
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
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
54ac5277c5
Constify some more 'char *' parameters.
2011-02-20 21:16:26 +01:00
Uwe Hermann
6f1be0a2d4
Add sr_ prefix to session_{add,remove}.
2011-02-20 21:16:22 +01:00
Uwe Hermann
60679b18e6
Add sr_ prefix to 'struct samplerates'.
2011-02-08 22:28:01 +01:00
Uwe Hermann
8a2efef2d5
Add sr_ prefix to session related API functions.
2011-02-08 22:28:00 +01:00
Uwe Hermann
1afe89897c
Add sr_ prefix for 'struct probe'.
2011-02-08 22:27:58 +01:00
Uwe Hermann
3bbd9849e9
Fix warnings: g_fopen() needs <glib/gstdio.h>.
2011-02-06 02:14:57 +01:00
Uwe Hermann
868d8cefec
Use glib's g_fopen() instead of fopen().
2011-02-05 20:03:17 +01:00
Uwe Hermann
45fdfa307d
MinGW: Use "b" in all fopen() calls.
...
This is required for proper operation on Windows/MinGW, and doesn't
affect other OSes, most POSIX systems simply ignore the "b".
2011-02-04 23:52:16 +01:00
Uwe Hermann
0f33365007
Revert FIRMWARE_DIR / DECODERS_DIR method for now.
...
There were several issues with the other method, revert for now.
2011-02-04 20:38:20 +01:00
Uwe Hermann
22b0238344
Fix build when no libusb-LA is compiled.
...
Until now the build would break if the user doesn't enable at least one
of the libusb1.0-based LAs. I.e., you could not compile only OLS, or
only the demo driver.
2011-02-02 10:25:52 +01:00
Uwe Hermann
5a2326a71b
SR_ prefix for all public enums.
2011-01-30 18:32:59 +01:00
Uwe Hermann
5c2d46d1db
Prefix device structs with sr_.
2011-01-30 18:32:58 +01:00
Uwe Hermann
9f8274a544
Add a field for the full name of a device.
...
Also, show this long/full name in 'sigrok-cli -V'.
2011-01-30 18:32:58 +01:00
Uwe Hermann
b9c735a275
Prefix datafeed structs with sr_.
2011-01-30 18:32:57 +01:00
Uwe Hermann
d32d961d17
get_sr_device_instance() -> sr_get_device_instance().
2011-01-30 18:32:56 +01:00
Uwe Hermann
a00ba01228
Change all sigrok_ prefixes to sr_.
2011-01-30 18:32:55 +01:00
Uwe Hermann
e46b8fb154
Change SIGROK_ prefix to SR_.
2011-01-30 18:32:53 +01:00
Uwe Hermann
5819184b22
Remove duplicate FIRMWARE_DIR includes.
...
We use AC_DEFINE_UNQUOTED in configure.ac now to put the FIRMWARE_DIR #define
in the config.h file, which is included where we need the #define.
2011-01-21 21:14:37 +01:00
Håvard Espeland
94ba4bd689
Sigma: Update set_configuration to reflect API.
2011-01-18 23:12:57 +01:00
Håvard Espeland
7c70c53843
Sigma: Set default samplerate to 200 KHz.
2011-01-18 22:39:46 +01:00
Håvard Espeland
5b5ea7c6d2
Sigma: Only send trigger packet if enabled.
...
The Sigma hardware emits a default trigger event.
2011-01-18 22:24:23 +01:00
Håvard Espeland
abda62ced8
Sigma: Never send empty packets.
2011-01-18 22:17:43 +01:00
Håvard Espeland
88c51afe87
Sigma: Support for decoding partial chunks.
...
Samples are stored in chunks and the last samples do not fill up
a complete chunk. This patch adds support for decoding partial
chunks.
2011-01-16 17:05:14 +01:00
Håvard Espeland
98b8cbc17e
Sigma: Limit number of edge triggers to 1.
...
Actually, Sigma supports 2 rising/falling triggers,
but they are ORed and the current trigger syntax
does not permit ORed triggers.
2011-01-15 20:01:00 +01:00
Håvard Espeland
31facdd3c5
Sigma: Download samples from partial chunks.
2011-01-15 19:20:31 +01:00
Håvard Espeland
9996570987
Sigma: Move sigma state to device specific struct
...
Thanks to Daniel Ribeiro for contributing this patch. Some
modifications were done.
Not tested on multiple Sigmas, because of lack of hardware.
2011-01-15 17:04:21 +01:00
Uwe Hermann
c2bd92ec08
Slightly more consistent #include-guard naming.
2011-01-15 14:48:21 +01:00
Håvard Espeland
9be9893eed
Sigma: Check state in hw_closedev
...
If the device is closed without previously running hw_openedev
the driver crashes (happens in cleanup). This patch checks
if the device has been opened.
2011-01-15 14:13:23 +01:00
Daniel Ribeiro
c2616fb9fa
update plugins and cli to use new DF_HEADER
2011-01-10 15:12:38 -02:00
Bert Vermeulen
4c046c6bcc
change all DF_LOGIC* to a single DF_LOGIC type
...
The datafeed packet has a new field 'unitsize' to denote the number of
bytes per sample in the payload.
2011-01-09 06:32:38 +01:00
Uwe Hermann
7c17ac6cc4
Only build hardware drivers if they're enabled.
2011-01-08 20:58:43 +01:00
Uwe Hermann
340f6e7aea
Fix out-of-tree build.
...
Use libtool "noinst" local helper libs and use one Makefile.am per
subdir, which is the usual/preferred method. These helper libraries are
purely local and will not be installed.
This also fixes out-of-tree builds of sigrok, i.e. building in a
directory other than the sigrok source directory, e.g.
$ cd /home/user
$ git clone ...sigrok
$ cd sigrok
$ ./autogen.sh
$ mkdir /tmp/foo
$ cd /tmp/foo
$ /home/user/sigrok/configure
$ make
$ make install
This will place all build results (.o files, .la files, etc) in the
local build directory (/tmp/foo) instead of the source directory
(/home/user/sigrok in this example). The installation directory is
selected via the --prefix configure option (/usr/local per default).
2011-01-08 03:32:25 +01:00
Håvard Espeland
bdfc7a8974
Sigma: Small cleanups.
2010-05-03 22:01:03 +02:00
Håvard Espeland
36b1c8e61b
Sigma: Use software trigger to pinpoint exact sample.
2010-05-03 21:32:03 +02:00
Håvard Espeland
6aac77375b
Sigma: Add state machine for tracking Sigma status.
2010-05-03 19:04:10 +02:00
Håvard Espeland
a42aec7f6e
Sigma: Merge storage of rise/fall triggers.
2010-05-03 15:06:43 +02:00
Håvard Espeland
4ae1f45136
Sigma: Minor cleanups.
2010-05-02 21:59:14 +02:00
Håvard Espeland
11fc8d9d93
Sigma: Set capture ratio correctly.
2010-05-02 21:59:14 +02:00
Håvard Espeland
c53d793f03
Sigma: 50 MHZ falling/rising edge trigger support.
...
Falling/rising edge and value/mask triggers can be combined, e.g.:
--triggers 1=0,2=r,3=1,4=1
2010-05-02 16:32:24 +02:00
Håvard Espeland
f758d0744d
Sigma: Fix simple trigger LUT calculation.
2010-05-02 13:00:41 +02:00
Håvard Espeland
ee492173a1
Sigma: Value/mask trigger support in 50 MHz mode.
2010-05-01 23:16:27 +02:00
Håvard Espeland
eec5275e2f
Sigma: Small cleanups.
2010-05-01 23:16:18 +02:00
Håvard Espeland
57bbf56b84
Sigma: Add triggers support for 100 and 200 MHz.
2010-05-01 00:00:57 +02:00
Håvard Espeland
ed09fd07f7
Sigma: Minor cleanup and add more samplesrates.
2010-04-30 23:54:14 +02:00
Uwe Hermann
9ddb2a125d
Sigma: Small cosmetic fixes.
2010-04-29 00:32:44 +02:00
Håvard Espeland
edca2c5c22
Sigma: Support for low samplerates
...
Lowest samplerate supported in driver is 250 KHz
2010-04-28 22:45:13 +02:00
Håvard Espeland
f78898e947
Sigma: Support 50 and 200 MHz modes
2010-04-28 21:24:41 +02:00
Håvard Espeland
a8116d764b
Sigma: Rename firmware files
2010-04-28 21:20:27 +02:00
Håvard Espeland
e8397563a2
Sigma: Upload 50, 100 or 200 MHz firmware
2010-04-28 20:01:15 +02:00
Håvard Espeland
f6564c8d19
Sigma: Move upload firmware into a function
2010-04-28 19:51:13 +02:00
Uwe Hermann
fefa18001a
ASIX SIGMA: Coding style fixes (via indent mostly).
...
Also, end all/most comments with full stop and avoid variable/array
definitions in the middle of functions.
2010-04-28 00:17:28 +02:00
Uwe Hermann
204b1629bd
asix-sigma.h: Add missing license header.
2010-04-27 22:46:59 +02:00
Uwe Hermann
911f18341b
ASIX Sigma: Use common license header format.
2010-04-27 22:44:15 +02:00
Håvard Espeland
28a35d8ab3
This commit adds initial support for the Asix Sigma Logic Analyzer. Currently, only 200 MHz is supported, and only with software trigger. Firmware for the device will be distributed separately, with permission from the vendor.
...
Signed-off-by: Håvard Espeland <gus@ping.uio.no>
2010-04-27 13:16:01 -07:00