summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2017-03-03Drop obsolete workarounds in PDs.Uwe Hermann
Some PDs were using a temporary workaround for (as it turned out) a refcounting issue that was fixed in 066fbafdc3ba734a73b5f7fcfa1dbae67ddebf8a.
2017-02-28srd_decoder_load(): Drop dead code.Uwe Hermann
In 'except_out' the fail_txt variable is always non-NULL.
2017-02-28Fix memory leak in get_current_pinvalues()Marcus Comstedt
The ownership of the tuple reference is transferred to the caller, so the refcount should not be increased.
2017-02-28More refcounting fixesMarcus Comstedt
PyList_SetItem steals a reference, so code calling that must either transfer ownership or increase the refcount.
2017-02-27instance.c: Add a debug message for thread creation.Uwe Hermann
2017-02-26srd_inst_decode(): Slightly more verbose error message.Uwe Hermann
2017-02-26Fix examples to show abs_end_samplenum as exclusiveMarcus Comstedt
2017-02-26Return SRD_ERR_ARG from srd_inst_decode if samplenums are wrongMarcus Comstedt
This validates the requirements that * abs_start_samplenum continues where the previous decode ended * abs_end_samplenum is not lower than abs_start_samplenum Failure to meet these requirements will make v3 decoders crash.
2017-02-26Fix refcounting bug in set_new_condition_list()Marcus Comstedt
py_conditionlist is an owned reference (it gets passed to Py_DecRef() at the end), so we need to increment the refcount when assigning it from the borrowed reference py_conds.
2017-02-26instance.c: fix a 'matched' vs 'matches' typoGerhard Sittig
The Decoder_wait() routine will populate the .matched attribute before returning to the caller. The srd_inst_start() routine used to setup a .matches attribute which is unexpected. Make both routines consistently assign to 'matched' as that is what Python decoder implementations are referencing.
2017-02-25Add an initial serial GPIB (IEC) decoder.Marcus Comstedt
2017-02-21Clarify that {start,end,cur}_samplenum are absolute numbers.Uwe Hermann
2017-02-20instance.c: Fix a compiler warning.Uwe Hermann
../instance.c: In function ‘srd_inst_find_by_id’: ../instance.c:485:3: warning: suggest parentheses around assignment used as truth value [-Wparentheses] if (di = srd_inst_find_by_id_stack(inst_id, tmp)) ^~
2017-02-20Look up instances by ID in the full stackKarl Palsson
srd_inst_find_by_id() previously only searched for instance IDs at the bottom of any stacked decoders. Make it properly search all stacks, just like srd_inst_find_by_obj() and more usefully when trying to generate unique instance IDs. No external API change, only the explicit behaviour of the API. This fixes parts of bug #868. Signed-off-by: Karl Palsson <karlp@etactica.com>
2017-02-20Support adding multiple instances of a decoderKarl Palsson
srd_inst_new() used the decoder ID as the instance ID, preventing the use of multiple instances of the same decoder in the same session. Simply append a numerical suffix to later instances to allow more. Required changes to cleanup to reliably free all memory. Valgrind checked. This fixes parts of bug #868. Based on original work by: Soeren Apel <soeren@apelpie.net> Signed-off-by: Karl Palsson <karlp@etactica.com>
2017-02-14Added intial ADF4350/1 decoderJoel Holdsworth
2017-01-18z80: Convert to PD API version 3 (brute force)Gerhard Sittig
This implementation technically uses v3 API calls, but has yet to come up with appropriate wait() conditions, to spend less time in the decoder and have more tedious work done in the backend.
2017-01-18t55xx: Convert to PD API version 3Gerhard Sittig
2017-01-18sdcard_sd: Convert to PD API version 3Gerhard Sittig
2017-01-18qi: Convert to PD API version 3Gerhard Sittig
2017-01-18ps2: Convert to PD API version 3Gerhard Sittig
2017-01-18mdio: Convert to PD API version 3Gerhard Sittig
2017-01-18em4305: Convert to PD API version 3Gerhard Sittig
2017-01-15em4100: Convert to PD API version 3Gerhard Sittig
2017-01-07license: remove FSF postal address from boiler plate license textGerhard Sittig
Remove the FSF postal address as it might change (it did in the past). Reference the gnu.org website instead which is more stable.
2016-12-26configure.ac: Also check for Python 3.6.Uwe Hermann
2016-12-26avr_pdi: Don't pass self.samplenum (use it), simplify code.Uwe Hermann
2016-12-26avr_pdi: Convert to PD API version 3.Gerhard Sittig
Switch to the v3 decoder API: The decode() methods takes no arguments, instead it calls wait() and has common code find edges on input signals.
2016-12-26avr_pdi: introduce decoder for Atmel Program and Debug InterfaceGerhard Sittig
Introduce a decoder for Atmel's proprietary programming and debugging interface which got introduced with ATxmega chips. This implementation supports the UART style physical (two wires PDI_CLK and PDI_DATA).
2016-12-07usb_power_delivery: Convert to PD API version 3.Uwe Hermann
2016-12-07tlc5620: Convert to PD API version 3.Uwe Hermann
2016-12-07timing: Convert to PD API version 3.Uwe Hermann
2016-12-07swd: Convert to PD API version 3.Uwe Hermann
2016-12-07stepper_motor: Convert to PD API version 3.Uwe Hermann
2016-12-07spdif: Convert to PD API version 3.Uwe Hermann
2016-12-07parallel: Convert to PD API version 3.Uwe Hermann
2016-12-07onewire_link: Convert to PD API version 3.Uwe Hermann
2016-12-07jtag: Convert to PD API version 3.Uwe Hermann
2016-12-07jitter: Convert to PD API version 3.Uwe Hermann
2016-12-07ir_nec: Convert to PD API version 3.Uwe Hermann
2016-12-07i2s: Convert to PD API version 3.Uwe Hermann
2016-12-07i2c: Convert to PD API version 3.Uwe Hermann
2016-12-07guess_bitrate: Convert to PD API version 3.Uwe Hermann
2016-12-07dcf77: Convert to PD API version 3.Uwe Hermann
2016-12-07aud: Convert to PD API version 3.Uwe Hermann
2016-12-07am230x: Convert to PD API version 3.Uwe Hermann
2016-12-07Add support for the new query-based PD v3 decoder API.Uwe Hermann
For the time being, both APIs (2 and 3) will remain supported until all decoders have been converted to API version 3. Then, support for API version 2 will be dropped. Decoders using PD v3 API can benefit from both readability improvements as well as performance improvements. Up to 10x speedup has been measured in some situations (depends a lot on the decoder, the amount of data, the amount of edges in the signals, the amount of oversampling etc. etc.). This is only the first set of (basic) performance improvements for libsigrokdecode, there are various additional opportunities for further changes to improve performance. This changeset has been tested to survive a run of all the test-cases in the sigrok-test repo without issues (for the converted PDs), however it is not very well-tested yet, so there might be regressions that need to be addressed.
2016-12-06repo mgmt: git ignore compiled Python bytecode filesGerhard Sittig
2016-12-06build support: sort list of installed items, factor out pretty printerGerhard Sittig
Alpha-sort the list of installed items, to support developers which scan the list for newly added items. Factor out the logic which pretty prints installed items while maintaining a maximum screen output line length.
2016-12-06valgrind: free channelsKarl Palsson
Signed-off-by: Karl Palsson <karlp@etactica.com>