<?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>topic Re: Spi slave mode problem in i.MX Processors</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/Spi-slave-mode-problem/m-p/823969#M126737</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi mauro&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;one can check latest patches:&lt;/P&gt;&lt;P&gt;&lt;A class="link-titled" href="http://lists.infradead.org/pipermail/linux-arm-kernel/2017-April/501262.html" title="http://lists.infradead.org/pipermail/linux-arm-kernel/2017-April/501262.html"&gt;[PATCH RFC 0/5] *** SPI Slave mode support ***&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The last patch 5/5 says:&lt;/P&gt;&lt;P&gt;&lt;A data-content-finding="Community" href="https://community.nxp.com/external-link.jspa?url=http%3A%2F%2Flists.infradead.org%2Fpipermail%2Flinux-arm-kernel%2F2017-April%2F501267.html" rel="nofollow" target="_blank"&gt;http://lists.infradead.org/pipermail/linux-arm-kernel/2017-April/501267.html&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;"Following HW limitation applies:&lt;BR /&gt;1. ECSPI has a HW issue when works in Slave mode, after 64&lt;BR /&gt; words written to TXFIFO, even TXFIFO becomes empty,&lt;BR /&gt; ECSPI_TXDATA keeps shift out the last word data,&lt;BR /&gt; so we have to disable ECSPI when in slave mode after the&lt;BR /&gt; transfer completes&lt;BR /&gt;2. Due to Freescale errata ERR003775 "eCSPI: Burst completion by Chip&lt;BR /&gt; Select (SS) signal in Slave mode is not functional" burst size must&lt;BR /&gt; be set exactly to the size of the transfer. This limit SPI transaction&lt;BR /&gt; with maximum 2^12 bits."&lt;/P&gt;&lt;P&gt;As for ecspi slave support in nxp linux releases:&lt;/P&gt;&lt;P&gt;&lt;A href="https://community.nxp.com/message/966323"&gt;https://community.nxp.com/message/966323&lt;/A&gt;&amp;nbsp;&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>Sat, 01 Dec 2018 03:25:04 GMT</pubDate>
    <dc:creator>igorpadykov</dc:creator>
    <dc:date>2018-12-01T03:25:04Z</dc:date>
    <item>
      <title>Spi slave mode problem</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Spi-slave-mode-problem/m-p/823968#M126736</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Good evening,&lt;/P&gt;&lt;P&gt;I have communication problem with the spi bus on IMX6 processor.&lt;BR /&gt;My goal is to configure a spi line of the IMX6 processor in slave mode.&lt;BR /&gt;From the tests carried out by me, this configuration only works if the number of bytes to be sent to the slave line is equal to 8.&lt;BR /&gt;In this case the test involves sending to the slave line a pattern of 8 bytes so preset:&lt;BR /&gt;byte 1 = 1&lt;BR /&gt;bytes 2 = 2&lt;BR /&gt;byte 3 = 3&lt;BR /&gt;bytes 4 = 4&lt;BR /&gt;byte 5 = 5&lt;BR /&gt;bytes 6 = 6&lt;BR /&gt;bytes 7 = 7&lt;BR /&gt;bytes 7 = 8&lt;BR /&gt;The data received on the slave side correspond to those mentioned above.&lt;BR /&gt;The registers slave side are configured as follows:&lt;BR /&gt;CONREG register value is 3f03001 slave&lt;BR /&gt;CONFIGREG register value is f00055 slave&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In the second case with a number of bytes to be sent (from spi master device&amp;nbsp; to spi imx6 slave device) is to equal to 16 with the following pattern,&lt;BR /&gt;byte 1 = 1&lt;BR /&gt;bytes 2 = 2&lt;BR /&gt;byte 3 = 3&lt;BR /&gt;bytes 4 = 4&lt;BR /&gt;byte 5 = 5&lt;BR /&gt;bytes 6 = 6&lt;BR /&gt;bytes 7 = 7&lt;BR /&gt;bytes 8 = 8&lt;BR /&gt;byte 9 = 9&lt;BR /&gt;bytes 10 = 10&lt;BR /&gt;bytes 11 = 11&lt;BR /&gt;byte 12 = 12&lt;BR /&gt;bytes 13 = 13&lt;BR /&gt;byte 14 = 14&lt;BR /&gt;byte 15 = 15&lt;BR /&gt;bytes 16 = 16&lt;BR /&gt;The result obtained on the slave side (first run)&amp;nbsp; is as follows:&lt;BR /&gt;o_rx_data1 of 0 is 0&lt;BR /&gt;o_rx_data1 of 1 is 0&lt;BR /&gt;o_rx_data1 of 2 is 0&lt;BR /&gt;o_rx_data1 of 3 is 0&lt;BR /&gt;o_rx_data1 of 4 is 0&lt;BR /&gt;o_rx_data1 of 5 is 2c&lt;BR /&gt;o_rx_data1 of 6 is 3&lt;BR /&gt;o_rx_data1 of 7 is ff&lt;BR /&gt;o_rx_data1 of 8 is 1&lt;BR /&gt;o_rx_data1 of 9 is 2&lt;BR /&gt;o_rx_data1 of 10 is 3&lt;BR /&gt;o_rx_data1 of 11 is 4&lt;BR /&gt;o_rx_data1 of 12 is 5&lt;BR /&gt;o_rx_data1 of 13 is 6&lt;BR /&gt;o_rx_data1 of 14 is 7&lt;BR /&gt;o_rx_data1 of 15 is 8&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;The registers are configured as follows:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;CONREG register value is 7f03001 slave&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;CONFIGREG register value is f00055 slave&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;The result obtained on the slave side (at second run first run)&amp;nbsp; is as follows:&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;o_rx_data1 of 0 is 9&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;o_rx_data1 of 1 is 10&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;o_rx_data1 of 2 is 11&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;o_rx_data1 of 3 is 12&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;o_rx_data1 of 4 is 13&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;o_rx_data1 of 5 is 14&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;o_rx_data1 of 6 is 15&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;o_rx_data1 of 7 is 16&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;o_rx_data1 of 8 is 1&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;o_rx_data1 of 9 is 2&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;o_rx_data1 of 10 is 3&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;o_rx_data1 of 11 is 4&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;o_rx_data1 of 12 is 5&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;o_rx_data1 of 13 is 6&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;o_rx_data1 of 14 is 7&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;o_rx_data1 of 15 is 8&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;The registers are configured as follows:&lt;BR /&gt;CONREG register value is 7f03001 slave&lt;BR /&gt;CONFIGREG register value is f00055 slave&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Attached there are also two paint files where the signals of the spi lines are recorded, both in the positive and in the negative case.&lt;BR /&gt;Thank you for your cooperation,&lt;/P&gt;&lt;P&gt;I greet you cordially.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 30 Nov 2018 15:39:19 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Spi-slave-mode-problem/m-p/823968#M126736</guid>
      <dc:creator>mauroscoccia</dc:creator>
      <dc:date>2018-11-30T15:39:19Z</dc:date>
    </item>
    <item>
      <title>Re: Spi slave mode problem</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Spi-slave-mode-problem/m-p/823969#M126737</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi mauro&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;one can check latest patches:&lt;/P&gt;&lt;P&gt;&lt;A class="link-titled" href="http://lists.infradead.org/pipermail/linux-arm-kernel/2017-April/501262.html" title="http://lists.infradead.org/pipermail/linux-arm-kernel/2017-April/501262.html"&gt;[PATCH RFC 0/5] *** SPI Slave mode support ***&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The last patch 5/5 says:&lt;/P&gt;&lt;P&gt;&lt;A data-content-finding="Community" href="https://community.nxp.com/external-link.jspa?url=http%3A%2F%2Flists.infradead.org%2Fpipermail%2Flinux-arm-kernel%2F2017-April%2F501267.html" rel="nofollow" target="_blank"&gt;http://lists.infradead.org/pipermail/linux-arm-kernel/2017-April/501267.html&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;"Following HW limitation applies:&lt;BR /&gt;1. ECSPI has a HW issue when works in Slave mode, after 64&lt;BR /&gt; words written to TXFIFO, even TXFIFO becomes empty,&lt;BR /&gt; ECSPI_TXDATA keeps shift out the last word data,&lt;BR /&gt; so we have to disable ECSPI when in slave mode after the&lt;BR /&gt; transfer completes&lt;BR /&gt;2. Due to Freescale errata ERR003775 "eCSPI: Burst completion by Chip&lt;BR /&gt; Select (SS) signal in Slave mode is not functional" burst size must&lt;BR /&gt; be set exactly to the size of the transfer. This limit SPI transaction&lt;BR /&gt; with maximum 2^12 bits."&lt;/P&gt;&lt;P&gt;As for ecspi slave support in nxp linux releases:&lt;/P&gt;&lt;P&gt;&lt;A href="https://community.nxp.com/message/966323"&gt;https://community.nxp.com/message/966323&lt;/A&gt;&amp;nbsp;&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>Sat, 01 Dec 2018 03:25:04 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Spi-slave-mode-problem/m-p/823969#M126737</guid>
      <dc:creator>igorpadykov</dc:creator>
      <dc:date>2018-12-01T03:25:04Z</dc:date>
    </item>
    <item>
      <title>Re: Spi slave mode problem</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Spi-slave-mode-problem/m-p/823970#M126738</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello Igor.&lt;/P&gt;&lt;P&gt;First of all thank you for your support&lt;/P&gt;&lt;P&gt;I forgot to mention that I'm not using linux OS , but rather Pike OS, and so i can not use the patch.&lt;/P&gt;&lt;P&gt;Regarding the first hardware limitation that you mention, the data buffer used in the test (16 bytes) does not fill the TX_FIFO.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you for your cooperation,&lt;/P&gt;&lt;P&gt;I greet you cordially.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 03 Dec 2018 09:43:58 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Spi-slave-mode-problem/m-p/823970#M126738</guid>
      <dc:creator>mauroscoccia</dc:creator>
      <dc:date>2018-12-03T09:43:58Z</dc:date>
    </item>
  </channel>
</rss>

