]> sigrok.org Git - libsigrok.git/commitdiff
serial: Eliminate serial_read(), serial_write() and SERIAL_NONBLOCK.
authorMartin Ling <redacted>
Sun, 21 Sep 2014 20:41:25 +0000 (21:41 +0100)
committerUwe Hermann <redacted>
Wed, 24 Sep 2014 21:30:32 +0000 (23:30 +0200)
src/libsigrok-internal.h
src/serial.c

index 28e26c1a1b8ed26e5daa2a7aefc14c30e356f5de..0a4e804ded0ca3544d3f35d73551f3df2911aee7 100644 (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,
index 83df6a348064ed1b3292c0c1180b06383721b7f9..4fe9b88fc0805e43b7716a4cdd1ace37501620a4 100644 (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)