Commit Graph

401 Commits

Author SHA1 Message Date
Martin Ling 6aabf62a90 Use new SP_ERR_SUPP error to indicate unsupported operations. 2013-11-22 21:46:26 +01:00
Uwe Hermann 6a1d6318e5 Makefile.am: Add missing linux_termios.h.
If the file is not listed in SOURCES, it won't end up in the tarball.

Thanks to Dan Horák for the report.
2013-11-22 20:28:20 +01:00
Martin Ling 68ec29db5e Check for termiox support at runtime. 2013-11-22 20:28:20 +01:00
Martin Ling 8d43110ad7 Fix memory leaks. 2013-11-22 20:28:20 +01:00
Uwe Hermann 7de20e3915 Use common 3-digit package version number. 2013-11-22 16:44:29 +01:00
Uwe Hermann 1d5d2a166f Temporarily disable USE_TERMIOX code (breaks the lib).
On some systems the use of the code enabled by USE_TERMIOX leads to a
non-working sp_open() which breaks all functionality provided by the lib.

Thus, temporarily disable that code until the details are investigated.

This has been tested with a serial port DMM and the OLS logic analyzer
on an x86 64bit Linux system with kernel version 3.11. The code compiles
fine but doesn't work at runtime. The configure output included:

checking for struct termios2... yes
checking for struct termiox... yes

The root cause for the problem is that the ioctl(fd, TCGETX, data) call in
get_flow() returns -1 ("Invalid argument"), which in turn lets sp_open()
return SP_ERR_FAIL.
2013-11-22 16:44:19 +01:00
Uwe Hermann 24abdb680f Minor cosmetics. 2013-11-22 16:10:55 +01:00
Uwe Hermann 8645feda60 Add missing #include guards. 2013-11-22 11:59:12 +01:00
Uwe Hermann da21834e42 Fix the build on non-Linux platforms. 2013-11-22 11:56:40 +01:00
Bert Vermeulen d2ac0e3bbe Ignore linux_termios leftovers. 2013-11-22 02:24:04 +01:00
Martin Ling 82f424e6cd Fix to sp_flush() on Unix. 2013-11-22 02:19:12 +01:00
Martin Ling 3f099f4fe8 Add missing @param port entries to documentation. 2013-11-22 02:11:45 +01:00
Martin Ling 8cf7c6978f Add sp_get_signals() function. 2013-11-22 02:11:40 +01:00
Martin Ling 90cc3ee62b Add sp_start_break() and sp_end_break() functions. 2013-11-22 02:11:34 +01:00
Martin Ling 69a3739ca0 Add sp_drain() function. 2013-11-22 02:11:34 +01:00
Martin Ling ea34fba899 Add missing @param port entry to documentation. 2013-11-22 01:53:27 +01:00
Martin Ling fd8fd11a4e Make sp_flush take an option for what to flush. 2013-11-22 01:53:22 +01:00
Martin Ling a036341bdf Use a more logical set of SP_MODE_* flags. 2013-11-22 01:48:02 +01:00
Martin Ling 20e63a77b5 Define SP_PARITY_* more logically. 2013-11-22 01:47:34 +01:00
Martin Ling 70518e4fdd Document this madness. 2013-11-21 11:52:54 +00:00
Martin Ling 40978c2b41 Support non-standard flow control modes on Linux. 2013-11-21 11:52:41 +00:00
Martin Ling 7a6d2196e0 Support custom baudrates on Linux. 2013-11-21 11:51:08 +00:00
Matthias Heidbrink 31b3a8f5b5 Added support for non-standard baud rates for Apple. 2013-11-20 19:18:36 +00:00
Martin Ling e29b93a572 Retrieve XON/XOFF setting on Unix. 2013-11-19 20:46:52 +00:00
Uwe Hermann cf9d365ce0 Doxygen cosmetics. 2013-11-19 20:10:56 +01:00
Uwe Hermann 626d280fd3 Consistently use the "@" notation for Doxygen tags. 2013-11-19 19:37:03 +01:00
Uwe Hermann eac329d26b Cosmetics, whitespace, consistency fixes. 2013-11-19 19:32:01 +01:00
Uwe Hermann 705bdc6947 get_config(): Add a quickfix for xon_xoff.
The config->xon_xoff variable is not filled correctly with data read
from the current serial port config. Without this, the value of the
variable will be bogus and some code that depends on the variable will fail.

Note: This is just a temporary quickfix, not a proper final solution.
2013-11-19 19:32:01 +01:00
Uwe Hermann 4b448bc542 .gitignore: Add libserialport.h. 2013-11-19 17:58:48 +01:00
Uwe Hermann 23922313b3 set_config(): Add missing CS5 handling. 2013-11-19 12:32:01 +01:00
Uwe Hermann c85d0a28de Fix minor Doxygen warning. 2013-11-19 12:30:55 +01:00
Martin Ling c200f5c144 Clarify usage of -1 in configuration API. 2013-11-19 03:14:09 +00:00
Martin Ling 091e75fedc Group functions for documentation. 2013-11-19 03:02:45 +00:00
Martin Ling eb6ed20f51 Use named enums instead of ints for clearer documentation. 2013-11-19 02:36:22 +00:00
Martin Ling cd5f52812d Add doxygen documentation. 2013-11-19 02:17:38 +00:00
Martin Ling bf2cbd652f Mark config argument to sp_set_config as const. 2013-11-19 01:13:09 +00:00
Martin Ling 823690ae3e Additional argument checking for config functions. 2013-11-18 20:08:25 +00:00
Martin Ling 8f189c4c0f Remove sp_ prefix from private port data structure. 2013-11-18 20:04:54 +00:00
Martin Ling 348e23ccbb Tidy up static functions. 2013-11-18 20:02:30 +00:00
Martin Ling 8f471c669f Make sure OS handles are set correctly for unopened / closed ports. 2013-11-18 20:00:15 +00:00
Martin Ling c6754b4517 Get Xon/Xoff status on Windows. 2013-11-18 19:55:43 +00:00
Martin Ling e33ab9aaf2 Refactor port configuration code. 2013-11-18 19:52:37 +00:00
Martin Ling 067417af4f Add sp_get_config() function. 2013-11-16 20:55:53 +00:00
Martin Ling 7e6fb0152c Update documentation. 2013-11-15 11:43:07 +00:00
Martin Ling a33d84f6a0 Remove disused flowcontrol field from sp_port_config. 2013-11-15 11:43:07 +00:00
Martin Ling da2748bfb3 Eliminate lengthy switch/case blocks for baudrates. 2013-11-15 11:43:07 +00:00
Martin Ling 18fc2dd12b Add sp_set_flowcontrol helper function. 2013-11-15 11:43:07 +00:00
Martin Ling 824dcb4561 Store control bits in sp_port_data on Unix. 2013-11-15 11:43:07 +00:00
Martin Ling e96d8bd288 Split up prototypes in include file for clarity. 2013-11-15 11:43:07 +00:00
Martin Ling 9069c2fbb2 Add functions for setting individual port parameters. 2013-11-15 11:43:07 +00:00