serial: Eliminate serial_read(), serial_write() and SERIAL_NONBLOCK.

This commit is contained in:
Martin Ling 2014-09-21 21:41:25 +01:00 committed by Uwe Hermann
parent 6c592ece70
commit 98edee7926
2 changed files with 19 additions and 34 deletions

View File

@ -438,8 +438,6 @@ struct sr_serial_dev_inst {
char *port;
/** Comm params for serial_set_paramstr(). */
char *serialcomm;
/** Port is non-blocking. */
int nonblocking;
/** libserialport port handle */
struct sp_port *data;
/** libserialport event set */
@ -620,7 +618,6 @@ SR_PRIV int soft_trigger_logic_check(struct soft_trigger_logic *st, uint8_t *buf
enum {
SERIAL_RDWR = 1,
SERIAL_RDONLY = 2,
SERIAL_NONBLOCK = 4,
};
typedef gboolean (*packet_valid_callback)(const uint8_t *buf);
@ -628,14 +625,10 @@ typedef gboolean (*packet_valid_callback)(const uint8_t *buf);
SR_PRIV int serial_open(struct sr_serial_dev_inst *serial, int flags);
SR_PRIV int serial_close(struct sr_serial_dev_inst *serial);
SR_PRIV int serial_flush(struct sr_serial_dev_inst *serial);
SR_PRIV int serial_write(struct sr_serial_dev_inst *serial,
const void *buf, size_t count);
SR_PRIV int serial_write_blocking(struct sr_serial_dev_inst *serial,
const void *buf, size_t count);
SR_PRIV int serial_write_nonblocking(struct sr_serial_dev_inst *serial,
const void *buf, size_t count);
SR_PRIV int serial_read(struct sr_serial_dev_inst *serial, void *buf,
size_t count);
SR_PRIV int serial_read_blocking(struct sr_serial_dev_inst *serial, void *buf,
size_t count);
SR_PRIV int serial_read_nonblocking(struct sr_serial_dev_inst *serial, void *buf,

View File

@ -34,7 +34,7 @@
*
* @param serial Previously initialized serial port structure.
* @param[in] flags Flags to use when opening the serial port. Possible flags
* include SERIAL_RDWR, SERIAL_RDONLY, SERIAL_NONBLOCK.
* include SERIAL_RDWR, SERIAL_RDONLY.
*
* If the serial structure contains a serialcomm string, it will be
* passed to serial_set_paramstr() after the port is opened.
@ -62,8 +62,6 @@ SR_PRIV int serial_open(struct sr_serial_dev_inst *serial, int flags)
else if (flags & SERIAL_RDONLY)
sp_flags = SP_MODE_READ;
serial->nonblocking = (flags & SERIAL_NONBLOCK) ? 1 : 0;
ret = sp_open(serial->data, sp_flags);
switch (ret) {
@ -209,7 +207,7 @@ static int _serial_write(struct sr_serial_dev_inst *serial,
}
/**
* Write a number of bytes to the specified serial port.
* Write a number of bytes to the specified serial port, blocking until finished.
*
* @param serial Previously initialized serial port structure.
* @param[in] buf Buffer containing the bytes to write.
@ -219,16 +217,6 @@ static int _serial_write(struct sr_serial_dev_inst *serial,
* @retval SR_ERR Other error.
* @retval other The number of bytes written.
*/
SR_PRIV int serial_write(struct sr_serial_dev_inst *serial,
const void *buf, size_t count)
{
return _serial_write(serial, buf, count, serial->nonblocking);
}
/**
* Write a number of bytes to the specified serial port, blocking until finished.
* @copydetails serial_write()
*/
SR_PRIV int serial_write_blocking(struct sr_serial_dev_inst *serial,
const void *buf, size_t count)
{
@ -237,7 +225,14 @@ SR_PRIV int serial_write_blocking(struct sr_serial_dev_inst *serial,
/**
* Write a number of bytes to the specified serial port, return immediately.
* @copydetails serial_write()
*
* @param serial Previously initialized serial port structure.
* @param[in] buf Buffer containing the bytes to write.
* @param[in] count Number of bytes to write.
*
* @retval SR_ERR_ARG Invalid argument.
* @retval SR_ERR Other error.
* @retval other The number of bytes written.
*/
SR_PRIV int serial_write_nonblocking(struct sr_serial_dev_inst *serial,
const void *buf, size_t count)
@ -284,7 +279,7 @@ static int _serial_read(struct sr_serial_dev_inst *serial, void *buf,
}
/**
* Read a number of bytes from the specified serial port.
* Read a number of bytes from the specified serial port, block until finished.
*
* @param serial Previously initialized serial port structure.
* @param buf Buffer where to store the bytes that are read.
@ -294,16 +289,6 @@ static int _serial_read(struct sr_serial_dev_inst *serial, void *buf,
* @retval SR_ERR Other error.
* @retval other The number of bytes read.
*/
SR_PRIV int serial_read(struct sr_serial_dev_inst *serial, void *buf,
size_t count)
{
return _serial_read(serial, buf, count, serial->nonblocking);
}
/**
* Read a number of bytes from the specified serial port, block until finished.
* @copydetails serial_read()
*/
SR_PRIV int serial_read_blocking(struct sr_serial_dev_inst *serial, void *buf,
size_t count)
{
@ -313,7 +298,14 @@ SR_PRIV int serial_read_blocking(struct sr_serial_dev_inst *serial, void *buf,
/**
* Try to read up to @a count bytes from the specified serial port, return
* immediately with what's available.
* @copydetails serial_read()
*
* @param serial Previously initialized serial port structure.
* @param buf Buffer where to store the bytes that are read.
* @param[in] count The number of bytes to read.
*
* @retval SR_ERR_ARG Invalid argument.
* @retval SR_ERR Other error.
* @retval other The number of bytes read.
*/
SR_PRIV int serial_read_nonblocking(struct sr_serial_dev_inst *serial, void *buf,
size_t count)