Uploaded image for project: 'Embedded Software & Tools'
  1. Embedded Software & Tools
  2. EXT_EP-9275

CC13XX-CC26XX: UART_read in blocking mode does not return already available data as expected when partial return is enabled

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Medium Medium
    • TI Device Drivers
    • TIDRIVERS-1804
    • 3.60.00
    • CORESDK_4_10_00
    • Hide
      Problem:

      If enabling partial return when using the driver in blocking mode, a call to UART_read will not return data already available in the ring buffer unless it is the number of bytes requested or any other data is received.

      If operating in callback mode, a call to UART_read will return already available data without the need to receive additional data.

      This problem occurs because we inside UART_read take the decision to start and pend for additional data instead if simply returning what data was already available. As a RX timeout will not occur unless data was received, the blocking semaphore will not be released by the driver.

      Proposed solution:

      Do a partial return check for blocking mode similar to what we do for callback mode.
      Show
      Problem: If enabling partial return when using the driver in blocking mode, a call to UART_read will not return data already available in the ring buffer unless it is the number of bytes requested or any other data is received. If operating in callback mode, a call to UART_read will return already available data without the need to receive additional data. This problem occurs because we inside UART_read take the decision to start and pend for additional data instead if simply returning what data was already available. As a RX timeout will not occur unless data was received, the blocking semaphore will not be released by the driver. Proposed solution: Do a partial return check for blocking mode similar to what we do for callback mode.

      CC13XX-CC26XX: UART_read in blocking mode does not return already available data as expected when partial return is enabled

            syncuser TI User
            syncuser TI User
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved: