<?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のトピックHow can i check BOOT_CFG values at boot?</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/How-can-i-check-BOOT-CFG-values-at-boot/m-p/742326#M115542</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I´m trying to boot from a new NAND on&amp;nbsp;MX53. I can boot with serial download, and use my NAND,but I can´t boot from it.&lt;/P&gt;&lt;P&gt;I know I have to put correct bytes on flash header at NAND first bytes, and I know my BOOT_CFG1,2,3&amp;nbsp;bytes must contain correct parameters for my NAND (ECC bit number,nand page size...etc) but the only way I have too boot is from seriual downloader, so ,once I´m at U-Boot&amp;gt; prompt, I´d like to check if thos BOOT_CFG and BT_FUSE_SEL bits are the correct ones.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Could I check that with uboot (and how:&amp;nbsp;md.b &amp;lt;address&amp;gt; ? ) or, as I&amp;nbsp;have booted from serial downloader the values I see are somehow overwritten?.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I´ve already tried kobs-ng and MFGTools as suggested (&lt;A _jive_internal="true" href="https://community.nxp.com/thread/462965"&gt;https://community.nxp.com/thread/462965&lt;/A&gt;)&lt;/P&gt;&lt;P&gt;In order to&amp;nbsp;create the valid flash-header,&amp;nbsp;MFGTools seems to use a kobs-ng binary (check ucl.xml file) inside a preconfigured loaded Linux image and it seems difficult to configure, so in fact&amp;nbsp;I think is of no much value if i can execute my own kobs-ng once I´ve boot with&amp;nbsp;serial downloader&amp;nbsp;&amp;nbsp;from my Linux image because it seems the same method.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;So I download and compile kobs-ng,but...my kobs-ng&amp;nbsp;does not work:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="mailto:root@BSP:/tmp"&gt;root&lt;/A&gt;# ./kobs-ng init -v -x /root/uboot.bin&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;MTD CONFIG:&lt;BR /&gt;&amp;nbsp; chip_0_device_path = "/dev/mtd0"&lt;BR /&gt;&amp;nbsp; chip_1_device_path = "(null)"&lt;BR /&gt;&amp;nbsp; search_exponent = 2&lt;BR /&gt;&amp;nbsp; data_setup_time = 80&lt;BR /&gt;&amp;nbsp; data_hold_time = 60&lt;BR /&gt;&amp;nbsp; address_setup_time = 25&lt;BR /&gt;&amp;nbsp; data_sample_time = 6&lt;BR /&gt;&amp;nbsp; row_address_size = 3&lt;BR /&gt;&amp;nbsp; column_address_size = 2&lt;BR /&gt;&amp;nbsp; read_command_code1 = 0&lt;BR /&gt;&amp;nbsp; read_command_code2 = 48&lt;BR /&gt;&amp;nbsp; boot_stream_major_version = 1&lt;BR /&gt;&amp;nbsp; boot_stream_minor_version = 0&lt;BR /&gt;&amp;nbsp; boot_stream_sub_version = 0&lt;BR /&gt;&amp;nbsp; ncb_version = 3&lt;BR /&gt;&amp;nbsp; boot_stream_1_address = 0&lt;BR /&gt;&amp;nbsp; boot_stream_2_address = 0&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; -- We add the 1k-padding to the uboot.&lt;BR /&gt;.tmp_kobs_ng: verifying using key '00000000000000000000000000000000'&lt;BR /&gt;.tmp_kobs_ng: is a valid bootstream for key '00000000000000000000000000000000'&lt;BR /&gt;mtd: opening: "/dev/mtd0"&lt;BR /&gt;NFC geometry :&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ECC Strength&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : 2&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Page Size in Bytes : 2112&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Metadata size&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : 10&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ECC Chunk Size in byte : 512&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ECC Chunk count&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : 4&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Block Mark Byte Offset : 1999&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Block Mark Bit Offset&amp;nbsp; : 0&lt;BR /&gt;====================================================&lt;BR /&gt;&lt;STRONG&gt;mtd: opened '/dev/mtd0' - '(null)'&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;mtd: max_boot_stream_size_in_bytes = 0&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;mtd: boot_stream_size_in_bytes = 231840&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;mtd: bootstream too large&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;mtd_init failed!&amp;nbsp;&amp;nbsp;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I think this is due to kobs-ng not been able to correctly read in /sys my NAND parameters and calculate&amp;nbsp;right sizes from it, so I´m stuck...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 11px;"&gt;Edit: The maths for my 2K+64, ECC 4bit NAND &amp;nbsp;are:&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 11px;"&gt;mtd_size=1048576 erase_size=131072 writesize=2048&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 11px;"&gt;So&amp;nbsp;&lt;STRONG&gt;max_boot_stream_size_in_bytes=0&lt;/STRONG&gt; (1048576 - 524288*2)/2 &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 11px;"&gt;&lt;SPAN style="font-size: 11px;"&gt;And obviously, boot_stream_size_in_bytes &amp;gt;= 0 --&amp;gt; Failure&lt;/SPAN&gt; &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Anyway, lets start from the beginning: how do I check BT_FUSE_SEL and BOOT_CFG parameters from uboot? Or should I use JTAG?&lt;/P&gt;&lt;P&gt;Thank you&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 22 Jan 2018 11:25:54 GMT</pubDate>
    <dc:creator>paulroy</dc:creator>
    <dc:date>2018-01-22T11:25:54Z</dc:date>
    <item>
      <title>How can i check BOOT_CFG values at boot?</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/How-can-i-check-BOOT-CFG-values-at-boot/m-p/742326#M115542</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I´m trying to boot from a new NAND on&amp;nbsp;MX53. I can boot with serial download, and use my NAND,but I can´t boot from it.&lt;/P&gt;&lt;P&gt;I know I have to put correct bytes on flash header at NAND first bytes, and I know my BOOT_CFG1,2,3&amp;nbsp;bytes must contain correct parameters for my NAND (ECC bit number,nand page size...etc) but the only way I have too boot is from seriual downloader, so ,once I´m at U-Boot&amp;gt; prompt, I´d like to check if thos BOOT_CFG and BT_FUSE_SEL bits are the correct ones.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Could I check that with uboot (and how:&amp;nbsp;md.b &amp;lt;address&amp;gt; ? ) or, as I&amp;nbsp;have booted from serial downloader the values I see are somehow overwritten?.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I´ve already tried kobs-ng and MFGTools as suggested (&lt;A _jive_internal="true" href="https://community.nxp.com/thread/462965"&gt;https://community.nxp.com/thread/462965&lt;/A&gt;)&lt;/P&gt;&lt;P&gt;In order to&amp;nbsp;create the valid flash-header,&amp;nbsp;MFGTools seems to use a kobs-ng binary (check ucl.xml file) inside a preconfigured loaded Linux image and it seems difficult to configure, so in fact&amp;nbsp;I think is of no much value if i can execute my own kobs-ng once I´ve boot with&amp;nbsp;serial downloader&amp;nbsp;&amp;nbsp;from my Linux image because it seems the same method.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;So I download and compile kobs-ng,but...my kobs-ng&amp;nbsp;does not work:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="mailto:root@BSP:/tmp"&gt;root&lt;/A&gt;# ./kobs-ng init -v -x /root/uboot.bin&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;MTD CONFIG:&lt;BR /&gt;&amp;nbsp; chip_0_device_path = "/dev/mtd0"&lt;BR /&gt;&amp;nbsp; chip_1_device_path = "(null)"&lt;BR /&gt;&amp;nbsp; search_exponent = 2&lt;BR /&gt;&amp;nbsp; data_setup_time = 80&lt;BR /&gt;&amp;nbsp; data_hold_time = 60&lt;BR /&gt;&amp;nbsp; address_setup_time = 25&lt;BR /&gt;&amp;nbsp; data_sample_time = 6&lt;BR /&gt;&amp;nbsp; row_address_size = 3&lt;BR /&gt;&amp;nbsp; column_address_size = 2&lt;BR /&gt;&amp;nbsp; read_command_code1 = 0&lt;BR /&gt;&amp;nbsp; read_command_code2 = 48&lt;BR /&gt;&amp;nbsp; boot_stream_major_version = 1&lt;BR /&gt;&amp;nbsp; boot_stream_minor_version = 0&lt;BR /&gt;&amp;nbsp; boot_stream_sub_version = 0&lt;BR /&gt;&amp;nbsp; ncb_version = 3&lt;BR /&gt;&amp;nbsp; boot_stream_1_address = 0&lt;BR /&gt;&amp;nbsp; boot_stream_2_address = 0&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; -- We add the 1k-padding to the uboot.&lt;BR /&gt;.tmp_kobs_ng: verifying using key '00000000000000000000000000000000'&lt;BR /&gt;.tmp_kobs_ng: is a valid bootstream for key '00000000000000000000000000000000'&lt;BR /&gt;mtd: opening: "/dev/mtd0"&lt;BR /&gt;NFC geometry :&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ECC Strength&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : 2&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Page Size in Bytes : 2112&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Metadata size&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : 10&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ECC Chunk Size in byte : 512&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ECC Chunk count&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : 4&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Block Mark Byte Offset : 1999&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Block Mark Bit Offset&amp;nbsp; : 0&lt;BR /&gt;====================================================&lt;BR /&gt;&lt;STRONG&gt;mtd: opened '/dev/mtd0' - '(null)'&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;mtd: max_boot_stream_size_in_bytes = 0&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;mtd: boot_stream_size_in_bytes = 231840&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;mtd: bootstream too large&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;mtd_init failed!&amp;nbsp;&amp;nbsp;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I think this is due to kobs-ng not been able to correctly read in /sys my NAND parameters and calculate&amp;nbsp;right sizes from it, so I´m stuck...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 11px;"&gt;Edit: The maths for my 2K+64, ECC 4bit NAND &amp;nbsp;are:&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 11px;"&gt;mtd_size=1048576 erase_size=131072 writesize=2048&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 11px;"&gt;So&amp;nbsp;&lt;STRONG&gt;max_boot_stream_size_in_bytes=0&lt;/STRONG&gt; (1048576 - 524288*2)/2 &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 11px;"&gt;&lt;SPAN style="font-size: 11px;"&gt;And obviously, boot_stream_size_in_bytes &amp;gt;= 0 --&amp;gt; Failure&lt;/SPAN&gt; &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Anyway, lets start from the beginning: how do I check BT_FUSE_SEL and BOOT_CFG parameters from uboot? Or should I use JTAG?&lt;/P&gt;&lt;P&gt;Thank you&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 22 Jan 2018 11:25:54 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/How-can-i-check-BOOT-CFG-values-at-boot/m-p/742326#M115542</guid>
      <dc:creator>paulroy</dc:creator>
      <dc:date>2018-01-22T11:25:54Z</dc:date>
    </item>
    <item>
      <title>Re: How can i check BOOT_CFG values at boot?</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/How-can-i-check-BOOT-CFG-values-at-boot/m-p/742327#M115543</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Ok, I can read those values from UBoot when i boot using dserial downloader. They are part of SCR_SBMR register at 0x53FD_0004. (last 3 bytes)&lt;/P&gt;&lt;P&gt;Also, as I can use&amp;nbsp;serial to boot,a Linux image, I read them&amp;nbsp;with devmem also.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;But , I don´t know if this values are&amp;nbsp;set by Serial Downloader UBoot or taken from NAND during boot process.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 24 Jan 2018 16:53:08 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/How-can-i-check-BOOT-CFG-values-at-boot/m-p/742327#M115543</guid>
      <dc:creator>paulroy</dc:creator>
      <dc:date>2018-01-24T16:53:08Z</dc:date>
    </item>
    <item>
      <title>Re: How can i check BOOT_CFG values at boot?</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/How-can-i-check-BOOT-CFG-values-at-boot/m-p/742328#M115544</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;You can read eFuse with "iim read" u-boot command. Type "iim help" for the details.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Have a great day,&lt;BR /&gt;Victor&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 26 Jan 2018 04:34:47 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/How-can-i-check-BOOT-CFG-values-at-boot/m-p/742328#M115544</guid>
      <dc:creator>b36401</dc:creator>
      <dc:date>2018-01-26T04:34:47Z</dc:date>
    </item>
  </channel>
</rss>

