<?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: Minimal boot-loader for IMX6 Sabrelite in i.MX Processors</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/Minimal-boot-loader-for-IMX6-Sabrelite/m-p/173898#M6188</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks for your responses.&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;I completely agree, the instructions are very simple, but the board is not booting after following them :-)&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;I am now attaching the exact steps that i followed for the download:&lt;BR /&gt;&lt;BR /&gt;1) Downloaded iMX6DQ_SPI_to_SD_loader_binaries_rev1.0.zip from &lt;A href="https://wiki.linaro.org/Boards/MX6QSabreLite" target="_blank"&gt;https://wiki.linaro.org/Boards/MX6QSabreLite&lt;/A&gt;.&lt;BR /&gt;&lt;BR /&gt;Procedure 1:(Download from U-boot):&lt;BR /&gt;-----------------------------------&lt;BR /&gt;2)Downloaded iMX6DQ_SPI_to_uSDHC3.bin to a full sized SD card (SD card-A):&lt;BR /&gt;&lt;BR /&gt;$sudo dd if=iMX6DQ_SPI_to_uSDHC3.bin of=/dev/sdb&lt;BR /&gt;2+1 records in&lt;BR /&gt;2+1 records out&lt;BR /&gt;1136 bytes (1.1 kB) copied, 0.0210224 s, 54.0 kB/s&lt;BR /&gt;&lt;BR /&gt;3)Downloaded u-boot-mx6q-sabrelite.bin to a full sized SD card (SD card-B):(Assuming that this is a non-padded image)&lt;BR /&gt;$ sudo dd if=u-boot-mx6q-sabrelite.bin of=/dev/sdb bs=1K seek=1; sync&lt;BR /&gt;169+1 records in&lt;BR /&gt;169+1 records out&lt;BR /&gt;173688 bytes (174 kB) copied, 0.0970572 s, 1.8 MB/s&lt;BR /&gt;&lt;BR /&gt;4)Insert the SD card-A at slot SD3, start board and stop autoboot to reach commandline.&lt;BR /&gt;&lt;BR /&gt;4)Below is the log collected from the console:&lt;BR /&gt;&lt;BR /&gt;U-Boot 2009.08 (May 14 2012 - 09:03:18)&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;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;CPU: Freescale i.MX6 family TO0.0 at 792 MHz&lt;BR /&gt;Temperature:&amp;nbsp;&amp;nbsp; can't get valid data!&lt;BR /&gt;mx6q pll1: 792MHz&lt;BR /&gt;mx6q pll2: 528MHz&lt;BR /&gt;mx6q pll3: 480MHz&lt;BR /&gt;mx6q pll8: 50MHz&lt;BR /&gt;ipg clock&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : 66000000Hz&lt;BR /&gt;ipg per clock : 66000000Hz&lt;BR /&gt;uart clock&amp;nbsp;&amp;nbsp;&amp;nbsp; : 80000000Hz&lt;BR /&gt;cspi clock&amp;nbsp;&amp;nbsp;&amp;nbsp; : 60000000Hz&lt;BR /&gt;ahb clock&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : 132000000Hz&lt;BR /&gt;axi clock&amp;nbsp;&amp;nbsp; : 264000000Hz&lt;BR /&gt;emi_slow clock: 29333333Hz&lt;BR /&gt;ddr clock&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : 528000000Hz&lt;BR /&gt;usdhc1 clock&amp;nbsp; : 198000000Hz&lt;BR /&gt;usdhc2 clock&amp;nbsp; : 198000000Hz&lt;BR /&gt;usdhc3 clock&amp;nbsp; : 198000000Hz&lt;BR /&gt;usdhc4 clock&amp;nbsp; : 198000000Hz&lt;BR /&gt;nfc clock&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : 24000000Hz&lt;BR /&gt;Board: MX6Q-SABRELITE:[ POR]&lt;BR /&gt;Boot Device: I2C&lt;BR /&gt;I2C:&amp;nbsp;&amp;nbsp; ready&lt;BR /&gt;DRAM:&amp;nbsp;&amp;nbsp; 1 GB&lt;BR /&gt;MMC:&amp;nbsp;&amp;nbsp; FSL_USDHC: 0,FSL_USDHC: 1&lt;BR /&gt;JEDEC ID: 0xbf:0x25:0x41&lt;BR /&gt;Reading SPI NOR flash 0xc0000 [0x2000 bytes] -&amp;gt; ram 0x276009b8&lt;BR /&gt;SUCCESS&lt;BR /&gt;&lt;BR /&gt;In:&amp;nbsp;&amp;nbsp;&amp;nbsp; serial&lt;BR /&gt;Out:&amp;nbsp;&amp;nbsp; serial&lt;BR /&gt;Err:&amp;nbsp;&amp;nbsp; serial&lt;BR /&gt;Net:&amp;nbsp;&amp;nbsp; got MAC address from IIM: 00:19:b8:00:e5:a0&lt;BR /&gt;FEC0 [PRIME]&lt;BR /&gt;Hit any key to stop autoboot:&amp;nbsp; 0 &lt;BR /&gt;MX6Q SABRELITE U-Boot &amp;gt; mmc dev 0&lt;BR /&gt;mmc0 is current device&lt;BR /&gt;&lt;BR /&gt;MX6Q SABRELITE U-Boot &amp;gt; mmc read 0x10800000 0 200&lt;BR /&gt;MMC read: dev # 0, block # 0, count 512 ... 512 blocks read: OK&lt;BR /&gt;&lt;BR /&gt;MX6Q SABRELITE U-Boot &amp;gt; sf probe 1&lt;BR /&gt;JEDEC ID: 0xbf:0x25:0x41&lt;BR /&gt;2048 KiB SST25VF016B - 2MB at 0:1 is now current device&lt;BR /&gt;&lt;BR /&gt;MX6Q SABRELITE U-Boot &amp;gt; sf erase 0 0x40000&lt;BR /&gt;Erasing SPI NOR flash 0x0 [0x40000 bytes]&lt;BR /&gt;................................................................SUCCESS&lt;BR /&gt;&lt;BR /&gt;MX6Q SABRELITE U-Boot &amp;gt; sf write 0x10800000 0 0x40000&lt;BR /&gt;Writing SPI NOR flash 0x0 [0x40000 bytes] &amp;lt;- ram 0x10800000&lt;BR /&gt;...SUCCESS&lt;BR /&gt;&lt;BR /&gt;5)Once the above procedure was done, i rebooted the board after replacing SD card-A with SD card-B, but the board does not boot.&lt;BR /&gt;&lt;BR /&gt;Thanks &amp;amp; Regards&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp; &lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 10 Jul 2012 10:35:46 GMT</pubDate>
    <dc:creator>Ullas</dc:creator>
    <dc:date>2012-07-10T10:35:46Z</dc:date>
    <item>
      <title>Minimal boot-loader for IMX6 Sabrelite</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Minimal-boot-loader-for-IMX6-Sabrelite/m-p/173895#M6185</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;SPAN style="font-size: 2; "&gt;Hi,&lt;BR /&gt; &lt;BR /&gt; The default boot loader on the SPI-NOR flash for IMX6 Sabrelite seems to be u-boot. My intention is to replace this with the minimal loader and load U-boot from SDCard instead.&lt;BR /&gt; &lt;BR /&gt; Linaro's wiki provides a set of binaries as part of iMX6DQ_SPI_to_SD_loader_binaries_rev1.0.zip, but the image doesn't seem to boot.&lt;BR /&gt; (I tried downloading iMX6DQ_SPI_to_uSDHC3.bin using both u-boot and MFGTool.)&lt;BR /&gt; &lt;BR /&gt; Now, i am searching for the boot-loader's source so that i can build the image and try downloading.&lt;BR /&gt; &lt;BR /&gt; Any links to the code/tested image, suggestions and/or alternative methods to solve the problem would be of great help.&lt;BR /&gt; &lt;BR /&gt; Thanks &amp;amp; Regards&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 10 Jul 2012 06:44:21 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Minimal-boot-loader-for-IMX6-Sabrelite/m-p/173895#M6185</guid>
      <dc:creator>Ullas</dc:creator>
      <dc:date>2012-07-10T06:44:21Z</dc:date>
    </item>
    <item>
      <title>Re: Minimal boot-loader for IMX6 Sabrelite</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Minimal-boot-loader-for-IMX6-Sabrelite/m-p/173896#M6186</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;PRE&gt;We use the boot from SD mechanism as described in "Boot from SD" at

&lt;A class="moz-txt-link-freetext" href="https://wiki.linaro.org/Boards/MX6QSabreLite" rel="nofollow noopener noreferrer noopener noreferrer" target="_blank"&gt;&lt;/A&gt;&lt;A href="https://wiki.linaro.org/Boards/MX6QSabreLite" rel="nofollow noopener noreferrer noopener noreferrer" target="test_blank"&gt;https://wiki.linaro.org/Boards/MX6QSabreLite&lt;/A&gt;

on a lot of SabreLite boards and it works quite well.

In the end, iMX6DQ_SPI_to_uSDHC3.bin isn't really a boot loader. It writes two registers telling the i.MX6 BootRom to switch to SD boot and then issues a system reset using the watchdog.

As far as I know, there is no source code for this. But you can easily disassemble the .elf/.bin. You will see that we talk only about ~10-20 ARM assembly instructions, then.&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 29 Oct 2020 09:22:43 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Minimal-boot-loader-for-IMX6-Sabrelite/m-p/173896#M6186</guid>
      <dc:creator>DirkBehme</dc:creator>
      <dc:date>2020-10-29T09:22:43Z</dc:date>
    </item>
    <item>
      <title>Re: Minimal boot-loader for IMX6 Sabrelite</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Minimal-boot-loader-for-IMX6-Sabrelite/m-p/173897#M6187</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;The Sabre lite board has 2 SD ports, and in the SPI_to_SD zip package you have the 2 loaders for uSDHC3 or uSDHC4. So, you should use the appropriate one, depending from which port the i.MX boots !&lt;/P&gt;&lt;P&gt;You must follow the instructions to program with the SPI_to_SD binary in the SPI NOR as if it was u-boot. There are documents in the BSP for that.&lt;/P&gt;&lt;P&gt;There's nothing tricky here.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 10 Jul 2012 08:18:34 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Minimal-boot-loader-for-IMX6-Sabrelite/m-p/173897#M6187</guid>
      <dc:creator>FlorentAuger</dc:creator>
      <dc:date>2012-07-10T08:18:34Z</dc:date>
    </item>
    <item>
      <title>Re: Minimal boot-loader for IMX6 Sabrelite</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Minimal-boot-loader-for-IMX6-Sabrelite/m-p/173898#M6188</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks for your responses.&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;I completely agree, the instructions are very simple, but the board is not booting after following them :-)&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;I am now attaching the exact steps that i followed for the download:&lt;BR /&gt;&lt;BR /&gt;1) Downloaded iMX6DQ_SPI_to_SD_loader_binaries_rev1.0.zip from &lt;A href="https://wiki.linaro.org/Boards/MX6QSabreLite" target="_blank"&gt;https://wiki.linaro.org/Boards/MX6QSabreLite&lt;/A&gt;.&lt;BR /&gt;&lt;BR /&gt;Procedure 1:(Download from U-boot):&lt;BR /&gt;-----------------------------------&lt;BR /&gt;2)Downloaded iMX6DQ_SPI_to_uSDHC3.bin to a full sized SD card (SD card-A):&lt;BR /&gt;&lt;BR /&gt;$sudo dd if=iMX6DQ_SPI_to_uSDHC3.bin of=/dev/sdb&lt;BR /&gt;2+1 records in&lt;BR /&gt;2+1 records out&lt;BR /&gt;1136 bytes (1.1 kB) copied, 0.0210224 s, 54.0 kB/s&lt;BR /&gt;&lt;BR /&gt;3)Downloaded u-boot-mx6q-sabrelite.bin to a full sized SD card (SD card-B):(Assuming that this is a non-padded image)&lt;BR /&gt;$ sudo dd if=u-boot-mx6q-sabrelite.bin of=/dev/sdb bs=1K seek=1; sync&lt;BR /&gt;169+1 records in&lt;BR /&gt;169+1 records out&lt;BR /&gt;173688 bytes (174 kB) copied, 0.0970572 s, 1.8 MB/s&lt;BR /&gt;&lt;BR /&gt;4)Insert the SD card-A at slot SD3, start board and stop autoboot to reach commandline.&lt;BR /&gt;&lt;BR /&gt;4)Below is the log collected from the console:&lt;BR /&gt;&lt;BR /&gt;U-Boot 2009.08 (May 14 2012 - 09:03:18)&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;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;CPU: Freescale i.MX6 family TO0.0 at 792 MHz&lt;BR /&gt;Temperature:&amp;nbsp;&amp;nbsp; can't get valid data!&lt;BR /&gt;mx6q pll1: 792MHz&lt;BR /&gt;mx6q pll2: 528MHz&lt;BR /&gt;mx6q pll3: 480MHz&lt;BR /&gt;mx6q pll8: 50MHz&lt;BR /&gt;ipg clock&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : 66000000Hz&lt;BR /&gt;ipg per clock : 66000000Hz&lt;BR /&gt;uart clock&amp;nbsp;&amp;nbsp;&amp;nbsp; : 80000000Hz&lt;BR /&gt;cspi clock&amp;nbsp;&amp;nbsp;&amp;nbsp; : 60000000Hz&lt;BR /&gt;ahb clock&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : 132000000Hz&lt;BR /&gt;axi clock&amp;nbsp;&amp;nbsp; : 264000000Hz&lt;BR /&gt;emi_slow clock: 29333333Hz&lt;BR /&gt;ddr clock&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : 528000000Hz&lt;BR /&gt;usdhc1 clock&amp;nbsp; : 198000000Hz&lt;BR /&gt;usdhc2 clock&amp;nbsp; : 198000000Hz&lt;BR /&gt;usdhc3 clock&amp;nbsp; : 198000000Hz&lt;BR /&gt;usdhc4 clock&amp;nbsp; : 198000000Hz&lt;BR /&gt;nfc clock&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : 24000000Hz&lt;BR /&gt;Board: MX6Q-SABRELITE:[ POR]&lt;BR /&gt;Boot Device: I2C&lt;BR /&gt;I2C:&amp;nbsp;&amp;nbsp; ready&lt;BR /&gt;DRAM:&amp;nbsp;&amp;nbsp; 1 GB&lt;BR /&gt;MMC:&amp;nbsp;&amp;nbsp; FSL_USDHC: 0,FSL_USDHC: 1&lt;BR /&gt;JEDEC ID: 0xbf:0x25:0x41&lt;BR /&gt;Reading SPI NOR flash 0xc0000 [0x2000 bytes] -&amp;gt; ram 0x276009b8&lt;BR /&gt;SUCCESS&lt;BR /&gt;&lt;BR /&gt;In:&amp;nbsp;&amp;nbsp;&amp;nbsp; serial&lt;BR /&gt;Out:&amp;nbsp;&amp;nbsp; serial&lt;BR /&gt;Err:&amp;nbsp;&amp;nbsp; serial&lt;BR /&gt;Net:&amp;nbsp;&amp;nbsp; got MAC address from IIM: 00:19:b8:00:e5:a0&lt;BR /&gt;FEC0 [PRIME]&lt;BR /&gt;Hit any key to stop autoboot:&amp;nbsp; 0 &lt;BR /&gt;MX6Q SABRELITE U-Boot &amp;gt; mmc dev 0&lt;BR /&gt;mmc0 is current device&lt;BR /&gt;&lt;BR /&gt;MX6Q SABRELITE U-Boot &amp;gt; mmc read 0x10800000 0 200&lt;BR /&gt;MMC read: dev # 0, block # 0, count 512 ... 512 blocks read: OK&lt;BR /&gt;&lt;BR /&gt;MX6Q SABRELITE U-Boot &amp;gt; sf probe 1&lt;BR /&gt;JEDEC ID: 0xbf:0x25:0x41&lt;BR /&gt;2048 KiB SST25VF016B - 2MB at 0:1 is now current device&lt;BR /&gt;&lt;BR /&gt;MX6Q SABRELITE U-Boot &amp;gt; sf erase 0 0x40000&lt;BR /&gt;Erasing SPI NOR flash 0x0 [0x40000 bytes]&lt;BR /&gt;................................................................SUCCESS&lt;BR /&gt;&lt;BR /&gt;MX6Q SABRELITE U-Boot &amp;gt; sf write 0x10800000 0 0x40000&lt;BR /&gt;Writing SPI NOR flash 0x0 [0x40000 bytes] &amp;lt;- ram 0x10800000&lt;BR /&gt;...SUCCESS&lt;BR /&gt;&lt;BR /&gt;5)Once the above procedure was done, i rebooted the board after replacing SD card-A with SD card-B, but the board does not boot.&lt;BR /&gt;&lt;BR /&gt;Thanks &amp;amp; Regards&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp; &lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 10 Jul 2012 10:35:46 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Minimal-boot-loader-for-IMX6-Sabrelite/m-p/173898#M6188</guid>
      <dc:creator>Ullas</dc:creator>
      <dc:date>2012-07-10T10:35:46Z</dc:date>
    </item>
    <item>
      <title>Re: Minimal boot-loader for IMX6 Sabrelite</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Minimal-boot-loader-for-IMX6-Sabrelite/m-p/173899#M6189</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Does your SD card-B contain an U-Boot known to boot from SD on SabreLite?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 10 Jul 2012 11:04:08 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Minimal-boot-loader-for-IMX6-Sabrelite/m-p/173899#M6189</guid>
      <dc:creator>DirkBehme</dc:creator>
      <dc:date>2012-07-10T11:04:08Z</dc:date>
    </item>
    <item>
      <title>Re: Minimal boot-loader for IMX6 Sabrelite</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Minimal-boot-loader-for-IMX6-Sabrelite/m-p/173900#M6190</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I would expect u-boot to determine the uSDHC controller used at boot, but I can't be sure of that.&lt;/P&gt;&lt;P&gt;If that's not the case, from the Freescale docs and Linaro web site, it looks like Freescale u-boot uses uSDHC4, and Linaro uses the uSDHC3. I would suggest to use the appropriate u-boot.&lt;/P&gt;&lt;P&gt;Then, I suggest to ensure that the u-boot is not padded, otherwise add the skip option. Also, I would use the regular block size of a SD card bs=512 instead of 1K.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 10 Jul 2012 12:51:01 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Minimal-boot-loader-for-IMX6-Sabrelite/m-p/173900#M6190</guid>
      <dc:creator>FlorentAuger</dc:creator>
      <dc:date>2012-07-10T12:51:01Z</dc:date>
    </item>
    <item>
      <title>Re: Minimal boot-loader for IMX6 Sabrelite</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Minimal-boot-loader-for-IMX6-Sabrelite/m-p/173901#M6191</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;While working on a 'bootsd' command for main-line U-Boot,&amp;nbsp;Troy found a nice way to do this which is much&lt;/P&gt;&lt;P&gt;easier than the&amp;nbsp;&lt;SPAN&gt;SPI_to_SD loader, though not permanent.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Details are in&amp;nbsp;&lt;A href="http://boundarydevices.com/running-linaro-ubuntu-on-i-mx6-sabre-lite-and-nitrogen6x/" target="_blank"&gt;this blog post&lt;/A&gt;, but the short picture is that you can boot do SDHC3 with this U-Boot command:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;U-Boot&amp;gt; mw.l 0x020d8040 0x3040 &amp;amp;&amp;amp; mw.l 0x020d8044 0x10000000 &amp;amp;&amp;amp; reset&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 10 Jul 2012 13:56:51 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Minimal-boot-loader-for-IMX6-Sabrelite/m-p/173901#M6191</guid>
      <dc:creator>EricNelson</dc:creator>
      <dc:date>2012-07-10T13:56:51Z</dc:date>
    </item>
    <item>
      <title>Re: Minimal boot-loader for IMX6 Sabrelite</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Minimal-boot-loader-for-IMX6-Sabrelite/m-p/173902#M6192</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Apologise for the delay in response.Thank you for your suggestions.&lt;BR /&gt;&lt;BR /&gt;&amp;gt;&amp;gt; Dirk Behme&lt;BR /&gt;&amp;gt;&amp;gt; Does your SD card-B contain an U-Boot known to boot from SD on SabreLite?&lt;BR /&gt;&lt;BR /&gt;I have the following U-boot images:&lt;BR /&gt;(1)uboot-imx image generated by building sourcecode downloaded from git://git.denx.de/u-boot.git uboot-imx&lt;BR /&gt;(Applied patch as specified by i.MX Android R13 (ICS11.11-6x) User Guide)&lt;BR /&gt;&lt;BR /&gt;(2)Uboot images from MFGtool&lt;BR /&gt;&lt;BR /&gt;I have tried downloading all these images on to the SDCard, but haven't been able to boot.&lt;BR /&gt;And since i am unable to boot from SD Card, i dont know if it is a problem with:&lt;BR /&gt;1)The minimal loader on SPI Nor&lt;BR /&gt;2)Uboot image&lt;BR /&gt;I have followed the download procedure as specified in my previous post.&lt;BR /&gt;&lt;BR /&gt;&amp;gt;&amp;gt;Florent Auger&lt;BR /&gt;&amp;gt;&amp;gt;Then, I suggest to ensure that the u-boot is not padded, otherwise add the skip option. Also, I would use the regular &amp;gt;&amp;gt;block size of a SD card bs=512 &amp;gt;&amp;gt;instead of 1K.&lt;BR /&gt;I have tried placing the u-boot image at both locations: 512 and 1K :&lt;BR /&gt;sudo dd if=u-boot-no-padding.bin of=/dev/sdb bs=1K seek=1; sync &lt;BR /&gt;sudo dd if=u-boot-no-padding.bin of=/dev/sdb bs=512 seek=1; sync&lt;BR /&gt;&lt;BR /&gt;Both failed to boot.&lt;BR /&gt;&lt;BR /&gt;&amp;gt;&amp;gt;Eric Nelson&lt;BR /&gt;&amp;gt;&amp;gt;The short picture is that you can boot do SDHC3 with this U-Boot command:&lt;BR /&gt;&amp;gt;&amp;gt;U-Boot&amp;gt; mw.l 0x020d8040 0x3040 &amp;amp;&amp;amp; mw.l 0x020d8044 0x10000000 &amp;amp;&amp;amp; reset&lt;BR /&gt;I followed the procedure in the link &lt;A href="http://boundarydevices.com/running-linaro-ubuntu-on-i-mx6-sabre-lite-and-nitrogen6x/" target="_blank"&gt;http://boundarydevices.com/running-linaro-ubuntu-on-i-mx6-sabre-lite-and-nitrogen6x/&lt;/A&gt; and am able to see the Uboot image from SDcard bootup after a reset command&lt;BR /&gt;&lt;BR /&gt;But i am unable to reproduce this if i replace linaro's uboot.bin with any other u-boot image that i have built or with the ones available from MFGtool.Also, i cant get the linaro's uboot to boot if i download just this into a fresh SDcard at 2K (same location as used by the linaro script).&lt;BR /&gt;&lt;BR /&gt;My goal is to be able to make changes to u-boot and build images to run from both SD-card and NandFlash on Sabrelite.(Later on this has to be used to bootup android)&lt;BR /&gt;&lt;BR /&gt;Now, if there is no other simple way of booting an Uboot image from SDCard, i plan to dig into the script/procedure from &lt;BR /&gt;&lt;A href="http://boundarydevices.com/running-linaro-ubuntu-on-i-mx6-sabre-lite-and-nitrogen6x/" target="_blank"&gt;http://boundarydevices.com/running-linaro-ubuntu-on-i-mx6-sabre-lite-and-nitrogen6x/&lt;/A&gt; to figure out how this is working and try to&amp;nbsp; reproduce the same with my own built image.&lt;BR /&gt;&lt;BR /&gt;Please advise.&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 17 Jul 2012 07:34:15 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Minimal-boot-loader-for-IMX6-Sabrelite/m-p/173902#M6192</guid>
      <dc:creator>Ullas</dc:creator>
      <dc:date>2012-07-17T07:34:15Z</dc:date>
    </item>
    <item>
      <title>Re: Minimal boot-loader for IMX6 Sabrelite</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Minimal-boot-loader-for-IMX6-Sabrelite/m-p/173903#M6193</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;There are probably tens of combinations, so at some point I suggest you to quickly go through the reference manual to understand better what to do, and why you have to do it.&lt;/P&gt;&lt;P&gt;When booting form a SD card, the bootloader must contain an image vector table that must be placed at a certain offset: 0x400 = 1kB.&lt;/P&gt;&lt;P&gt;So, when doing a dd to program the u-boot, if bs=1k then seek=1, if bs=512 then seek=2 !&lt;/P&gt;&lt;P&gt;Also, I consider that the generated u-boot is always padded, and I won't bother much to use another non-padded version.&lt;/P&gt;&lt;P&gt;You can clearly identify the padded one with an od or hexdump command in Linux to identify the IVT header = 0xD1002040 at offset 0x400. Data from 0x4 -&amp;gt; 0x400 are likely zeros, with a 32-bit branch instruction at 0x0.&lt;/P&gt;&lt;P&gt;user@ubuntu:~/linux_bsp/uboot-imx$ hexdump u-boot.bin | more&lt;BR /&gt;0000000 01c6 ea00 0000 0000 0000 0000 0000 0000&lt;BR /&gt;0000010 0000 0000 0000 0000 0000 0000 0000 0000&lt;BR /&gt;*&lt;BR /&gt;0000400 &lt;STRONG&gt;00d1 4020&lt;/STRONG&gt; 0720 2780 0000 0000 042c 2780&lt;BR /&gt;The instruction at 0x0 is useless, it is a legacy from previous i.MX.&lt;/P&gt;&lt;P&gt;Therefore, the typical dd command is:&lt;/P&gt;&lt;P&gt;sudo dd if=u-boot.bin of=/dev/sdb bs=512 seek=2 skip=2; sync&lt;/P&gt;&lt;P&gt;The skip is to remove the first 1kB of zeros from u-boot, and the seek to preserve the MBR and related file system information usually contained in these first blocks of a SD card.&lt;/P&gt;&lt;P&gt;The small SPI_to_SD code does the same thing than the boundary device solution through a u-boot command line. if you disassemble the code, you'll see the same.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 17 Jul 2012 09:46:33 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Minimal-boot-loader-for-IMX6-Sabrelite/m-p/173903#M6193</guid>
      <dc:creator>FlorentAuger</dc:creator>
      <dc:date>2012-07-17T09:46:33Z</dc:date>
    </item>
    <item>
      <title>Re: Minimal boot-loader for IMX6 Sabrelite</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Minimal-boot-loader-for-IMX6-Sabrelite/m-p/173904#M6194</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Yes, Florent is right. The boundary device solution through the u-boot command line and the SPI_to_SD code do the same thing. If you are able to boot the SD card with the boundary device solution (really make sure that the U-Boot from the SD card is started, e.g. by checking the version or similar) then your SD card is fine. This would mean that the SPI_to_SD code in the SPI NOR flash isn't working properly (?).&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 17 Jul 2012 11:15:12 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Minimal-boot-loader-for-IMX6-Sabrelite/m-p/173904#M6194</guid>
      <dc:creator>DirkBehme</dc:creator>
      <dc:date>2012-07-17T11:15:12Z</dc:date>
    </item>
    <item>
      <title>Re: Minimal boot-loader for IMX6 Sabrelite</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Minimal-boot-loader-for-IMX6-Sabrelite/m-p/173905#M6195</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Just some question to better understand the boot on sabrelite.&lt;/P&gt;&lt;P&gt;(reopening this issue). &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1) reading around it seems the the sabrelite can only boot from SPINOR because the fuses are blowed to do that? is it true?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2) the bounduary procedure use a SPIto SD code the tell to the ROM monitor of imx6Q to boot from SD even if the fuses say boot from SPINOR? true? (&lt;A href="https://wiki.linaro.org/Boards/MX6QSabreLite" title="https://wiki.linaro.org/Boards/MX6QSabreLite"&gt;Boards/MX6QSabreLite - Linaro Wiki&lt;/A&gt;)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;3) if item 1) is true, my question is if the uboot is loaded from spiNOR shouldn't be possible anyway to load kernel and rootFS from a differnet media (SD or Sata), if that version of ubbot hase such driver for imx6?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;thanks Omar&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 08 Feb 2013 11:18:55 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Minimal-boot-loader-for-IMX6-Sabrelite/m-p/173905#M6195</guid>
      <dc:creator>Selea</dc:creator>
      <dc:date>2013-02-08T11:18:55Z</dc:date>
    </item>
  </channel>
</rss>

