<?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: i.MX 8M Mini NAND eFuse pad settings</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/i-MX-8M-Mini-NAND-eFuse-pad-settings/m-p/1269191#M173313</link>
    <description>&lt;P&gt;Hi Fernando&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;"PAD_SETTINGS" field corresponds to register Pad Control Register IOMUXC_SW_PAD_CTL_PAD_*&lt;/P&gt;
&lt;P&gt;described in sect.8.2. IOMUX Controller (IOMUXC)&amp;nbsp; &lt;A id="relatedDocsClick_1" href="https://www.nxp.com/webapp/Download?colCode=IMX8MMRM" target="_blank" rel="noopener"&gt;&lt;STRONG&gt;i.MX 8M Mini Applications Processor Reference Manual&lt;/STRONG&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Best regards&lt;BR /&gt;igor&lt;/P&gt;</description>
    <pubDate>Wed, 28 Apr 2021 00:27:12 GMT</pubDate>
    <dc:creator>igorpadykov</dc:creator>
    <dc:date>2021-04-28T00:27:12Z</dc:date>
    <item>
      <title>i.MX 8M Mini NAND eFuse pad settings</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/i-MX-8M-Mini-NAND-eFuse-pad-settings/m-p/1268896#M173285</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;I'm working on a custom board that uses an i.MX 8M Mini and a NAND flash. Because of an error, the pull-up resistor on the READY/BUSY pin of the NAND was not placed on the schematic.&lt;/P&gt;&lt;P&gt;I successfully booted the processor using an SD card, but we need to boot from NAND.&lt;/P&gt;&lt;P&gt;I've noticed that there is a PAD_SETTINGS field on the eFUSE registers to configure the NAND pads, but I couldn't find any details.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="fernando_lopes_0-1619528378176.png" style="width: 400px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/143376iD9BA54DE14897FB5/image-size/medium?v=v2&amp;amp;px=400" role="button" title="fernando_lopes_0-1619528378176.png" alt="fernando_lopes_0-1619528378176.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;Can I use this field to enable the NAND pins' internal pull-ups?&lt;/P&gt;</description>
      <pubDate>Tue, 27 Apr 2021 13:01:56 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/i-MX-8M-Mini-NAND-eFuse-pad-settings/m-p/1268896#M173285</guid>
      <dc:creator>fernando_lopes</dc:creator>
      <dc:date>2021-04-27T13:01:56Z</dc:date>
    </item>
    <item>
      <title>Re: i.MX 8M Mini NAND eFuse pad settings</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/i-MX-8M-Mini-NAND-eFuse-pad-settings/m-p/1269191#M173313</link>
      <description>&lt;P&gt;Hi Fernando&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;"PAD_SETTINGS" field corresponds to register Pad Control Register IOMUXC_SW_PAD_CTL_PAD_*&lt;/P&gt;
&lt;P&gt;described in sect.8.2. IOMUX Controller (IOMUXC)&amp;nbsp; &lt;A id="relatedDocsClick_1" href="https://www.nxp.com/webapp/Download?colCode=IMX8MMRM" target="_blank" rel="noopener"&gt;&lt;STRONG&gt;i.MX 8M Mini Applications Processor Reference Manual&lt;/STRONG&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Best regards&lt;BR /&gt;igor&lt;/P&gt;</description>
      <pubDate>Wed, 28 Apr 2021 00:27:12 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/i-MX-8M-Mini-NAND-eFuse-pad-settings/m-p/1269191#M173313</guid>
      <dc:creator>igorpadykov</dc:creator>
      <dc:date>2021-04-28T00:27:12Z</dc:date>
    </item>
    <item>
      <title>Re: i.MX 8M Mini NAND eFuse pad settings</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/i-MX-8M-Mini-NAND-eFuse-pad-settings/m-p/1269722#M173365</link>
      <description>&lt;P&gt;Thank you Igor. Luckily, I didn't have to use this eFuse configuration.&amp;nbsp;&lt;/P&gt;&lt;P&gt;It seems that the ROM code enables the internal pull-up for this pin. The U-Boot SPL code is correctly loaded and starts execution, but it freezes somewhere during execution of the function void board_init_f(ulong dummy) in the spl.c file.&lt;/P&gt;&lt;P&gt;I changed the code to print debug/trace information but after each code change and recompilation, the address of the hang changes.&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;P&gt;&lt;SPAN&gt;U-Boot SPL 2020.04-fw3f-5.4.70_v2020.04+g30e7e817ca (Apr 21 2021 - 11:45:38 +0000)&lt;BR /&gt;"Synchronous Abort" handler, esr 0x02000000&lt;BR /&gt;elr: 00000000007f0b5c lr : 00000000007f0b58&lt;BR /&gt;x 0: 0000000000000000 x 1: 0000000000000000&lt;BR /&gt;x 2: 00000000007e7900 x 3: 0000000000000030&lt;BR /&gt;x 4: 000000000091dd56 x 5: 0000000000000000&lt;BR /&gt;x 6: 0000000000000000 x 7: 0000000000000000&lt;BR /&gt;x 8: 0000000000000000 x 9: 0000000000000002&lt;BR /&gt;x10: 000000000a200023 x11: 0000000000000002&lt;BR /&gt;x12: 0000000000000002 x13: 0000000000000016&lt;BR /&gt;x14: 000000000090e558 x15: 0000000000013da4&lt;BR /&gt;x16: 00000000007eee94 x17: 0000000033002028&lt;BR /&gt;x18: 000000000091dea0 x19: 0000000000912000&lt;BR /&gt;x20: 00000000008015b8 x21: 00000000007f6fe1&lt;BR /&gt;x22: 000000000090c000 x23: 0000000030350480&lt;BR /&gt;x24: 0000000000801000 x25: 0000000000910000&lt;BR /&gt;x26: 0000000030390070 x27: 0000000072000000&lt;BR /&gt;x28: 0000000000000000 x29: 000000000091de10&lt;BR /&gt;&lt;BR /&gt;Code: 90000040 9124a800 97ffdcdb aae3f3df (00000040)&lt;BR /&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;P&gt;&lt;SPAN&gt;U-Boot SPL 2020.04-fw3f-5.4.70_v2020.04+g30e7e817ca (Apr 21 2021 - 11:45:38 +0000)&lt;BR /&gt;"Error" handler, esr 0xbf000002&lt;BR /&gt;elr: 00000000007e7f80 lr : 00000000007e7eec&lt;BR /&gt;x 0: 0000000000000000 x 1: 0000000000000003&lt;BR /&gt;x 2: 000000000000000f x 3: 00000000000000f0&lt;BR /&gt;x 4: 000000000091dde4 x 5: 0000000000000001&lt;BR /&gt;x 6: 000000003b9aca00 x 7: 000000000000000a&lt;BR /&gt;x 8: 0000000000000000 x 9: 0000000000000002&lt;BR /&gt;x10: 000000000a200023 x11: 0000000000000002&lt;BR /&gt;x12: 0000000000000002 x13: 0000000000000016&lt;BR /&gt;x14: 000000000090e558 x15: 0000000000013da4&lt;BR /&gt;x16: 00000000007ee264 x17: 0000000033002028&lt;BR /&gt;x18: 000000000091dea0 x19: 0000000000000000&lt;BR /&gt;x20: 00000000007f7a40 x21: 00000000000186a0&lt;BR /&gt;x22: 00000000000186a0 x23: 000000000000007f&lt;BR /&gt;x24: 0000000000000002 x25: 0000000000910000&lt;BR /&gt;x26: 0000000030390070 x27: 0000000072000000&lt;BR /&gt;x28: 0000000000000000 x29: 000000000091de10&lt;BR /&gt;&lt;BR /&gt;Code: 93407c00 3834681f 52800000 a94153f3 (f94013f5)&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;I'm still trying to decode this information. I couldn't understand it yet.&lt;/P&gt;</description>
      <pubDate>Wed, 28 Apr 2021 13:48:17 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/i-MX-8M-Mini-NAND-eFuse-pad-settings/m-p/1269722#M173365</guid>
      <dc:creator>fernando_lopes</dc:creator>
      <dc:date>2021-04-28T13:48:17Z</dc:date>
    </item>
    <item>
      <title>Re: i.MX 8M Mini NAND eFuse pad settings</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/i-MX-8M-Mini-NAND-eFuse-pad-settings/m-p/1269956#M173382</link>
      <description>&lt;P&gt;Hi Fernando&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;had board passed ddr test, was uuu tool used for nand programming.&lt;/P&gt;
&lt;P&gt;One can use example_kernel_nand.uuu script from Demo Image package&lt;/P&gt;
&lt;P&gt;&lt;A style="box-sizing: border-box; background-color: transparent; color: #215bd6; text-decoration: none; cursor: pointer;" href="https://www.nxp.com/webapp/Download?colCode=L5.10.9_1.0.0_MX8MM&amp;amp;appType=license" target="_blank"&gt;i.MX 8M Mini EVK&lt;/A&gt;​&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Best regards&lt;BR /&gt;igor&lt;/P&gt;</description>
      <pubDate>Thu, 29 Apr 2021 00:34:18 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/i-MX-8M-Mini-NAND-eFuse-pad-settings/m-p/1269956#M173382</guid>
      <dc:creator>igorpadykov</dc:creator>
      <dc:date>2021-04-29T00:34:18Z</dc:date>
    </item>
    <item>
      <title>Re: i.MX 8M Mini NAND eFuse pad settings</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/i-MX-8M-Mini-NAND-eFuse-pad-settings/m-p/1271678#M173562</link>
      <description>&lt;P&gt;Hi Igor,&lt;/P&gt;&lt;P&gt;I discovered what problem was happening.&lt;/P&gt;&lt;P&gt;The problem was that the data loaded to addresses that end with 0xb58 and 0xb5c starting from 0x7e3b58 got corrupted when booting from NAND, so the u-boot SPL triggered an exception caused by invalid instruction when executing from one of these addresses and stopped.&lt;/P&gt;&lt;P&gt;Using the exact same image to boot from the SD card did not show this problem and was successful.&lt;/P&gt;&lt;P&gt;I first thought that this problem could have happened because of corruption of the NAND, but I nandumped the SPL load addresses without ecc (nanddump -n) and there was no error at all.&lt;/P&gt;&lt;P&gt;The way that the data is corrupted is somewhat curious because only the 3 lower bytes from&amp;nbsp;0xb58 and the 3 higher bytes from&amp;nbsp;0xb5c are corrupted and the data is repeated in all of them. For example:&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;P&gt;Corrupted data:&lt;BR /&gt;7e3b58: 52e3f3df&lt;BR /&gt;7e3b5c: 00000060&lt;BR /&gt;7e4b58: 6be3f3df&lt;BR /&gt;7e4b5c: 000000a1&lt;BR /&gt;7e5b58: 9ae3f3df&lt;BR /&gt;7e5b5c: 00000033&lt;BR /&gt;(...)&lt;BR /&gt;7fcb58: 00e3f3df&lt;BR /&gt;7fcb5c: 00000000&lt;BR /&gt;7fdb58: 00e3f3df&lt;BR /&gt;7fdb5c: 000000c1&lt;BR /&gt;7feb58: 04e3f3df&lt;BR /&gt;7feb5c: 0000006f&lt;/P&gt;&lt;P&gt;Correct data:&lt;BR /&gt;7e3b58: 52800021&lt;BR /&gt;7e3b5c: 52800960&lt;BR /&gt;7e4b58: 6b00003f&lt;BR /&gt;7e4b5c: 540002a1&lt;BR /&gt;7e5b58: 9ad70820&lt;BR /&gt;7e5b5c: d1004033&lt;BR /&gt;(...)&lt;BR /&gt;7fcb58: 007f6fcc&lt;BR /&gt;7fcb5c: 00000000&lt;BR /&gt;7fdb58: 00000000&lt;BR /&gt;7fdb5c: 000137c1&lt;BR /&gt;7feb58: 00000000&lt;BR /&gt;7feb5c: 00000000&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;I did a crazy workaround, allocating an address of static data that is filled in the binary after compilation with the correct data for those addresses. Then I call a function right in the beginning of board_init_f that loads these data to their addresses, overwriting the corrupted data.&lt;/P&gt;&lt;P&gt;I just need to be sure that this part of the code will not fall in one of the damaged regions and the code runs perfectly after that.&lt;/P&gt;&lt;P&gt;This looks like a ROM bug or my NAND is not compatible with it. Maybe it's related to the NAND page size (4K - similar problem described &lt;A href="https://community.nxp.com/t5/i-MX-Processors/imx8mm-NAND-boot-issue/m-p/1264147/" target="_self"&gt;here&lt;/A&gt;), which is also the offset between corrupted addresses. You can escalate this information to the design team if you will. I think that this should be fixed for future revisions or at least documented in an errata.&amp;nbsp;An error like this undocumented is unacceptable.&lt;/P&gt;&lt;P&gt;Best regards,&lt;/P&gt;&lt;P&gt;Fernando.&lt;/P&gt;</description>
      <pubDate>Tue, 04 May 2021 11:49:25 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/i-MX-8M-Mini-NAND-eFuse-pad-settings/m-p/1271678#M173562</guid>
      <dc:creator>fernando_lopes</dc:creator>
      <dc:date>2021-05-04T11:49:25Z</dc:date>
    </item>
  </channel>
</rss>

