<?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: Hyperflash non blocking transfer causing instruction access violation in i.MX RT Crossover MCUs</title>
    <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Hyperflash-non-blocking-transfer-causing-instruction-access/m-p/1971868#M32150</link>
    <description>Hi,&lt;BR /&gt;I am working on km34 for the flash read/write operation while continuous interrupts of ADC and timer (1 ms) but it shows it goes into hardflaut error, so i move my vector table to ram but still not able to flash operation and code continuous reset.&lt;BR /&gt;&lt;BR /&gt;</description>
    <pubDate>Fri, 11 Oct 2024 05:47:48 GMT</pubDate>
    <dc:creator>RajPadmani</dc:creator>
    <dc:date>2024-10-11T05:47:48Z</dc:date>
    <item>
      <title>Hyperflash non blocking transfer causing instruction access violation</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Hyperflash-non-blocking-transfer-causing-instruction-access/m-p/1440061#M19045</link>
      <description>&lt;P&gt;I am testing the imxrt1050evbk with the flexspi hyper flash polling transfer example.&lt;/P&gt;&lt;P&gt;I have modified the function flexspi_nor_flash_erase_sector() to use FLEXSPI_TransferNonBlocking() instead of FLEXSPI_TransferBlocking() as shown below.&lt;/P&gt;&lt;P&gt;When I do this I get an instruction access violation when execution returns from the FLEXSPI_TransferNonBlocking() call.&amp;nbsp; However if I put a debug breakpoint after this call and manually continue each loop I do not get the fault.&lt;/P&gt;&lt;P&gt;Any hints on what might be causing this or suggestions on how I might further debug my example would be appreciated.&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;volatile bool ___done;&lt;/P&gt;&lt;P&gt;void&lt;BR /&gt;flexspi_transfer_callback_1 (FLEXSPI_Type *base,flexspi_handle_t *handle,status_t status,void *userData) {&lt;BR /&gt;___done = true;&lt;BR /&gt;}&lt;/P&gt;&lt;P&gt;flexspi_handle_t es_handle;&lt;/P&gt;&lt;P&gt;status_t flexspi_nor_flash_erase_sector_nb (FLEXSPI_Type *base, uint32_t address)&lt;BR /&gt;{&lt;BR /&gt;status_t status;&lt;BR /&gt;flexspi_transfer_t flashXfer;&lt;/P&gt;&lt;P&gt;/* Write enable */&lt;BR /&gt;status = flexspi_nor_write_enable(base, address);&lt;/P&gt;&lt;P&gt;if (status != kStatus_Success)&lt;BR /&gt;{&lt;BR /&gt;return status;&lt;BR /&gt;}&lt;/P&gt;&lt;P&gt;flashXfer.deviceAddress = address;&lt;BR /&gt;flashXfer.port = kFLEXSPI_PortA1;&lt;BR /&gt;flashXfer.cmdType = kFLEXSPI_Command;&lt;BR /&gt;flashXfer.SeqNumber = 4;&lt;BR /&gt;flashXfer.seqIndex = HYPERFLASH_CMD_LUT_SEQ_IDX_ERASESECTOR;&lt;/P&gt;&lt;P&gt;FLEXSPI_TransferCreateHandle(base,&amp;amp;es_handle,flexspi_transfer_callback_1,NULL);&lt;/P&gt;&lt;P&gt;___done = false;&lt;BR /&gt;FLEXSPI_TransferNonBlocking (base,&amp;amp;es_handle,&amp;amp;flashXfer);&lt;/P&gt;&lt;P&gt;size_t count;&lt;/P&gt;&lt;P&gt;while ( FLEXSPI_TransferGetCount (base,&amp;amp;es_handle,&amp;amp;count) != kStatus_NoTransferInProgress);&lt;/P&gt;&lt;P&gt;/* Do software reset. */&lt;BR /&gt;FLEXSPI_SoftwareReset(EXAMPLE_FLEXSPI);&lt;/P&gt;&lt;P&gt;return status;&lt;BR /&gt;}&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 07 Apr 2022 01:12:54 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Hyperflash-non-blocking-transfer-causing-instruction-access/m-p/1440061#M19045</guid>
      <dc:creator>Abstractsig</dc:creator>
      <dc:date>2022-04-07T01:12:54Z</dc:date>
    </item>
    <item>
      <title>Re: Hyperflash non blocking transfer causing instruction access violation</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Hyperflash-non-blocking-transfer-causing-instruction-access/m-p/1440169#M19053</link>
      <description>&lt;P&gt;In answer to my own question.&lt;/P&gt;&lt;P&gt;It seems the fault occurs because the example puts the interrupt vector table in flash.&lt;/P&gt;&lt;P&gt;Moving the vector table to ram stops the access violation fault.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 07 Apr 2022 03:28:11 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Hyperflash-non-blocking-transfer-causing-instruction-access/m-p/1440169#M19053</guid>
      <dc:creator>Abstractsig</dc:creator>
      <dc:date>2022-04-07T03:28:11Z</dc:date>
    </item>
    <item>
      <title>Re: Hyperflash non blocking transfer causing instruction access violation</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Hyperflash-non-blocking-transfer-causing-instruction-access/m-p/1971868#M32150</link>
      <description>Hi,&lt;BR /&gt;I am working on km34 for the flash read/write operation while continuous interrupts of ADC and timer (1 ms) but it shows it goes into hardflaut error, so i move my vector table to ram but still not able to flash operation and code continuous reset.&lt;BR /&gt;&lt;BR /&gt;</description>
      <pubDate>Fri, 11 Oct 2024 05:47:48 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Hyperflash-non-blocking-transfer-causing-instruction-access/m-p/1971868#M32150</guid>
      <dc:creator>RajPadmani</dc:creator>
      <dc:date>2024-10-11T05:47:48Z</dc:date>
    </item>
  </channel>
</rss>

