<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
p.MsoPlainText, li.MsoPlainText, div.MsoPlainText
        {mso-style-priority:99;
        mso-style-link:"Plain Text Char";
        margin:0in;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
span.EmailStyle17
        {mso-style-type:personal-compose;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
span.PlainTextChar
        {mso-style-name:"Plain Text Char";
        mso-style-priority:99;
        mso-style-link:"Plain Text";
        font-family:"Calibri",sans-serif;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri",sans-serif;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-US" link="#0563C1" vlink="#954F72" style="word-wrap:break-word">
<div class="WordSection1">
<p class="MsoPlainText">Hello,<o:p></o:p></p>
<p class="MsoPlainText">I am working on a project that uses the RTEMS OS on a Leon3 processor. I am trying to read/write from a UART that is connected up through the termios interface. It works for the most part but I am running into an issue with flushing
 and reading from the UART. It seems if I read a small portion of the data use read() then flush then read again there is still data returned. Is this expected behavior? If so is there any way to clear out whatever is cached in read?<o:p></o:p></p>
<p class="MsoPlainText"><o:p> </o:p></p>
<p class="MsoPlainText">Pseudo Code<o:p></o:p></p>
<p class="MsoPlainText">Open UART with open("/dev/console_b", O_RDWR | O_NONBLOCK); setup terminal into raw mode with cfmakeraw() and tcsetattr(fd,<o:p></o:p></p>
<p class="MsoPlainText">TCSADRAIN,term)<o:p></o:p></p>
<p class="MsoPlainText">Setup the UART into loop back mode so its TX data is looped back into its RX Write data into UART with write(fd, "TEST",4) Read a single character with read(fd, buff, 1); buff will contain "T" here flush buffers with tcflush(fd, TCIOFLUSH)
 Read a more from UART with read(fd, buff, 3); Would expect nothing is returned here but "EST" will be returned.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Jeff Hatton<o:p></o:p></p>
</div>
<span><span><br> </span> </span><br>
<DIV><span style="FONT-FAMILY: Times New Roman"><span style="FONT-SIZE: 14px">CONFIDENTIALITY NOTICE: This email and any attachments are for the sole use of the intended recipient and may contain material that is proprietary, confidential, privileged or otherwise legally protected or restricted under applicable government laws. Any review, disclosure, distributing or other use without expressed permission of the sender is strictly prohibited. If you are not the intended recipient, please contact the sender and delete all copies without reading, printing, or saving.</span></span>
<DIV style='FONT-SIZE: 14px; FONT-FAMILY: "Times New Roman"'><br></DIV></DIV></body>
</html>