<?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: Redundant GPIO init in MCUXpresso Config Tools</title>
    <link>https://community.nxp.com/t5/MCUXpresso-Config-Tools/Redundant-GPIO-init/m-p/2150757#M1978</link>
    <description>&lt;BLOCKQUOTE&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;P&gt;It occurred to me that perhaps I should only define the GPIOs with the Connfig Pins tab and not the Peripherals tab, but if I take them out of Peripherals then BOTH of the generated GPIO pin initializations are removed.&lt;/P&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;SPAN&gt;I agree, you should only define the GPIOs with the "Pins" tool. That's the way I do it and the tool correctly creates initialization code.&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Maybe "calling initialization" is not enabled. This is what is my "Pins" tool looks like:&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="danielholala_0-1754988489951.png" style="width: 400px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/351966i9E7C5B8CCD326CD5/image-size/medium?v=v2&amp;amp;px=400" role="button" title="danielholala_0-1754988489951.png" alt="danielholala_0-1754988489951.png" /&gt;&lt;/span&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="danielholala_1-1754988502041.png" style="width: 400px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/351967i054D76E90CB77116/image-size/medium?v=v2&amp;amp;px=400" role="button" title="danielholala_1-1754988502041.png" alt="danielholala_1-1754988502041.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;Cheers.&lt;BR /&gt;Daniel&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Tue, 12 Aug 2025 08:49:03 GMT</pubDate>
    <dc:creator>danielholala</dc:creator>
    <dc:date>2025-08-12T08:49:03Z</dc:date>
    <item>
      <title>Redundant GPIO init</title>
      <link>https://community.nxp.com/t5/MCUXpresso-Config-Tools/Redundant-GPIO-init/m-p/2148735#M1974</link>
      <description>&lt;P&gt;I'm using MCXpressos Config 14.0 for RT1064 MCU.&amp;nbsp;&lt;/P&gt;&lt;P&gt;The generated code has&lt;/P&gt;&lt;P&gt;BOARD_InitBootPins() -&amp;gt;BOARD_InitPins() which calls&lt;BR /&gt;&amp;nbsp; &amp;nbsp;GPIO_PinInit (config struct) for each configured GPIO, setting chip registers&lt;/P&gt;&lt;P&gt;It also creates&lt;/P&gt;&lt;P&gt;BOARD_InitBootPeripherals() -&amp;gt;BOARD_InitPeripherals() which calls&amp;nbsp; GPIOx_init() for each GPIO group which calls HAL_GpioInit(config) for each configured GPIO, creating a config struct from defines&lt;/P&gt;&lt;P&gt;HAL_GpioInit() converts the struct and calls&amp;nbsp;GPIO_PinInit().&lt;/P&gt;&lt;P&gt;Is there a reason to do all that twice?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 07 Aug 2025 23:25:01 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-Config-Tools/Redundant-GPIO-init/m-p/2148735#M1974</guid>
      <dc:creator>JackNXP</dc:creator>
      <dc:date>2025-08-07T23:25:01Z</dc:date>
    </item>
    <item>
      <title>Re: Redundant GPIO init</title>
      <link>https://community.nxp.com/t5/MCUXpresso-Config-Tools/Redundant-GPIO-init/m-p/2149677#M1975</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/253597"&gt;@JackNXP&lt;/a&gt;&amp;nbsp;,&lt;/P&gt;
&lt;P&gt;Thank you for your interest in NXP Semiconductor products and for the opportunity to serve you.&lt;/P&gt;
&lt;P&gt;Could you please tell me of the versions of the MCUXPresso IDE and SDK lib.&lt;/P&gt;
&lt;P&gt;Which SDK example or operation are you referring to?&amp;nbsp;&lt;/P&gt;
&lt;P&gt;InitBootPins() is the default pin_mux initialization entry point generated by the config tool, while InitPins() represents the specific operations generated by the config tool based on the configuration.&amp;nbsp;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I did a test for your question.&lt;/P&gt;
&lt;P&gt;IDE:&amp;nbsp; MCUXPresso IDE 25.06&lt;/P&gt;
&lt;P&gt;SDK: SDK_2.x_EVK-MIMXRT1064 25.06&lt;/P&gt;
&lt;P&gt;When I add an LPI2C1 peripheral by using the&amp;nbsp;Peripherals Tool, the I2C pin initialization is performed by&amp;nbsp;BOARD_InitPins()&amp;nbsp;instead of&amp;nbsp;BOARD_InitBootPeripherals().&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="mayliu1_0-1754883822931.png" style="width: 400px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/351698i668F748083697F54/image-size/medium?v=v2&amp;amp;px=400" role="button" title="mayliu1_0-1754883822931.png" alt="mayliu1_0-1754883822931.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="mayliu1_1-1754883841545.png" style="width: 400px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/351701i2953B82E3E2069A3/image-size/medium?v=v2&amp;amp;px=400" role="button" title="mayliu1_1-1754883841545.png" alt="mayliu1_1-1754883841545.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;Wish it helps you.&lt;BR /&gt;If you still have question about it, please kindly let me know.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Best Regards&lt;BR /&gt;MayLiu&lt;/P&gt;</description>
      <pubDate>Mon, 11 Aug 2025 03:50:52 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-Config-Tools/Redundant-GPIO-init/m-p/2149677#M1975</guid>
      <dc:creator>mayliu1</dc:creator>
      <dc:date>2025-08-11T03:50:52Z</dc:date>
    </item>
    <item>
      <title>Re: Redundant GPIO init</title>
      <link>https://community.nxp.com/t5/MCUXpresso-Config-Tools/Redundant-GPIO-init/m-p/2149696#M1976</link>
      <description>&lt;P&gt;Thanks for the response. I'm using Config tools 14.0, as stated in the query, and SDK&amp;nbsp;2.13.0.&lt;/P&gt;&lt;P&gt;My question is specifically about GPIO pins, not other peripherals.&lt;/P&gt;&lt;P&gt;It occurred to me that perhaps I should only define the GPIOs with the Connfig Pins tab and not the Peripherals tab, but if I take them out of Peripherals then BOTH of the generated GPIO pin initializations are removed.&lt;/P&gt;</description>
      <pubDate>Mon, 11 Aug 2025 04:25:03 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-Config-Tools/Redundant-GPIO-init/m-p/2149696#M1976</guid>
      <dc:creator>JackNXP</dc:creator>
      <dc:date>2025-08-11T04:25:03Z</dc:date>
    </item>
    <item>
      <title>Re: Redundant GPIO init</title>
      <link>https://community.nxp.com/t5/MCUXpresso-Config-Tools/Redundant-GPIO-init/m-p/2150479#M1977</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/253597"&gt;@JackNXP&lt;/a&gt;&amp;nbsp;,&lt;/P&gt;
&lt;P&gt;Thanks for your updated information.&lt;/P&gt;
&lt;P&gt;If you have any question about Pins Tool, I think you can refer to the&amp;nbsp;&lt;A href="http://127.0.0.1:59307/help/topic/com.nxp.swtools.doc.mcux.ide/topics/introduction.html" target="_blank" rel="noopener" shape="rect"&gt;MCUXpresso Config Tools User's Guide (IDE)&lt;/A&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;There are more detail description.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;Wish it helps you.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;Best Regards&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;MayLiu&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 12 Aug 2025 03:22:11 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-Config-Tools/Redundant-GPIO-init/m-p/2150479#M1977</guid>
      <dc:creator>mayliu1</dc:creator>
      <dc:date>2025-08-12T03:22:11Z</dc:date>
    </item>
    <item>
      <title>Re: Redundant GPIO init</title>
      <link>https://community.nxp.com/t5/MCUXpresso-Config-Tools/Redundant-GPIO-init/m-p/2150757#M1978</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;P&gt;It occurred to me that perhaps I should only define the GPIOs with the Connfig Pins tab and not the Peripherals tab, but if I take them out of Peripherals then BOTH of the generated GPIO pin initializations are removed.&lt;/P&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;SPAN&gt;I agree, you should only define the GPIOs with the "Pins" tool. That's the way I do it and the tool correctly creates initialization code.&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Maybe "calling initialization" is not enabled. This is what is my "Pins" tool looks like:&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="danielholala_0-1754988489951.png" style="width: 400px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/351966i9E7C5B8CCD326CD5/image-size/medium?v=v2&amp;amp;px=400" role="button" title="danielholala_0-1754988489951.png" alt="danielholala_0-1754988489951.png" /&gt;&lt;/span&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="danielholala_1-1754988502041.png" style="width: 400px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/351967i054D76E90CB77116/image-size/medium?v=v2&amp;amp;px=400" role="button" title="danielholala_1-1754988502041.png" alt="danielholala_1-1754988502041.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;Cheers.&lt;BR /&gt;Daniel&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 12 Aug 2025 08:49:03 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-Config-Tools/Redundant-GPIO-init/m-p/2150757#M1978</guid>
      <dc:creator>danielholala</dc:creator>
      <dc:date>2025-08-12T08:49:03Z</dc:date>
    </item>
    <item>
      <title>Re: Redundant GPIO init</title>
      <link>https://community.nxp.com/t5/MCUXpresso-Config-Tools/Redundant-GPIO-init/m-p/2151118#M1980</link>
      <description>&lt;P&gt;You're right, that does work. Not sure what I did wrong before. The config Peripherals tool does show a warning that GPIOs are not initialized, but the BOARD_InitPins() code does get built to do the job.&lt;/P&gt;&lt;P&gt;Saves about 2KB flash in my app.&lt;/P&gt;&lt;P&gt;Thanks.&lt;/P&gt;</description>
      <pubDate>Tue, 12 Aug 2025 20:13:32 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-Config-Tools/Redundant-GPIO-init/m-p/2151118#M1980</guid>
      <dc:creator>JackNXP</dc:creator>
      <dc:date>2025-08-12T20:13:32Z</dc:date>
    </item>
  </channel>
</rss>

