<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>i.MX ProcessorsのトピックRe: UART errors: &amp;quot;Rx FIFO overrun&amp;quot; and &amp;quot;overwrite!&amp;quot;</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/UART-errors-quot-Rx-FIFO-overrun-quot-and-quot-overwrite-quot/m-p/335967#M45671</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks very much Igor for the response. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have read the Linux development manual and I have noticed that it is recommended to use hardware flow control (specially for DMA). Our main problem is that our source device (the one that we connect to) does not implement this protocol communication (only pins for rx and tx). It waits a command and then as a response it sends a stream of bytes. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;So we should do what you have recommended, since we do not use LCD or GPU unit. Here I need some help, please could you tell me how I can increase cpu/ddr operating frecuency? Also, is there any way to disable GPU/VPU/LCD?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks again.&lt;/P&gt;&lt;P&gt;Regards.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Sat, 21 Mar 2015 12:37:20 GMT</pubDate>
    <dc:creator>danilozecchin</dc:creator>
    <dc:date>2015-03-21T12:37:20Z</dc:date>
    <item>
      <title>UART errors: "Rx FIFO overrun" and "overwrite!"</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/UART-errors-quot-Rx-FIFO-overrun-quot-and-quot-overwrite-quot/m-p/335965#M45669</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi everyone!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I am testing IMX6's quad cpu UARTs over a custom Debian image (using the last imx.c driver) and I am having the following errors reported in kernel log (from dmseg):&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;imx-uart 21ec000.serial: Rx FIFO overrun&lt;/P&gt;&lt;P&gt;imx-uart 21ec000.serial: overwrite!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;** They did not appeared consecutively.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;When any of them happens, I have incomplete or bad transferences. For the test, I have configured the port #2 (UART2) to be used at 230400 speed rate and in raw mode (no control, no parity, no breaks). I have built the test program using termios.h and ioctl too.&lt;/P&gt;&lt;P&gt;I was wondering if anyone could tell me the reason of that errors and how could I solve them. Also, I would like to know if there is any other tool to use these ports in order to get realtime performance over them.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks in advance.&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 20 Mar 2015 18:12:10 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/UART-errors-quot-Rx-FIFO-overrun-quot-and-quot-overwrite-quot/m-p/335965#M45669</guid>
      <dc:creator>danilozecchin</dc:creator>
      <dc:date>2015-03-20T18:12:10Z</dc:date>
    </item>
    <item>
      <title>Re: UART errors: "Rx FIFO overrun" and "overwrite!"</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/UART-errors-quot-Rx-FIFO-overrun-quot-and-quot-overwrite-quot/m-p/335966#M45670</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Danilo&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;it may be suggested to use UART handshaking control signals (RTS,CTS),&lt;/P&gt;&lt;P&gt;so when Rx FIFO reaches some level, control line signals to transmitter to stop transmission.&lt;/P&gt;&lt;P&gt;Issue is caused by processor buses bandwidth limitation, since UART is low priority&lt;/P&gt;&lt;P&gt;other bus masters consumes all available bus traffic. Probably increasing cpu/ddr operating&lt;/P&gt;&lt;P&gt;frequency or decreasing LCD/VPU/GPU frame rate also may help.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards&lt;/P&gt;&lt;P&gt;igor&lt;/P&gt;&lt;P&gt;-----------------------------------------------------------------------------------------------------------------------&lt;/P&gt;&lt;P&gt;Note: If this post answers your question, please click the Correct Answer button. Thank you!&lt;/P&gt;&lt;P&gt;-----------------------------------------------------------------------------------------------------------------------&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 21 Mar 2015 01:09:08 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/UART-errors-quot-Rx-FIFO-overrun-quot-and-quot-overwrite-quot/m-p/335966#M45670</guid>
      <dc:creator>igorpadykov</dc:creator>
      <dc:date>2015-03-21T01:09:08Z</dc:date>
    </item>
    <item>
      <title>Re: UART errors: "Rx FIFO overrun" and "overwrite!"</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/UART-errors-quot-Rx-FIFO-overrun-quot-and-quot-overwrite-quot/m-p/335967#M45671</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks very much Igor for the response. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have read the Linux development manual and I have noticed that it is recommended to use hardware flow control (specially for DMA). Our main problem is that our source device (the one that we connect to) does not implement this protocol communication (only pins for rx and tx). It waits a command and then as a response it sends a stream of bytes. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;So we should do what you have recommended, since we do not use LCD or GPU unit. Here I need some help, please could you tell me how I can increase cpu/ddr operating frecuency? Also, is there any way to disable GPU/VPU/LCD?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks again.&lt;/P&gt;&lt;P&gt;Regards.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 21 Mar 2015 12:37:20 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/UART-errors-quot-Rx-FIFO-overrun-quot-and-quot-overwrite-quot/m-p/335967#M45671</guid>
      <dc:creator>danilozecchin</dc:creator>
      <dc:date>2015-03-21T12:37:20Z</dc:date>
    </item>
    <item>
      <title>Re: UART errors: "Rx FIFO overrun" and "overwrite!"</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/UART-errors-quot-Rx-FIFO-overrun-quot-and-quot-overwrite-quot/m-p/335968#M45672</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I encountered the same problem. did you solved it?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 12 Sep 2016 07:50:25 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/UART-errors-quot-Rx-FIFO-overrun-quot-and-quot-overwrite-quot/m-p/335968#M45672</guid>
      <dc:creator>shmulikfridman</dc:creator>
      <dc:date>2016-09-12T07:50:25Z</dc:date>
    </item>
    <item>
      <title>Re: UART errors: "Rx FIFO overrun" and "overwrite!"</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/UART-errors-quot-Rx-FIFO-overrun-quot-and-quot-overwrite-quot/m-p/335969#M45673</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Try this patch&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.5pt; color: #1f497d;"&gt;--- a/drivers/dma/imx-sdma.c&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.5pt; color: #1f497d;"&gt;+++ b/drivers/dma/imx-sdma.c&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.5pt; color: #1f497d;"&gt;@@ -511,6 +511,7 @@ static struct platform_device_id sdma_devtypes[] = {&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.5pt; color: #1f497d;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.5pt; color: #1f497d;"&gt;};&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.5pt; color: #1f497d;"&gt;MODULE_DEVICE_TABLE(platform, sdma_devtypes);&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.5pt; color: #1f497d;"&gt;+static int sdma_resume_channel(struct sdma_channel *sdmac);&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.5pt; color: #1f497d;"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.5pt; color: #1f497d;"&gt;static const struct of_device_id sdma_dt_ids[] = {&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.5pt; color: #1f497d;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; { .compatible = "fsl,imx6sx-sdma", .data = &amp;amp;sdma_imx6sx, },&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.5pt; color: #1f497d;"&gt;@@ -701,6 +702,8 @@ static void sdma_update_channel_loop(struct sdma_channel *sdmac)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.5pt; color: #1f497d;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* restore mode.count after counter readed */&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.5pt; color: #1f497d;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sdmac-&amp;gt;chn_real_count = bd-&amp;gt;mode.count;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.5pt; color: #1f497d;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; bd-&amp;gt;mode.count = sdmac-&amp;gt;chn_count;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.5pt; color: #1f497d;"&gt;+&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (sdmac-&amp;gt;status== 3)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.5pt; color: #1f497d;"&gt;+&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sdma_resume_channel(sdmac);&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.5pt; color: #1f497d;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.5pt; color: #1f497d;"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.5pt; color: #1f497d;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sdma_handle_channel_loop(sdmac);&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.5pt; color: #1f497d;"&gt;@@ -975,6 +978,8 @@ static int sdma_pause_channel(struct sdma_channel *sdmac)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.5pt; color: #1f497d;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return 0;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.5pt; color: #1f497d;"&gt;}&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 21 Nov 2016 02:49:35 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/UART-errors-quot-Rx-FIFO-overrun-quot-and-quot-overwrite-quot/m-p/335969#M45673</guid>
      <dc:creator>yaoshilee</dc:creator>
      <dc:date>2016-11-21T02:49:35Z</dc:date>
    </item>
    <item>
      <title>Re: UART errors: "Rx FIFO overrun" and "overwrite!"</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/UART-errors-quot-Rx-FIFO-overrun-quot-and-quot-overwrite-quot/m-p/335970#M45674</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;A class="jx-jive-macro-user" href="https://community.nxp.com/people/yaoshilee"&gt;yaoshilee&lt;/A&gt;‌ this actually resumes the DMA channel in case of an error, correct?&lt;BR /&gt;Why haven't you used the constants to express what the check actually does? I assume "&lt;SPAN style="color: #1f497d; background-color: #ffffff;"&gt;sdmac-&amp;gt;status== 3" checks for&amp;nbsp;&lt;SPAN&gt;DMA_ERROR?&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM style="background-color: #ffffff; color: #1f497d;"&gt;kernel-imx\include\linux\dmaengine.h&lt;/EM&gt;&lt;/P&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;SPAN style="color: #1f497d; background-color: #ffffff;"&gt;/**&lt;BR /&gt; * enum dma_status - DMA transaction status&lt;BR /&gt; * @DMA_COMPLETE: transaction completed&lt;BR /&gt; * @DMA_IN_PROGRESS: transaction not yet processed&lt;BR /&gt; * @DMA_PAUSED: transaction is paused&lt;BR /&gt; * @DMA_ERROR: transaction failed&lt;BR /&gt; */&lt;BR /&gt;enum dma_status {&lt;BR /&gt; DMA_COMPLETE,&lt;BR /&gt; DMA_IN_PROGRESS,&lt;BR /&gt; DMA_PAUSED,&lt;BR /&gt; DMA_ERROR,&lt;BR /&gt;};&lt;/SPAN&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;The entire function now actually looks like this:&lt;/P&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;P&gt;static void sdma_update_channel_loop(struct sdma_channel *sdmac) {&lt;BR /&gt;&amp;nbsp; &amp;nbsp; struct sdma_buffer_descriptor *bd;&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; /*&lt;BR /&gt; &lt;SPAN style="background-color: #f6f6f6;"&gt;&amp;nbsp; &amp;nbsp;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;* loop mode. Iterate over descriptors, re-setup them and&lt;BR /&gt; &lt;SPAN style="background-color: #f6f6f6;"&gt;&amp;nbsp; &amp;nbsp;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;* call callback function.&lt;BR /&gt; &lt;SPAN style="background-color: #f6f6f6;"&gt;&amp;nbsp; &amp;nbsp;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;*/&lt;BR /&gt; &lt;SPAN style="background-color: #f6f6f6;"&gt;&amp;nbsp; &amp;nbsp;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;while (1) {&lt;BR /&gt; &lt;SPAN style="background-color: #f6f6f6;"&gt;&amp;nbsp; &amp;nbsp;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;bd = &amp;amp;sdmac-&amp;gt;bd[sdmac-&amp;gt;buf_tail];&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="background-color: #f6f6f6;"&gt;&amp;nbsp; &amp;nbsp;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="background-color: #f6f6f6;"&gt;&amp;nbsp; &amp;nbsp;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;if (bd-&amp;gt;mode.status &amp;amp; BD_DONE)&lt;BR /&gt; &lt;SPAN style="background-color: #f6f6f6;"&gt;&amp;nbsp; &amp;nbsp;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="background-color: #f6f6f6;"&gt;&amp;nbsp; &amp;nbsp;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="background-color: #f6f6f6;"&gt;&amp;nbsp; &amp;nbsp;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;break;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="background-color: #f6f6f6;"&gt;&amp;nbsp; &amp;nbsp;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="background-color: #f6f6f6;"&gt;&amp;nbsp; &amp;nbsp;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;if (bd-&amp;gt;mode.status &amp;amp; BD_RROR)&lt;BR /&gt; &lt;SPAN style="background-color: #f6f6f6;"&gt;&amp;nbsp; &amp;nbsp;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;sdmac-&amp;gt;status = DMA_ERROR;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="background-color: #f6f6f6;"&gt;&amp;nbsp; &amp;nbsp;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="background-color: #f6f6f6;"&gt;&amp;nbsp; &amp;nbsp;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;bd-&amp;gt;mode.status |= BD_DONE;&lt;BR /&gt; &lt;SPAN style="background-color: #f6f6f6;"&gt;&amp;nbsp; &amp;nbsp;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;sdmac-&amp;gt;buf_tail++;&lt;BR /&gt; &lt;SPAN style="background-color: #f6f6f6;"&gt;&amp;nbsp; &amp;nbsp;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="background-color: #f6f6f6;"&gt;&amp;nbsp; &amp;nbsp;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;sdmac-&amp;gt;buf_tail %= sdmac-&amp;gt;num_bd;&lt;BR /&gt; &lt;SPAN style="background-color: #f6f6f6;"&gt;&amp;nbsp; &amp;nbsp;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;if (sdmac-&amp;gt;peripheral_type == IMX_DMATYPE_UART) {&lt;BR /&gt; &lt;SPAN style="background-color: #f6f6f6;"&gt;&amp;nbsp; &amp;nbsp;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="background-color: #f6f6f6;"&gt;&amp;nbsp; &amp;nbsp;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="background-color: #f6f6f6;"&gt;&amp;nbsp; &amp;nbsp;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;/* restore mode.count after counter readed */&lt;BR /&gt; &lt;SPAN style="background-color: #f6f6f6;"&gt;&amp;nbsp; &amp;nbsp;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="background-color: #f6f6f6;"&gt;&amp;nbsp; &amp;nbsp;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="background-color: #f6f6f6;"&gt;&amp;nbsp; &amp;nbsp;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;sdmac-&amp;gt;chn_real_count = bd-&amp;gt;mode.count;&lt;BR /&gt; &lt;SPAN style="background-color: #f6f6f6;"&gt;&amp;nbsp; &amp;nbsp;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="background-color: #f6f6f6;"&gt;&amp;nbsp; &amp;nbsp;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="background-color: #f6f6f6;"&gt;&amp;nbsp; &amp;nbsp;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;bd-&amp;gt;mode.count = sdmac-&amp;gt;chn_count;&lt;BR /&gt; &lt;SPAN style="background-color: #f6f6f6;"&gt;&amp;nbsp; &amp;nbsp;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="background-color: #f6f6f6;"&gt;&amp;nbsp; &amp;nbsp;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="background-color: #f6f6f6;"&gt;&amp;nbsp; &amp;nbsp;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;if (sdmac-&amp;gt;status == DMA_ERROR)&lt;BR /&gt; &lt;SPAN style="background-color: #f6f6f6;"&gt;&amp;nbsp; &amp;nbsp;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="background-color: #f6f6f6;"&gt;&amp;nbsp; &amp;nbsp;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="background-color: #f6f6f6;"&gt;&amp;nbsp; &amp;nbsp;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="background-color: #f6f6f6;"&gt;&amp;nbsp; &amp;nbsp;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;sdma_resume_channel(sdmac);&lt;BR /&gt; &lt;SPAN style="background-color: #f6f6f6;"&gt;&amp;nbsp; &amp;nbsp;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="background-color: #f6f6f6;"&gt;&amp;nbsp; &amp;nbsp;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;}&lt;/P&gt;&lt;P&gt;&lt;SPAN style="background-color: #f6f6f6;"&gt;&amp;nbsp; &amp;nbsp;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;sdma_handle_channel_loop(sdmac);&lt;BR /&gt; &lt;SPAN style="background-color: #f6f6f6;"&gt;&amp;nbsp; &amp;nbsp;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;}&lt;BR /&gt;}&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 07 Nov 2017 14:54:32 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/UART-errors-quot-Rx-FIFO-overrun-quot-and-quot-overwrite-quot/m-p/335970#M45674</guid>
      <dc:creator>michaelguntli</dc:creator>
      <dc:date>2017-11-07T14:54:32Z</dc:date>
    </item>
  </channel>
</rss>

