<?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>S32KのトピックRe: Triggering DMA via Peripheral hardware request (eMios OPWMT)</title>
    <link>https://community.nxp.com/t5/S32K/Triggering-DMA-via-Peripheral-hardware-request-eMios-OPWMT/m-p/1432789#M14579</link>
    <description>&lt;P&gt;Here is the follow-up as promised.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Enabling the DMA request&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;It seems like setting the Emios Flag Event Response in the ConfigTool for Emios_Pwm is not enough to enable the flag event response.&amp;nbsp;The eMIOS channel as configured in the ConfigTool is configured with Emios_Pwm_Ip_InitChannel. The relevant function calls are given below:&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Emios_Pwm_Ip_InitChannel&lt;/STRONG&gt; -&amp;gt;&amp;nbsp;Emios_Pwm_Ip_InitOutputIrqAndMode -&amp;gt;&amp;nbsp;Emios_Pwm_Ip_SetDMARequest. This call sets the&amp;nbsp;DMA bit of the UC Control n register, but does not set the FEN bit of the same register. Without the FEN bit, no interrupt requests or DMA requests are generated.&lt;/P&gt;&lt;P&gt;It seems like a bug to me that after the configuration of the ConfigTool setup where I requested the Flag Event response to be&amp;nbsp;EMIOS_PWM_IP_DMA_REQUEST that the DMA requests are not generated.&lt;/P&gt;&lt;P&gt;I found that the function I expected to be called in the initialization is&amp;nbsp;Emios_Pwm_Ip_SetFlagRequest, which does set the FEN bit depending on the configuration in the ConfigTool. I would classify this missing function call in Emios_Pwm_Ip_InitChannel as a bug, since it does not follow the configuration as the user specified.&lt;/P&gt;&lt;P&gt;So, how do I report this bug to NXP directly?&lt;/P&gt;</description>
    <pubDate>Wed, 23 Mar 2022 18:04:17 GMT</pubDate>
    <dc:creator>abemat</dc:creator>
    <dc:date>2022-03-23T18:04:17Z</dc:date>
    <item>
      <title>Triggering DMA via Peripheral hardware request (eMios OPWMT)</title>
      <link>https://community.nxp.com/t5/S32K/Triggering-DMA-via-Peripheral-hardware-request-eMios-OPWMT/m-p/1427999#M14424</link>
      <description>&lt;P&gt;How can I configure the PWM flag event response to trigger a specified DMA channel? Up to now, I have configured two parts of the configuration, first DMA and after PWM.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;DMA&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;DMA configured to write from location A to B, working when triggered with a Software Request.&lt;/P&gt;&lt;P&gt;Now, I have configured the request to:&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="config_dma.PNG" style="width: 980px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/173612iA3CA1AC951E603C3/image-size/large?v=v2&amp;amp;px=999" role="button" title="config_dma.PNG" alt="config_dma.PNG" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;The eMios choices for the DMAMUX Source are: EMIOS0_0,&amp;nbsp;EMIOS0_1,&amp;nbsp;EMIOS0_9,&amp;nbsp;EMIOS0_10. That matches with the DMAMUX options:&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmamux0_overview.PNG" style="width: 400px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/173613i8333396ADC68C52F/image-size/medium?v=v2&amp;amp;px=400" role="button" title="dmamux0_overview.PNG" alt="dmamux0_overview.PNG" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;eMIOS&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;PWM is configured in OPWMT, where the trigger channel is after the trailing edge of the PWM. Additionally the Flag Event response is EMIOS_PWM_IP_DMA_REQUEST. (note that in the screenshot I am using eMios1 - this should be the same as the eMios instance configured in the DMA settings)&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="abemat_0-1647293790239.png" style="width: 400px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/173614iDB4A10ACD36971BB/image-size/medium?v=v2&amp;amp;px=400" role="button" title="abemat_0-1647293790239.png" alt="abemat_0-1647293790239.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;Now the part where I get confused: how can I attach the DMA request of eMios0 channel 2 to any of the four given options of DMAMUX listed above?&lt;/P&gt;&lt;P&gt;Attached is the project.&lt;/P&gt;</description>
      <pubDate>Mon, 14 Mar 2022 22:26:40 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/Triggering-DMA-via-Peripheral-hardware-request-eMios-OPWMT/m-p/1427999#M14424</guid>
      <dc:creator>abemat</dc:creator>
      <dc:date>2022-03-14T22:26:40Z</dc:date>
    </item>
    <item>
      <title>Re: Triggering DMA via Peripheral hardware request (eMios OPWMT)</title>
      <link>https://community.nxp.com/t5/S32K/Triggering-DMA-via-Peripheral-hardware-request-eMios-OPWMT/m-p/1428464#M14442</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;
&lt;P&gt;the configuration you have should be correct. Within eMIOS setting you need to enable DMA request by setting Flag Event response and within DMA channel config then select eMIOS request for given DMAMUX.&lt;BR /&gt;However not all eMIOS channel's flag acts as DMA request source. There are only 8 sources for eMIOS instance, and those are from below channels&amp;nbsp;&lt;BR /&gt;&lt;SPAN&gt;EMIOSn_0,&amp;nbsp;EMIOSn_1,&amp;nbsp;EMIOSn_9,&amp;nbsp;EMIOSn_10, EMIOSn_16,&amp;nbsp;EMIOSn_17,&amp;nbsp;EMIOSn_18,&amp;nbsp;EMIOSn_19&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;BR, Petr&lt;/P&gt;</description>
      <pubDate>Tue, 15 Mar 2022 11:29:23 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/Triggering-DMA-via-Peripheral-hardware-request-eMios-OPWMT/m-p/1428464#M14442</guid>
      <dc:creator>PetrS</dc:creator>
      <dc:date>2022-03-15T11:29:23Z</dc:date>
    </item>
    <item>
      <title>Re: Triggering DMA via Peripheral hardware request (eMios OPWMT)</title>
      <link>https://community.nxp.com/t5/S32K/Triggering-DMA-via-Peripheral-hardware-request-eMios-OPWMT/m-p/1430808#M14514</link>
      <description>&lt;P&gt;Hi Petr,&lt;/P&gt;&lt;P&gt;Thanks for your reply. Sadly, I can not get it to work. I've roughly used the same configuration, I am now using Emios1 channel 1, and I removed the DMAMUX trigger flag, as that is used for periodic trigger generation. However, the eMIOS OPWMT trigger still does not trigger any DMA requests.&lt;/P&gt;&lt;P&gt;To debug, I have taken a look what the generated code creates for the DMAMUX CHCFG3 register. For the used DMA channel (Ch3) the register is set to&amp;nbsp;0x91, which translates to ENBL: DMA channel is enabled (1U&amp;lt;&amp;lt;7U) +&amp;nbsp;SOURCE: DMA Channel Source (17U&amp;lt;&amp;lt;0U). 17U is the DMAMUX source as read from the DMAMUX_map. This is as expected.&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="abemat_0-1647625549792.png" style="width: 400px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/174180iB43816D9773CE36D/image-size/medium?v=v2&amp;amp;px=400" role="button" title="abemat_0-1647625549792.png" alt="abemat_0-1647625549792.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;Would you care to help me troubleshoot my issues? I have attached my setup and screenshots of the configuration for easier debugging.&lt;/P&gt;&lt;P&gt;P.S. I also have an issue with repeated Scatter/Gather DMA requests. The first DMA_IP_CH_SET_SOFTWARE_REQUEST works splendidly, but subsequent SW requests do not set new values for both Scatter/Gather elements without running&amp;nbsp;Dma_Ip_SetLogicChannelScatterGatherConfig(...). Without it, only the last SG element is renewed. Would you happen to have an idea what is causing this?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 18 Mar 2022 17:55:02 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/Triggering-DMA-via-Peripheral-hardware-request-eMios-OPWMT/m-p/1430808#M14514</guid>
      <dc:creator>abemat</dc:creator>
      <dc:date>2022-03-18T17:55:02Z</dc:date>
    </item>
    <item>
      <title>Re: Triggering DMA via Peripheral hardware request (eMios OPWMT)</title>
      <link>https://community.nxp.com/t5/S32K/Triggering-DMA-via-Peripheral-hardware-request-eMios-OPWMT/m-p/1432187#M14546</link>
      <description>&lt;P&gt;Hi Petr,&lt;/P&gt;&lt;P&gt;This is a follow-up from my side. Sadly, I still do not have the trigger working. To see if the flag is correctly generated I have also tried to obtain an interrupt directly from the eMIOS channel as well, but that also does not work for me.&lt;/P&gt;&lt;P&gt;First, I have confirmed that the eMIOS in OPWMT mode generates a flag:&amp;nbsp;IP_EMIOS_1-&amp;gt;CH.UC[1].S = 0x80000001. The leftmost bit is the&amp;nbsp;OVR Overrun bit and the rightmost bit is the&amp;nbsp;FLAG bit, which signifies that there have been flag generations.&amp;nbsp;&lt;/P&gt;&lt;P&gt;Then I have tried installing the interrupt handler for eMIOS1_1 with:&amp;nbsp;&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;P&gt;IntCtrl_Ip_InstallHandler(EMIOS1_5_IRQn, EMIOS1_5_IRQ, NULL_PTR);&lt;BR /&gt;IntCtrl_Ip_EnableIrq(EMIOS1_5_IRQn);&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;and configured an interrupt handler similar to the example in&amp;nbsp;Dma_Ip_DmaTransfer_S32K344: the callback function is provided in the ConfigTool. I am using eMIOS1_5 since that interrupt handler groups eMIOS1_0-3 (see S32K3xx_interrupt_map.xlsx)&lt;/P&gt;&lt;P&gt;Let me know if there are any configuration issues.&lt;/P&gt;</description>
      <pubDate>Tue, 22 Mar 2022 21:34:38 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/Triggering-DMA-via-Peripheral-hardware-request-eMios-OPWMT/m-p/1432187#M14546</guid>
      <dc:creator>abemat</dc:creator>
      <dc:date>2022-03-22T21:34:38Z</dc:date>
    </item>
    <item>
      <title>Re: Triggering DMA via Peripheral hardware request (eMios OPWMT)</title>
      <link>https://community.nxp.com/t5/S32K/Triggering-DMA-via-Peripheral-hardware-request-eMios-OPWMT/m-p/1432490#M14559</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;
&lt;P&gt;when testing your code I got hardfault for DMA init. Seems clocks are not enabled, or similar, so not sure for a real behavior.&lt;BR /&gt;Setting looks fine, but to get DMA channel interrupt you need to also enable it within TDC setting, seem it is not set there.&lt;/P&gt;
&lt;P&gt;BR, Petr&lt;/P&gt;</description>
      <pubDate>Wed, 23 Mar 2022 08:55:35 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/Triggering-DMA-via-Peripheral-hardware-request-eMios-OPWMT/m-p/1432490#M14559</guid>
      <dc:creator>PetrS</dc:creator>
      <dc:date>2022-03-23T08:55:35Z</dc:date>
    </item>
    <item>
      <title>Re: Triggering DMA via Peripheral hardware request (eMios OPWMT)</title>
      <link>https://community.nxp.com/t5/S32K/Triggering-DMA-via-Peripheral-hardware-request-eMios-OPWMT/m-p/1432682#M14574</link>
      <description>&lt;P&gt;Hi Petr,&lt;/P&gt;&lt;P&gt;Thanks for the follow-up. Weird that you get a hardfault for DMA init - I will look into this, as I do not experience the same. What do you mean with the TDC setting? In the Reference Manual TDC is only mentioned in the FlexCan chapter.&lt;/P&gt;&lt;P&gt;Should the TDC setting have effect on the eMIOS FEN flag? Setting this manually looks like it could be our missing piece - I will come back to see if it works completely.&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Abel&lt;/P&gt;</description>
      <pubDate>Wed, 23 Mar 2022 15:07:30 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/Triggering-DMA-via-Peripheral-hardware-request-eMios-OPWMT/m-p/1432682#M14574</guid>
      <dc:creator>abemat</dc:creator>
      <dc:date>2022-03-23T15:07:30Z</dc:date>
    </item>
    <item>
      <title>Re: Triggering DMA via Peripheral hardware request (eMios OPWMT)</title>
      <link>https://community.nxp.com/t5/S32K/Triggering-DMA-via-Peripheral-hardware-request-eMios-OPWMT/m-p/1432789#M14579</link>
      <description>&lt;P&gt;Here is the follow-up as promised.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Enabling the DMA request&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;It seems like setting the Emios Flag Event Response in the ConfigTool for Emios_Pwm is not enough to enable the flag event response.&amp;nbsp;The eMIOS channel as configured in the ConfigTool is configured with Emios_Pwm_Ip_InitChannel. The relevant function calls are given below:&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Emios_Pwm_Ip_InitChannel&lt;/STRONG&gt; -&amp;gt;&amp;nbsp;Emios_Pwm_Ip_InitOutputIrqAndMode -&amp;gt;&amp;nbsp;Emios_Pwm_Ip_SetDMARequest. This call sets the&amp;nbsp;DMA bit of the UC Control n register, but does not set the FEN bit of the same register. Without the FEN bit, no interrupt requests or DMA requests are generated.&lt;/P&gt;&lt;P&gt;It seems like a bug to me that after the configuration of the ConfigTool setup where I requested the Flag Event response to be&amp;nbsp;EMIOS_PWM_IP_DMA_REQUEST that the DMA requests are not generated.&lt;/P&gt;&lt;P&gt;I found that the function I expected to be called in the initialization is&amp;nbsp;Emios_Pwm_Ip_SetFlagRequest, which does set the FEN bit depending on the configuration in the ConfigTool. I would classify this missing function call in Emios_Pwm_Ip_InitChannel as a bug, since it does not follow the configuration as the user specified.&lt;/P&gt;&lt;P&gt;So, how do I report this bug to NXP directly?&lt;/P&gt;</description>
      <pubDate>Wed, 23 Mar 2022 18:04:17 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/Triggering-DMA-via-Peripheral-hardware-request-eMios-OPWMT/m-p/1432789#M14579</guid>
      <dc:creator>abemat</dc:creator>
      <dc:date>2022-03-23T18:04:17Z</dc:date>
    </item>
    <item>
      <title>Re: Triggering DMA via Peripheral hardware request (eMios OPWMT)</title>
      <link>https://community.nxp.com/t5/S32K/Triggering-DMA-via-Peripheral-hardware-request-eMios-OPWMT/m-p/1433262#M14597</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;
&lt;P&gt;sorry to misleading you, it was a typo, I meant TCD, DMA Transfer control descriptor.&lt;/P&gt;
&lt;P&gt;You are right that both FEN and DMA bits of eMIOS channel control register need to be set to generate DMA request. So if you will have below calling it will work properly?&lt;BR /&gt;Emios_Pwm_Ip_InitChannel(EMIOS_PWM_IP_BOARD_InitPeripherals_I1_CH1_CFG, &amp;amp;Emios_Pwm_Ip_BOARD_InitPeripherals_I1_Ch1);&lt;BR /&gt;Emios_Pwm_Ip_SetFlagRequest(EMIOS_PWM_IP_BOARD_InitPeripherals_I1_CH1_CFG, Emios_Pwm_Ip_BOARD_InitPeripherals_I1_Ch1.ChannelId, Emios_Pwm_Ip_BOARD_InitPeripherals_I1_Ch1.IrqMode );&lt;/P&gt;
&lt;P&gt;Not sure how driver was drafted, but seems to be reasonable to have all set properly in Init function.&lt;/P&gt;
&lt;P&gt;If you want to report this, just create new Case so can be assigned to relevant team&amp;nbsp;&lt;BR /&gt;&lt;A href="https://community.nxp.com/t5/HomeTest-Knowledge-Base/How-to-submit-a-new-question-for-NXP-Support/ta-p/1117058" target="_blank"&gt;https://community.nxp.com/t5/HomeTest-Knowledge-Base/How-to-submit-a-new-question-for-NXP-Support/ta-p/1117058&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;BR, Petr&lt;BR /&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 24 Mar 2022 07:44:09 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/Triggering-DMA-via-Peripheral-hardware-request-eMios-OPWMT/m-p/1433262#M14597</guid>
      <dc:creator>PetrS</dc:creator>
      <dc:date>2022-03-24T07:44:09Z</dc:date>
    </item>
  </channel>
</rss>

