<?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 ProcessorsのトピックQuestion regarding input_reg offset in imx8mn-pinfunc.h</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/Question-regarding-input-reg-offset-in-imx8mn-pinfunc-h/m-p/1639772#M204797</link>
    <description>&lt;P&gt;Hi&lt;/P&gt;&lt;P&gt;I have trouble understanding the imx8mn-pinfunc.h (I think the question is not specific to the imx8mn).&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The header starts off with this documentation:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;/*
 * The pin function ID is a tuple of
 * &amp;lt;mux_reg conf_reg input_reg mux_mode input_val&amp;gt;
 */&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;As an example lets look at this line:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;#define MX8MN_IOMUXC_SAI3_MCLK_GPIO5_IO2           0x1E4 0x44C 0x000 0x5 0x0&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;My understanding is&lt;/P&gt;&lt;P&gt;offset mux_reg = 0x1E4&lt;/P&gt;&lt;P&gt;offset conf_reg = 0x44C&lt;/P&gt;&lt;P&gt;offset input_reg = 0x000&lt;/P&gt;&lt;P&gt;value written to mux_reg = 0x5&lt;/P&gt;&lt;P&gt;value written to input_reg = 0x0&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Here is my question, why is the offset for the input_reg given with 0x000 ?&lt;/P&gt;&lt;P&gt;I can see in the ref-manual that the corresponding register has the offset 0x5C0.&lt;/P&gt;&lt;P&gt;Why is it given with 0 in the header?&lt;/P&gt;&lt;P&gt;It came to my eye that a lot of other macros give 0x000 as offset for the input_reg. It seems like all macros where the input_val = 0x0 have the offset&amp;nbsp;0x000 for the input_reg.&lt;/P&gt;&lt;P&gt;Why is it like that ?&lt;/P&gt;&lt;P&gt;Is a OR operation used to apply the value to the register and in the case of value 0x0 that wouldn't make any difference so the offset for the register isn't important and wasn't given correctly ?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Can someone help me understand ?&lt;/P&gt;&lt;P&gt;Thanks in advance&lt;/P&gt;</description>
    <pubDate>Tue, 25 Apr 2023 13:22:12 GMT</pubDate>
    <dc:creator>heiko</dc:creator>
    <dc:date>2023-04-25T13:22:12Z</dc:date>
    <item>
      <title>Question regarding input_reg offset in imx8mn-pinfunc.h</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Question-regarding-input-reg-offset-in-imx8mn-pinfunc-h/m-p/1639772#M204797</link>
      <description>&lt;P&gt;Hi&lt;/P&gt;&lt;P&gt;I have trouble understanding the imx8mn-pinfunc.h (I think the question is not specific to the imx8mn).&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The header starts off with this documentation:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;/*
 * The pin function ID is a tuple of
 * &amp;lt;mux_reg conf_reg input_reg mux_mode input_val&amp;gt;
 */&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;As an example lets look at this line:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;#define MX8MN_IOMUXC_SAI3_MCLK_GPIO5_IO2           0x1E4 0x44C 0x000 0x5 0x0&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;My understanding is&lt;/P&gt;&lt;P&gt;offset mux_reg = 0x1E4&lt;/P&gt;&lt;P&gt;offset conf_reg = 0x44C&lt;/P&gt;&lt;P&gt;offset input_reg = 0x000&lt;/P&gt;&lt;P&gt;value written to mux_reg = 0x5&lt;/P&gt;&lt;P&gt;value written to input_reg = 0x0&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Here is my question, why is the offset for the input_reg given with 0x000 ?&lt;/P&gt;&lt;P&gt;I can see in the ref-manual that the corresponding register has the offset 0x5C0.&lt;/P&gt;&lt;P&gt;Why is it given with 0 in the header?&lt;/P&gt;&lt;P&gt;It came to my eye that a lot of other macros give 0x000 as offset for the input_reg. It seems like all macros where the input_val = 0x0 have the offset&amp;nbsp;0x000 for the input_reg.&lt;/P&gt;&lt;P&gt;Why is it like that ?&lt;/P&gt;&lt;P&gt;Is a OR operation used to apply the value to the register and in the case of value 0x0 that wouldn't make any difference so the offset for the register isn't important and wasn't given correctly ?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Can someone help me understand ?&lt;/P&gt;&lt;P&gt;Thanks in advance&lt;/P&gt;</description>
      <pubDate>Tue, 25 Apr 2023 13:22:12 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Question-regarding-input-reg-offset-in-imx8mn-pinfunc-h/m-p/1639772#M204797</guid>
      <dc:creator>heiko</dc:creator>
      <dc:date>2023-04-25T13:22:12Z</dc:date>
    </item>
    <item>
      <title>Re: Question regarding input_reg offset in imx8mn-pinfunc.h</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Question-regarding-input-reg-offset-in-imx8mn-pinfunc-h/m-p/1641240#M204928</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/216345"&gt;@heiko&lt;/a&gt;,&lt;/P&gt;
&lt;P&gt;I hope you are doing well.&lt;/P&gt;
&lt;P&gt;Daisy chain input select is only available in some module pins.&lt;/P&gt;
&lt;P&gt;Please refer to&amp;nbsp;&lt;STRONG&gt;8.2.2.4 Daisy chain - multi pads driving same module input pin &lt;/STRONG&gt;in&amp;nbsp;i.MX 8M Nano Applications Processor Reference Manual for more information.&lt;/P&gt;
&lt;P&gt;In above case,&amp;nbsp;&lt;/P&gt;
&lt;PRE class="lia-code-sample  language-markup"&gt;&lt;CODE&gt;#define MX8MN_IOMUXC_SAI3_MCLK_GPIO5_IO2           0x1E4 0x44C 0x000 0x5 0x0&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;Here, SAI3_MCLK -&amp;gt; selected pad for GPIO5_IO2 signal pin.&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; GPIO5_IO2 -&amp;gt; GPIO5 module pin.&lt;/P&gt;
&lt;P&gt;Here, GPIO5_IO2 pin does not have daisy chain inpul select functionality.&lt;/P&gt;
&lt;P&gt;And register offset&amp;nbsp;&lt;SPAN&gt;0x5C0 is for&amp;nbsp;SAI3_MCLK module pin and not for GPIO5_IO2 pin.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;Daisy chain inpul select is only required for few module pins (offset 4BCh - 05F0 ).&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;offset 0x000 is for pins that do not have daisy chain input select functionally (e.g. GPIO5_IO2)&lt;/P&gt;
&lt;P&gt;I hope it helps!&lt;/P&gt;
&lt;P&gt;Thanks &amp;amp; Regards,&lt;BR /&gt;Dhruvit Vasavada&lt;/P&gt;</description>
      <pubDate>Thu, 27 Apr 2023 06:05:29 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Question-regarding-input-reg-offset-in-imx8mn-pinfunc-h/m-p/1641240#M204928</guid>
      <dc:creator>Dhruvit</dc:creator>
      <dc:date>2023-04-27T06:05:29Z</dc:date>
    </item>
  </channel>
</rss>

