<?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 RT Crossover MCUsのトピックRe: FlexSPI usage for read/write non boot device</title>
    <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/FlexSPI-usage-for-read-write-non-boot-device/m-p/1860783#M30179</link>
    <description>&lt;P&gt;Yes, it is suggested to use IP to write the flexspi. There are issues with writing through AHB on most flashes.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;For the LUT please refer to the chapter on the RM. An example of how to modify the LUT based on different flash is on this application note:&amp;nbsp;&lt;A href="https://www.nxp.com/docs/en/nxp/application-notes/AN12183.pdf" target="_blank"&gt;How to Enable Debugging for FLEXSPI NOR Flash (nxp.com)&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;Best regards,&lt;BR /&gt;Omar&lt;/P&gt;</description>
    <pubDate>Tue, 07 May 2024 19:00:11 GMT</pubDate>
    <dc:creator>Omar_Anguiano</dc:creator>
    <dc:date>2024-05-07T19:00:11Z</dc:date>
    <item>
      <title>FlexSPI usage for read/write non boot device</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/FlexSPI-usage-for-read-write-non-boot-device/m-p/1857437#M30065</link>
      <description>&lt;P&gt;I'm designing a custom board with RT1170.&lt;/P&gt;&lt;P&gt;I connect a device which has QSPI interface on FlexSPI2.&lt;/P&gt;&lt;P&gt;I could read the data properly from the QSPI devices when I used Normal read mode or Fast read mode.&lt;/P&gt;&lt;P&gt;However the first byte became 0xFF if I tried to read by fast Quad mode.&lt;/P&gt;&lt;P&gt;Could you help me how to read properly by fast quad?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I'm not sure how to use LUT well.&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;	status_t status;
	SDK_ALIGN( static uint8_t s_nor_read_buffer[256], 4 );

    flexspi_nor_flash_init( EXAMPLE_FLEXSPI );

    /* Enter quad mode. */
    status = flexspi_nor_enable_quad_mode( EXAMPLE_FLEXSPI );
    if (status != kStatus_Success)
    {
        return status;
    }

	status = flexspi_nor_flash_read( EXAMPLE_FLEXSPI, start_addr , (void *)s_nor_read_buffer , sizeof( s_nor_read_buffer ));
    if (status != kStatus_Success)
    {
        return status;
    }
	return 0;
}


static const uint32_t flexspi_seq_cmd_lut_flash[FLEXSPI_SEQ_CMD_LUT_LENGTH] = {
	// Normal read mode -SDR
    [4 * NOR_CMD_LUT_SEQ_IDX_READ_NORMAL] =
        FLEXSPI_LUT_SEQ(kFLEXSPI_Command_SDR, kFLEXSPI_1PAD, 0x03, kFLEXSPI_Command_RADDR_SDR, kFLEXSPI_1PAD, 0x18),
    [4 * NOR_CMD_LUT_SEQ_IDX_READ_NORMAL + 1] =
        FLEXSPI_LUT_SEQ(kFLEXSPI_Command_READ_SDR, kFLEXSPI_1PAD, 0x04, kFLEXSPI_Command_STOP, kFLEXSPI_1PAD, 0),

	// Fast read mode - SDR
    [4 * NOR_CMD_LUT_SEQ_IDX_READ_FAST] =
        FLEXSPI_LUT_SEQ(kFLEXSPI_Command_SDR, kFLEXSPI_1PAD, 0x0B, kFLEXSPI_Command_RADDR_SDR, kFLEXSPI_1PAD, 0x18),
    [4 * NOR_CMD_LUT_SEQ_IDX_READ_FAST + 1] =
		FLEXSPI_LUT_SEQ( kFLEXSPI_Command_DUMMY_SDR, kFLEXSPI_1PAD, 0x08, kFLEXSPI_Command_READ_SDR, kFLEXSPI_1PAD, 0x04),

	// Fast read quad mode - SDR
	[4 * NOR_CMD_LUT_SEQ_IDX_READ_FAST_QUAD] =
		FLEXSPI_LUT_SEQ(kFLEXSPI_Command_SDR, kFLEXSPI_1PAD, 0xEB, kFLEXSPI_Command_RADDR_SDR, kFLEXSPI_4PAD, 0x18),
	[4 * NOR_CMD_LUT_SEQ_IDX_READ_FAST_QUAD + 1] =
		FLEXSPI_LUT_SEQ( kFLEXSPI_Command_DUMMY_SDR, kFLEXSPI_4PAD, 0x06, kFLEXSPI_Command_READ_SDR, kFLEXSPI_4PAD, 0x04 ),	// Transmit command/address and transmit/receive data only through DATA[3:0].&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 30 Apr 2024 09:26:09 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/FlexSPI-usage-for-read-write-non-boot-device/m-p/1857437#M30065</guid>
      <dc:creator>Eugene3</dc:creator>
      <dc:date>2024-04-30T09:26:09Z</dc:date>
    </item>
    <item>
      <title>Re: FlexSPI usage for read/write non boot device</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/FlexSPI-usage-for-read-write-non-boot-device/m-p/1859890#M30148</link>
      <description>&lt;P&gt;Hello&lt;BR /&gt;I hope you are well.&lt;/P&gt;
&lt;P&gt;Are you writing/reading through IP commands? There are some issues when writing on AHB. Is cache enabled?&lt;BR /&gt;Regarding the LUT, it needs to be configured according to specific flash parameters and it may vary depending on the vendor.&lt;/P&gt;
&lt;P&gt;Best regards,&lt;BR /&gt;Omar&lt;/P&gt;</description>
      <pubDate>Mon, 06 May 2024 18:03:17 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/FlexSPI-usage-for-read-write-non-boot-device/m-p/1859890#M30148</guid>
      <dc:creator>Omar_Anguiano</dc:creator>
      <dc:date>2024-05-06T18:03:17Z</dc:date>
    </item>
    <item>
      <title>Re: FlexSPI usage for read/write non boot device</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/FlexSPI-usage-for-read-write-non-boot-device/m-p/1860029#M30160</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/169053"&gt;@Omar_Anguiano&lt;/a&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thank you for your help.&lt;/P&gt;&lt;P&gt;Should I use IP command if I access to FlexSPI? What are issues on AHB?&lt;/P&gt;&lt;P&gt;Cache is enabled now.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Where should I refer to understand LUT? I'm not sure about the following highlighted arguments especially.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Eugene3_0-1715042080015.png" style="width: 400px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/277327i227F9BB8078858A0/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Eugene3_0-1715042080015.png" alt="Eugene3_0-1715042080015.png" /&gt;&lt;span class="lia-inline-image-caption" onclick="event.preventDefault();"&gt;Eugene3_0-1715042080015.png&lt;/span&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 07 May 2024 00:35:17 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/FlexSPI-usage-for-read-write-non-boot-device/m-p/1860029#M30160</guid>
      <dc:creator>Eugene3</dc:creator>
      <dc:date>2024-05-07T00:35:17Z</dc:date>
    </item>
    <item>
      <title>Re: FlexSPI usage for read/write non boot device</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/FlexSPI-usage-for-read-write-non-boot-device/m-p/1860783#M30179</link>
      <description>&lt;P&gt;Yes, it is suggested to use IP to write the flexspi. There are issues with writing through AHB on most flashes.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;For the LUT please refer to the chapter on the RM. An example of how to modify the LUT based on different flash is on this application note:&amp;nbsp;&lt;A href="https://www.nxp.com/docs/en/nxp/application-notes/AN12183.pdf" target="_blank"&gt;How to Enable Debugging for FLEXSPI NOR Flash (nxp.com)&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;Best regards,&lt;BR /&gt;Omar&lt;/P&gt;</description>
      <pubDate>Tue, 07 May 2024 19:00:11 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/FlexSPI-usage-for-read-write-non-boot-device/m-p/1860783#M30179</guid>
      <dc:creator>Omar_Anguiano</dc:creator>
      <dc:date>2024-05-07T19:00:11Z</dc:date>
    </item>
    <item>
      <title>Re: FlexSPI usage for read/write non boot device</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/FlexSPI-usage-for-read-write-non-boot-device/m-p/1863212#M30263</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/169053"&gt;@Omar_Anguiano&lt;/a&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thank you for your information.&lt;/P&gt;&lt;P&gt;Do you have any documents or sample code for using IP command?&lt;/P&gt;&lt;P&gt;I couldn't figure out how to switch from AHB to IP and how to map memory address for IP access.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 10 May 2024 07:52:32 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/FlexSPI-usage-for-read-write-non-boot-device/m-p/1863212#M30263</guid>
      <dc:creator>Eugene3</dc:creator>
      <dc:date>2024-05-10T07:52:32Z</dc:date>
    </item>
    <item>
      <title>Re: FlexSPI usage for read/write non boot device</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/FlexSPI-usage-for-read-write-non-boot-device/m-p/1863713#M30271</link>
      <description>&lt;P&gt;You can check the SDK examples, the flexspi examples specifically uses IP commands to read/write the flash. AHB is accessed when you read specifically the FlexSPI mapped address.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Best regards,&lt;BR /&gt;Omar&lt;/P&gt;</description>
      <pubDate>Fri, 10 May 2024 23:19:36 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/FlexSPI-usage-for-read-write-non-boot-device/m-p/1863713#M30271</guid>
      <dc:creator>Omar_Anguiano</dc:creator>
      <dc:date>2024-05-10T23:19:36Z</dc:date>
    </item>
  </channel>
</rss>

