<?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: MCXN ENET RMII Clock in MCX Microcontrollers</title>
    <link>https://community.nxp.com/t5/MCX-Microcontrollers/MCXN-ENET-RMII-Clock/m-p/1926274#M1454</link>
    <description>&lt;P&gt;Thank you&amp;nbsp;&lt;SPAN&gt;Xu Zhang,&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Now it works with PLL0 sourced by the on-board 24MHz crystal oscillator.&lt;/SPAN&gt;&lt;/P&gt;</description>
    <pubDate>Tue, 06 Aug 2024 10:21:53 GMT</pubDate>
    <dc:creator>Vagni</dc:creator>
    <dc:date>2024-08-06T10:21:53Z</dc:date>
    <item>
      <title>MCXN ENET RMII Clock</title>
      <link>https://community.nxp.com/t5/MCX-Microcontrollers/MCXN-ENET-RMII-Clock/m-p/1919343#M1395</link>
      <description>&lt;P&gt;I started evaluating MCXN547 ENET peripheral functionalities on MCX-N5XX-EVK board.&lt;/P&gt;&lt;P&gt;On that board the Ethernet PHY clock input can be&amp;nbsp; &lt;SPAN class=""&gt;either of the following:&lt;/SPAN&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;SPAN class=""&gt;OSC_50M clock from an external 50 MHz crystal oscillator (Y7) enabled by JP50 jumper open.&lt;BR /&gt;&lt;/SPAN&gt;&lt;/LI&gt;&lt;LI&gt;&lt;SPAN class=""&gt;ENET0_TXCLK clock received through the MCU P1_4 port&lt;BR /&gt;&lt;/SPAN&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;SPAN class=""&gt;I checked the&amp;nbsp;mcxn5xxevk_lwip_dhcp_bm SDK 2.16 example with JP50 open and the EVK board properly receives a IPv4 configuration from&amp;nbsp;my network DHCP.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;Then I replaced in the lwip_dhcp_bm.c source file the PHY input clock assertion:&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="c"&gt;    CLOCK_AttachClk(MUX_A(CM_ENETRMIICLKSEL, 0));&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;with my new assertion:&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;    /* Use internal reference clock. */
    /* attach PLL0_CLK_clock to ENETRMII */
    CLOCK_AttachClk(kPLL0_to_ENETRMII);
    /*!&amp;lt; Set up ENETRMIICLKDIV divider */
    CLOCK_SetClkDiv(kCLOCK_DivEnetrmiiClk, 3U);&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;and I build and check the same&amp;nbsp;mcxn5xxevk_lwip_dhcp_bm demo application with JP50 closed (using ENET0_TXCLK clock).&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;But now the PHY state is "down" and Auto-negotiation fails till finally PHY state becomes "up", but then returns again "down" and DHCP configuration is never received.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;PLL0_CLK should be set to 150MHz by&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;BOARD_InitBootClocks() function, right?.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;How to properly drive the Ethernet PHY with the ENET0_TXCLK clock from MCU ?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 29 Jul 2024 10:22:35 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCX-Microcontrollers/MCXN-ENET-RMII-Clock/m-p/1919343#M1395</guid>
      <dc:creator>Vagni</dc:creator>
      <dc:date>2024-07-29T10:22:35Z</dc:date>
    </item>
    <item>
      <title>Re: MCXN ENET RMII Clock</title>
      <link>https://community.nxp.com/t5/MCX-Microcontrollers/MCXN-ENET-RMII-Clock/m-p/1920416#M1402</link>
      <description>&lt;P&gt;hi，&lt;A id="link_6" class="lia-link-navigation lia-page-link lia-user-name-link" href="https://community.nxp.com/t5/user/viewprofilepage/user-id/3989" target="_self" aria-label="View Profile of Vagni"&gt;&lt;SPAN class=""&gt;Vagni&lt;/SPAN&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;Thank you for your interest in NXP Semiconductor products and the opportunity to serve you, I will gladly help you with this.&lt;/P&gt;
&lt;P&gt;View schematic SCH-55277.pdf as shown below. If you want to use ENET0_TXCLK, try Connect JP13 2-3 pin. Populate R274 to sync reference clock, close JP50.&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="XuZhang_0-1722335736712.png" style="width: 400px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/290956i35B59B7FDF5559EA/image-size/medium?v=v2&amp;amp;px=400" role="button" title="XuZhang_0-1722335736712.png" alt="XuZhang_0-1722335736712.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="XuZhang_1-1722335847619.png" style="width: 400px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/290957iD20306D91A0A9E58/image-size/medium?v=v2&amp;amp;px=400" role="button" title="XuZhang_1-1722335847619.png" alt="XuZhang_1-1722335847619.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;Wish it helps you.&lt;/P&gt;
&lt;P&gt;If you still have question about it,please kindly let me know.&lt;/P&gt;
&lt;P&gt;BR&lt;/P&gt;
&lt;P&gt;Xu Zhang&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 30 Jul 2024 10:38:57 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCX-Microcontrollers/MCXN-ENET-RMII-Clock/m-p/1920416#M1402</guid>
      <dc:creator>Joey_z</dc:creator>
      <dc:date>2024-07-30T10:38:57Z</dc:date>
    </item>
    <item>
      <title>Re: MCXN ENET RMII Clock</title>
      <link>https://community.nxp.com/t5/MCX-Microcontrollers/MCXN-ENET-RMII-Clock/m-p/1920520#M1403</link>
      <description>&lt;P&gt;&lt;SPAN&gt;Thank you&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;Xu Zhang,&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Yes, I have&amp;nbsp;JP13 closed on 2-3 pin, R274 populated and JP50 closed.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Are my above assertions (ENETRMIICLKSEL = 1, PLL0 clock 150MHz ; ENETRMIICLKDIV = 2, divide by 3) right to output the 50MHz clock from&amp;nbsp;ENET0_TXCLK? I miss something else?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;With the original assertion (ENETRMIICLKSEL = 0, no clock) and JP50 open it works properly.&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 30 Jul 2024 12:45:45 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCX-Microcontrollers/MCXN-ENET-RMII-Clock/m-p/1920520#M1403</guid>
      <dc:creator>Vagni</dc:creator>
      <dc:date>2024-07-30T12:45:45Z</dc:date>
    </item>
    <item>
      <title>Re: MCXN ENET RMII Clock</title>
      <link>https://community.nxp.com/t5/MCX-Microcontrollers/MCXN-ENET-RMII-Clock/m-p/1922992#M1421</link>
      <description>&lt;P&gt;I see ENET RMII Clock Divider register ENETRMIICLKDIV has the UNSTAB status flag, the RESET flag and the HALT run/stop flag. So I tried the following new code to enable the&amp;nbsp;&lt;SPAN&gt;ENET0_TXCLK clock output:&lt;/SPAN&gt;&lt;/P&gt;&lt;LI-CODE lang="c"&gt;    /* attach PLL0_CLK_clock 150MHz to ENETRMII */
    CLOCK_AttachClk(kPLL0_to_ENETRMII);
    /*!&amp;lt; Set up ENETRMIICLKDIV divider to 3 (50MHz) */
    CLOCK_SetClkDiv(kCLOCK_DivEnetrmiiClk, 3U);
    SYSCON-&amp;gt;ENETRMIICLKDIV &amp;amp;= (uint32_t) ~(SYSCON_ENETRMIICLKDIV_HALT_MASK | SYSCON_ENETRMIICLKDIV_RESET_MASK);
    /* Wait until clock change completes */
    while ((SYSCON-&amp;gt;ENETRMIICLKDIV &amp;amp; SYSCON_ENETRMIICLKDIV_UNSTAB_MASK) != 0U)
    {
    }&lt;/LI-CODE&gt;&lt;P&gt;But the issue is still present: the Ethernet PHY is quite always down.&lt;/P&gt;&lt;P&gt;Actually, with my scope I see a very unstable 50MHz clock output from the MCU in this condition. With the external oscillator enabled the 50MHz clock signal is good.&lt;/P&gt;&lt;P&gt;How to properly set&amp;nbsp;ENETRMIICLKDIV to have 50MHz output from PLL0 150MHz input through the Ethernet RMII Clock Selection MUX ?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 01 Aug 2024 12:31:18 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCX-Microcontrollers/MCXN-ENET-RMII-Clock/m-p/1922992#M1421</guid>
      <dc:creator>Vagni</dc:creator>
      <dc:date>2024-08-01T12:31:18Z</dc:date>
    </item>
    <item>
      <title>Re: MCXN ENET RMII Clock</title>
      <link>https://community.nxp.com/t5/MCX-Microcontrollers/MCXN-ENET-RMII-Clock/m-p/1926018#M1451</link>
      <description>&lt;P&gt;hi,&lt;A id="link_6" class="lia-link-navigation lia-page-link lia-user-name-link" href="https://community.nxp.com/t5/user/viewprofilepage/user-id/3989" target="_self" aria-label="View Profile of Vagni"&gt;&lt;SPAN class=""&gt;Vagni&lt;/SPAN&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;Our default configuration is using FIRC48M for the clock source of the PLL0, which is derived from FRO144M and has the maximum error of 3% across the device's full temperature range, along with 200ps jitter RMS which exceeds the clock specification required for RMII operation (see attached images).&lt;/P&gt;
&lt;P&gt;Please check the attached project which uses on-board 24MHz crystal oscillator to provide low jitter and accurate clock source to PLL0 module, and uses PLL0 as RMII clock source.&lt;/P&gt;
&lt;P&gt;Since RMII clock frequency is relatively high (50MHz), so the oscilloscope and the measurement set-up (i.e. ground-loop) needs to be carefully adjusted to avoid signal integrity (SI) issues introduced by the improper measurement system. Please check the attached scope image for the 50MHz output from P1_4.&lt;/P&gt;
&lt;P&gt;I put the modified program in the attachment, please close JP50 and try again.&lt;/P&gt;
&lt;P&gt;BR&lt;/P&gt;
&lt;P&gt;Xu Zhang&lt;/P&gt;</description>
      <pubDate>Sun, 17 Nov 2024 03:23:04 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCX-Microcontrollers/MCXN-ENET-RMII-Clock/m-p/1926018#M1451</guid>
      <dc:creator>Joey_z</dc:creator>
      <dc:date>2024-11-17T03:23:04Z</dc:date>
    </item>
    <item>
      <title>Re: MCXN ENET RMII Clock</title>
      <link>https://community.nxp.com/t5/MCX-Microcontrollers/MCXN-ENET-RMII-Clock/m-p/1926274#M1454</link>
      <description>&lt;P&gt;Thank you&amp;nbsp;&lt;SPAN&gt;Xu Zhang,&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Now it works with PLL0 sourced by the on-board 24MHz crystal oscillator.&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 06 Aug 2024 10:21:53 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCX-Microcontrollers/MCXN-ENET-RMII-Clock/m-p/1926274#M1454</guid>
      <dc:creator>Vagni</dc:creator>
      <dc:date>2024-08-06T10:21:53Z</dc:date>
    </item>
  </channel>
</rss>

