<?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 QSPI Flash cannot be accessed when booted with other than QSPI Boot in i.MX Processors</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/QSPI-Flash-cannot-be-accessed-when-booted-with-other-than-QSPI/m-p/1029453#M152085</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello, Community.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Previously, when I asked about how to recover from an abnormal image written on the MCIMX7SABRE board, I was advised to boot from an SD card or use a UUU.&lt;/P&gt;&lt;P&gt;Thank you for your suggestion!&lt;/P&gt;&lt;P&gt;I am checking it now.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;By the way, I have a question.&lt;/P&gt;&lt;P&gt;I think that QSPI flash can be erased and rewritten if it is set to something other than QSPI Boot so that abnormal programs do not work.&lt;/P&gt;&lt;P&gt;But It couldn't.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;When dumping address 0x60000000 at that time, something should be written, but it is filled with all zeros.&lt;BR /&gt;I think I can't access QSPI flash for some reason.&lt;BR /&gt;Do you know why?&lt;/P&gt;&lt;P&gt;I'm using IAR's Flash loader.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards,&lt;/P&gt;&lt;P&gt;Yuichi Takeda&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 12 Nov 2019 00:52:24 GMT</pubDate>
    <dc:creator>yuichi_takeda</dc:creator>
    <dc:date>2019-11-12T00:52:24Z</dc:date>
    <item>
      <title>QSPI Flash cannot be accessed when booted with other than QSPI Boot</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/QSPI-Flash-cannot-be-accessed-when-booted-with-other-than-QSPI/m-p/1029453#M152085</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello, Community.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Previously, when I asked about how to recover from an abnormal image written on the MCIMX7SABRE board, I was advised to boot from an SD card or use a UUU.&lt;/P&gt;&lt;P&gt;Thank you for your suggestion!&lt;/P&gt;&lt;P&gt;I am checking it now.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;By the way, I have a question.&lt;/P&gt;&lt;P&gt;I think that QSPI flash can be erased and rewritten if it is set to something other than QSPI Boot so that abnormal programs do not work.&lt;/P&gt;&lt;P&gt;But It couldn't.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;When dumping address 0x60000000 at that time, something should be written, but it is filled with all zeros.&lt;BR /&gt;I think I can't access QSPI flash for some reason.&lt;BR /&gt;Do you know why?&lt;/P&gt;&lt;P&gt;I'm using IAR's Flash loader.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards,&lt;/P&gt;&lt;P&gt;Yuichi Takeda&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 12 Nov 2019 00:52:24 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/QSPI-Flash-cannot-be-accessed-when-booted-with-other-than-QSPI/m-p/1029453#M152085</guid>
      <dc:creator>yuichi_takeda</dc:creator>
      <dc:date>2019-11-12T00:52:24Z</dc:date>
    </item>
    <item>
      <title>Re: QSPI Flash cannot be accessed when booted with other than QSPI Boot</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/QSPI-Flash-cannot-be-accessed-when-booted-with-other-than-QSPI/m-p/1029454#M152086</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Yuichi&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;when qspi is used for boot it is properly configured by qspi configuration parameters&lt;/P&gt;&lt;P&gt;described in Table 6-50. QuadSPI configuration parameters &lt;A href="https://www.nxp.com/webapp/Download?colCode=IMX7DRM" target="_blank"&gt;&lt;STRONG&gt;i.MX 7Dual Applications Processor Reference Manual&lt;/STRONG&gt;&lt;/A&gt;&lt;/P&gt;&lt;P&gt;IAR's Flash loader is not supported by nxp, one can try with uboot, check for #ifdef CONFIG_FSL_QSPI in&lt;/P&gt;&lt;P&gt;uboot/include/configs/mx7dsabresd.h&lt;/P&gt;&lt;P&gt;&lt;A class="link-titled" href="https://source.codeaurora.org/external/imx/uboot-imx/tree/include/configs/mx7dsabresd.h?h=imx_v2018.03_4.14.78_1.0.0_ga" title="https://source.codeaurora.org/external/imx/uboot-imx/tree/include/configs/mx7dsabresd.h?h=imx_v2018.03_4.14.78_1.0.0_ga"&gt;mx7dsabresd.h\configs\include - uboot-imx - i.MX U-Boot&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>Tue, 12 Nov 2019 05:19:09 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/QSPI-Flash-cannot-be-accessed-when-booted-with-other-than-QSPI/m-p/1029454#M152086</guid>
      <dc:creator>igorpadykov</dc:creator>
      <dc:date>2019-11-12T05:19:09Z</dc:date>
    </item>
    <item>
      <title>Re: QSPI Flash cannot be accessed when booted with other than QSPI Boot</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/QSPI-Flash-cannot-be-accessed-when-booted-with-other-than-QSPI/m-p/1029455#M152087</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;SPAN style="color: #51626f; background-color: #ffffff;"&gt;Hi igor&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #51626f; background-color: #ffffff;"&gt;Thank you for your reply!&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #51626f; background-color: #ffffff;"&gt;The &lt;SPAN&gt;QuadSPI configuration parameters&lt;/SPAN&gt;&amp;nbsp;have been written with an abnormal image using the IAR flash loader.&lt;BR /&gt;They are as follows.&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #51626f; background-color: #ffffff;"&gt;----------------------&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #51626f; background-color: #ffffff;"&gt;__root const SFLASH_CONFIGURATION_PARAM quadspi_conf = {&lt;BR /&gt;0x0, /*dqs_loopback=0 or 1*/&lt;BR /&gt;0x0, /*hold_delay=0 to 3*/&lt;BR /&gt;0x0, /*hsphs=0 (Half Speed Phase sampling at non-inverted clock) or 1 (sampling at inverted clock)*/&lt;BR /&gt;0x0, /*hsdly=0 (Half Speed Delay one clk delay) or 1 (two clk cycle delay)*/&lt;BR /&gt;0x0, /*device_quad_mode_en=1 to enable sending command to SPI device*/&lt;BR /&gt;0x0, /*device_cmd=command to device for enableing Quad I/O mode*/&lt;BR /&gt;0x3000002, /*write_cmd_ipcr=hex value to be written to IPCR register for write cmd of device*/&lt;BR /&gt;0x2000000, /*write_enable_ipcr=hex value to be written to IPCR register for write enable of device*/&lt;BR /&gt;0x3, /*cs_hold_time=0 to 0xF*/&lt;BR /&gt;0x3, /*cs_setup_time=0 to 0xF*/&lt;BR /&gt;0x8000000, /*sflash_A1_size=size in byte(hex)*/&lt;BR /&gt;0x0, /*sflash_A2_size=size in byte(hex)*/&lt;BR /&gt;0x0, /*sflash_B1_size=size in byte(hex)*/&lt;BR /&gt;0x0, /*sflash_B2_size=size in byte(hex)*/&lt;BR /&gt;0x0, /*sclk_freq=0 to 6*/&lt;BR /&gt;0x0, /*busy_bit_offset=bit position of device BUSY in device status register*/&lt;BR /&gt;0x1, /*sflash_type=1 (Single), 2 (Dual), 4 (Quad mode of operation)*/&lt;BR /&gt;0x0, /*sflash_port=0 or 1 (Port B used)*/&lt;BR /&gt;0x0, /*ddr_mode_enable=0 or 1*/&lt;BR /&gt;0x0, /*dqs_enable=0 or 1*/&lt;BR /&gt;0x0, /*parallel_mode_enable=0 or 1*/&lt;BR /&gt;0x0, /*portA_cs1=0 or 1*/&lt;BR /&gt;0x0, /*portB_cs1=0 or 1*/&lt;BR /&gt;0x0, /*fsphs=0 (Full Speed Phase sampling at non-inverted clock) or 1 (sampling at inverted clock)*/&lt;BR /&gt;0x0, /*fsdly=0 (Full Speed Delay One clk delay) or 1 (two clk cycle delay)*/&lt;BR /&gt;0x0, /*ddrsmp=0 to 7 (sampling point for incoming data in DDR mode)*/&lt;BR /&gt;0x08180403, /*lut[0] command sequence read*/&lt;BR /&gt;0x24001c04, /*lut[1] command sequence*/&lt;BR /&gt;0x0, /*lut[2] command sequence*/&lt;BR /&gt;0x0, /*lut[3] command sequence*/&lt;BR /&gt;0x1c020405, /*lut[4] command sequence read status*/&lt;BR /&gt;0x2400, /*lut[5] command sequence*/&lt;BR /&gt;0x0, /*lut[6] command sequence*/&lt;BR /&gt;0x0, /*lut[7] command sequence*/&lt;BR /&gt;0x24000406, /*lut[8] command sequence write en*/&lt;BR /&gt;0x0, /*lut[9] command sequence*/&lt;BR /&gt;0x0, /*lut[10] command sequence*/&lt;BR /&gt;0x0, /*lut[11] command sequence*/&lt;BR /&gt;0x20010401, /*lut[12] command sequence*/&lt;BR /&gt;0x2400, /*lut[13] command sequence*/&lt;BR /&gt;0x0, /*lut[14] command sequence*/&lt;BR /&gt;0x0, /*lut[15] command sequence*/&lt;BR /&gt;0x1c010435, /*lut[16] command sequence*/&lt;BR /&gt;0x2400, /*lut[17] command sequence*/&lt;BR /&gt;0x0, /*lut[18] command sequence*/&lt;BR /&gt;0x0, /*lut[19] command sequence*/&lt;BR /&gt;0x0, /*lut[20] command sequence*/&lt;BR /&gt;0x0, /*lut[21] command sequence*/&lt;BR /&gt;0x0, /*lut[22] command sequence*/&lt;BR /&gt;0x0, /*lut[23] command sequence*/&lt;BR /&gt;0x0, /*lut[24] command sequence*/&lt;BR /&gt;0x0, /*lut[25] command sequence*/&lt;BR /&gt;0x0, /*lut[26] command sequence*/&lt;BR /&gt;0x0, /*lut[27] command sequence*/&lt;BR /&gt;0x0, /*lut[28] command sequence*/&lt;BR /&gt;0x0, /*lut[29] command sequence*/&lt;BR /&gt;0x0, /*lut[30] command sequence*/&lt;BR /&gt;0x0, /*lut[31] command sequence*/&lt;BR /&gt;0x0, /*lut[32] command sequence*/&lt;BR /&gt;0x0, /*lut[33] command sequence*/&lt;BR /&gt;0x0, /*lut[34] command sequence*/&lt;BR /&gt;0x0, /*lut[35] command sequence*/&lt;BR /&gt;0x0, /*lut[36] command sequence*/&lt;BR /&gt;0x0, /*lut[37] command sequence*/&lt;BR /&gt;0x0, /*lut[38] command sequence*/&lt;BR /&gt;0x0, /*lut[39] command sequence*/&lt;BR /&gt;0x0, /*lut[40] command sequence*/&lt;BR /&gt;0x0, /*lut[41] command sequence*/&lt;BR /&gt;0x0, /*lut[42] command sequence*/&lt;BR /&gt;0x0, /*lut[43] command sequence*/&lt;BR /&gt;0x0, /*lut[44] command sequence*/&lt;BR /&gt;0x0, /*lut[45] command sequence*/&lt;BR /&gt;0x0, /*lut[46] command sequence*/&lt;BR /&gt;0x0, /*lut[47] command sequence*/&lt;BR /&gt;0x0, /*lut[48] command sequence*/&lt;BR /&gt;0x0, /*lut[49] command sequence*/&lt;BR /&gt;0x0, /*lut[50] command sequence*/&lt;BR /&gt;0x0, /*lut[51] command sequence*/&lt;BR /&gt;0x0, /*lut[52] command sequence*/&lt;BR /&gt;0x0, /*lut[53] command sequence*/&lt;BR /&gt;0x0, /*lut[54] command sequence*/&lt;BR /&gt;0x0, /*lut[55] command sequence*/&lt;BR /&gt;0x0, /*lut[56] command sequence*/&lt;BR /&gt;0x0, /*lut[57] command sequence*/&lt;BR /&gt;0x0, /*lut[58] command sequence*/&lt;BR /&gt;0x0, /*lut[59] command sequence*/&lt;BR /&gt;0x0, /*lut[60] command sequence*/&lt;BR /&gt;0x0, /*lut[61] command sequence*/&lt;BR /&gt;0x0, /*lut[62] command sequence*/&lt;BR /&gt;0x0, /*lut[63] command sequence*/&lt;BR /&gt;0x1000001, /*read_status_ipcr=hex value to be written to IPCR register for reading status reg of device*/&lt;BR /&gt;0x0, /*enable_dqs_phase=0 or 1*/&lt;BR /&gt;0x0, /*config_cmds_en, enable config command*/&lt;BR /&gt;0x0, /*config_cmds[0]*/&lt;BR /&gt;0x0, /*config_cmds[1]*/&lt;BR /&gt;0x0, /*config_cmds[2]*/&lt;BR /&gt;0x0, /*config_cmds[3]*/&lt;BR /&gt;0x0, /*config_cmds_args[0]*/&lt;BR /&gt;0x0, /*config_cmds_args[1]*/&lt;BR /&gt;0x0, /*config_cmds_args[2]*/&lt;BR /&gt;0x0, /*config_cmds_args[3]*/&lt;BR /&gt;0x0, /*io_pad_override_setting QSPI pins override setting*/&lt;BR /&gt;0x0, /*reserve[0], 25 byte reserved area*/&lt;BR /&gt;0x0, /*reserve[1], 25 byte reserved area*/&lt;BR /&gt;0x0, /*reserve[2], 25 byte reserved area*/&lt;BR /&gt;0x0, /*reserve[3], 25 byte reserved area*/&lt;BR /&gt;0x0, /*reserve[4], 25 byte reserved area*/&lt;BR /&gt;0x0, /*reserve[5], 25 byte reserved area*/&lt;BR /&gt;0x0, /*reserve[6], 25 byte reserved area*/&lt;BR /&gt;0x0, /*reserve[7], 25 byte reserved area*/&lt;BR /&gt;0x0, /*reserve[8], 25 byte reserved area*/&lt;BR /&gt;0x0, /*reserve[9], 25 byte reserved area*/&lt;BR /&gt;0x0, /*reserve[10], 25 byte reserved area*/&lt;BR /&gt;0x0, /*reserve[11], 25 byte reserved area*/&lt;BR /&gt;0x0, /*reserve[12], 25 byte reserved area*/&lt;BR /&gt;0x0, /*reserve[13], 25 byte reserved area*/&lt;BR /&gt;0x0, /*reserve[14], 25 byte reserved area*/&lt;BR /&gt;0x0, /*reserve[15], 25 byte reserved area*/&lt;BR /&gt;0x0, /*reserve[16], 25 byte reserved area*/&lt;BR /&gt;0x0, /*reserve[17], 25 byte reserved area*/&lt;BR /&gt;0x0, /*reserve[18], 25 byte reserved area*/&lt;BR /&gt;0x0, /*reserve[19], 25 byte reserved area*/&lt;BR /&gt;0x0, /*reserve[20], 25 byte reserved area*/&lt;BR /&gt;0x0, /*reserve[21], 25 byte reserved area*/&lt;BR /&gt;0x0, /*reserve[22], 25 byte reserved area*/&lt;BR /&gt;0x0, /*reserve[23], 25 byte reserved area*/&lt;BR /&gt;0x0, /*reserve[24], 25 byte reserved area*/&lt;BR /&gt;QSPI_TAG, /*tag, QSPI configuration tag, should be 0xc0ffee01*/&lt;BR /&gt;};&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="color: #3d3d3d;"&gt;&lt;SPAN style="color: #51626f; background-color: #ffffff;"&gt;----------------------&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="color: #3d3d3d;"&gt;&lt;/P&gt;&lt;P&gt;These should be written at address 0x60000000-, but when booted by other than QSPI Boot, they are all 0 when dumped with IAR EW.&lt;/P&gt;&lt;P&gt;The address 0x60000400-, where the program image should be written, are 0 as well.&lt;/P&gt;&lt;P&gt;When booting with QSPI Boot, the flash loader does not work because of an abnormal program running.&lt;BR /&gt;Therefore, I tried to start the flash loader other than QSPI Boot, but I could not access QSPI flash.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards,&lt;/P&gt;&lt;P&gt;Yuichi Takeda&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 12 Nov 2019 07:48:52 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/QSPI-Flash-cannot-be-accessed-when-booted-with-other-than-QSPI/m-p/1029455#M152087</guid>
      <dc:creator>yuichi_takeda</dc:creator>
      <dc:date>2019-11-12T07:48:52Z</dc:date>
    </item>
  </channel>
</rss>

