<?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: iMX5 FEC RX FIFO DMA starvation</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/iMX5-FEC-RX-FIFO-DMA-starvation/m-p/815979#M125712</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Mitch&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;one can try to increase FEC priority:&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x63fd_8044=0x33&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x63fd_8048=0x1901a3&lt;BR /&gt;or&amp;nbsp; increase FEC RX FIFO size.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards&lt;BR /&gt;igor&lt;BR /&gt;-----------------------------------------------------------------------------------------------------------------------&lt;BR /&gt;Note: If this post answers your question, please click the Correct Answer button. Thank you!&lt;BR /&gt;-----------------------------------------------------------------------------------------------------------------------&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 08 Nov 2018 23:07:05 GMT</pubDate>
    <dc:creator>igorpadykov</dc:creator>
    <dc:date>2018-11-08T23:07:05Z</dc:date>
    <item>
      <title>iMX5 FEC RX FIFO DMA starvation</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/iMX5-FEC-RX-FIFO-DMA-starvation/m-p/815978#M125711</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;We&amp;nbsp;have a legacy&amp;nbsp;application that uses an i.MX53 SoC.&amp;nbsp; The device has, for a long time, rendered MPEG-2 and MP4 streams in SD.&amp;nbsp; We cannot change the SoC used, so please don't suggest a later iMX or different software.&amp;nbsp; We are limited to linux-2.6-imx/imx-2.6.35-maintain kernel and the LTIB 11-09-01 system release.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;For various reasons, we cannot change the SD output (it's actually an S-Video connection), but we need to start taking ATSC HD as input,&amp;nbsp;so we need to&amp;nbsp;downscale that to SD.&amp;nbsp; The input is MPEG-TS, with either MPEG-2 or H.264 video, via&amp;nbsp;UDP multicast.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Here is the problem: when I play back a 1080p30 TS stream stored in a file on MMC, video playback at 720x480 is perfect (file -&amp;gt; VPU -&amp;gt; IPU -&amp;gt; display).&amp;nbsp; When I play back the same stream via UDP (UDP -&amp;gt; VPU -&amp;gt; IPU -&amp;gt; display), the video output is garbled due to missing motion vectors and/or I-frames.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;We also notice a relatively high number of RX FIFO overruns in the FEC when streaming via UDP (on the order of 30 rx_fifo_overruns per second).&amp;nbsp; NOTE: overruns are being measured as OV bit set in RxBD as reported by the driver.&amp;nbsp; The only that that makes sense to us is that RX DMA is not being scheduled, or is stalling, and the RX FIFO overflows.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;- If we loop the TS at the streaming source, the distortion moves around during playback.&amp;nbsp; Sometimes the video in a section will play perfectly, while in a later loop it will play back poorly.&lt;/P&gt;&lt;P&gt;&amp;nbsp;- If we store the file on the MMC attached to the iMX53,&amp;nbsp; and play it back, we get good playback&lt;/P&gt;&lt;P&gt;&amp;nbsp;- If we store the file on a host computer, and NFS mount the host, playback occasionally hiccups, but doesn't distort -&amp;nbsp;but the RX FIFO overrun count increases.&amp;nbsp; Our supposition is that&amp;nbsp;TCP&amp;nbsp;is ensuring we aren't losing packets (our NFS mount is via TCP).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The Freescale&amp;nbsp;VPU decoders aren't particularly forgiving, which is why this is a show stopper.&amp;nbsp; I can't put this in front of a customer as is.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;What can we do to eliminate the ~3% packet loss?&amp;nbsp; We've tried:&lt;/P&gt;&lt;P&gt;&amp;nbsp;- change R_FSTART in the FEC.&amp;nbsp; We dropped this to 0x30 while making sure X_WMRK was 00b.&amp;nbsp; No significant help.&lt;/P&gt;&lt;P&gt;&amp;nbsp;- I looked at the arbiter, but it appears as the priorities for the masters are set in silicon?&amp;nbsp; Specifically, PLARB1.&lt;/P&gt;&lt;P&gt;&amp;nbsp;- FEC DMA does not appear to be SDMA, but unique to the FEC, correct?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Are there any suggestions on what to look at?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Mitch&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 08 Nov 2018 19:38:43 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/iMX5-FEC-RX-FIFO-DMA-starvation/m-p/815978#M125711</guid>
      <dc:creator>mitchmiers</dc:creator>
      <dc:date>2018-11-08T19:38:43Z</dc:date>
    </item>
    <item>
      <title>Re: iMX5 FEC RX FIFO DMA starvation</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/iMX5-FEC-RX-FIFO-DMA-starvation/m-p/815979#M125712</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Mitch&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;one can try to increase FEC priority:&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x63fd_8044=0x33&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x63fd_8048=0x1901a3&lt;BR /&gt;or&amp;nbsp; increase FEC RX FIFO size.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards&lt;BR /&gt;igor&lt;BR /&gt;-----------------------------------------------------------------------------------------------------------------------&lt;BR /&gt;Note: If this post answers your question, please click the Correct Answer button. Thank you!&lt;BR /&gt;-----------------------------------------------------------------------------------------------------------------------&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 08 Nov 2018 23:07:05 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/iMX5-FEC-RX-FIFO-DMA-starvation/m-p/815979#M125712</guid>
      <dc:creator>igorpadykov</dc:creator>
      <dc:date>2018-11-08T23:07:05Z</dc:date>
    </item>
    <item>
      <title>Re: iMX5 FEC RX FIFO DMA starvation</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/iMX5-FEC-RX-FIFO-DMA-starvation/m-p/815980#M125713</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;That did the trick.&amp;nbsp; With just the M4IF changes, the packet loss rate dropped to just a few packets over a 10 second sample (&amp;lt; .01%).&amp;nbsp; We'll try increasing the RX FIFO size as well and see if that gets any of the remainder.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Now I've got to go reread the M4IF&amp;nbsp;chapter and try to understand those register settings...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Many thanks!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Mitch&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 09 Nov 2018 16:23:20 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/iMX5-FEC-RX-FIFO-DMA-starvation/m-p/815980#M125713</guid>
      <dc:creator>mitchmiers</dc:creator>
      <dc:date>2018-11-09T16:23:20Z</dc:date>
    </item>
  </channel>
</rss>

