From mboxrd@z Thu Jan 1 00:00:00 1970 Subject: Bug report: serial timeout gets overwritten shortly after setting it To: devel@edk2.groups.io From: nicholasbishop@gmail.com X-Originating-Location: Brooklyn, New York, US (70.23.88.86) X-Originating-Platform: Linux Firefox 94 User-Agent: GROUPS.IO Web Poster MIME-Version: 1.0 Date: Sun, 21 Nov 2021 09:52:28 -0800 Message-ID: Content-Type: multipart/alternative; boundary="cvOXDbLPCPLWBbOCrafS" --cvOXDbLPCPLWBbOCrafS Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Hi, I have a bug to report with the serial I/O protocol. Using the SetAttri= butes function to change the timeout initially works, but after a short amo= unt of time the timeout gets reset to 173 microseconds. I believe this is likely due to the implementation of the simple text input= protocol, which alters the serial timeout: https://github.com/tianocore/edk2/blob/e1e7306b54147e65cb7347b060e94f336d4a= 82d2/MdeModulePkg/Universal/Console/TerminalDxe/TerminalConIn.c#L549 I've created a full example here: https://github.com/nicholasbishop/edk2/commit/d6087f863a48f3c7812f47ea21d5d= 673adb8d754 The example sets the timeout to 1s which works correctly, then sleeps for 1= s and reads the timeout value again. The timeout is now 173ms. --cvOXDbLPCPLWBbOCrafS Content-Type: text/html; charset="utf-8" Content-Transfer-Encoding: quoted-printable Hi, I have a bug to report with the serial I/O protocol. Using the SetAttri= butes function to change the timeout initially works, but after a short amo= unt of time the timeout gets reset to 173 microseconds.

I believ= e this is likely due to the implementation of the simple text input protoco= l, which alters the serial timeout:
https://github.com/tianocore/edk2/= blob/e1e7306b54147e65cb7347b060e94f336d4a82d2/MdeModulePkg/Universal/Consol= e/TerminalDxe/TerminalConIn.c#L549

I've created a full example h= ere:
https://github.com/nicholasbishop/edk2/commit/d6087f863a48f3c7812= f47ea21d5d673adb8d754

The example sets the timeout to 1s which w= orks correctly, then sleeps for 1s and reads the timeout value again. The t= imeout is now 173ms. --cvOXDbLPCPLWBbOCrafS--