<?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のトピックRe: RMII interface on i.MX6SX</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/RMII-interface-on-i-MX6SX/m-p/424539#M64211</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;BR /&gt;for the&amp;nbsp; RMII, the clock should be provided by the transmit side.&lt;/P&gt;&lt;P&gt;And please make sure, the pad configure as SION to loop back.&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;The RX side clock should provide by the phy.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 03 Aug 2015 10:35:29 GMT</pubDate>
    <dc:creator>BiyongSUN</dc:creator>
    <dc:date>2015-08-03T10:35:29Z</dc:date>
    <item>
      <title>RMII interface on i.MX6SX</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/RMII-interface-on-i-MX6SX/m-p/424530#M64202</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I wish to use a LAN8720 (RMII) with the iMX6SX.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The IMX6SXHDG does not cover the Ethernet Interface at all.&lt;/P&gt;&lt;P&gt;The SX Reference Manual covers it very badly:&lt;/P&gt;&lt;P&gt;&lt;A href="http://cache.freescale.com/files/32bit/doc/ref_manual/IMX6SXRM.pdf?fasp=1" title="http://cache.freescale.com/files/32bit/doc/ref_manual/IMX6SXRM.pdf?fasp=1"&gt;http://cache.freescale.com/files/32bit/doc/ref_manual/IMX6SXRM.pdf?fasp=1&lt;/A&gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1) My main problem is how to generate the RMII clock for the LAN8720.&lt;/P&gt;&lt;P&gt;The IMX6DQ6SDLHDG outlines how it is done for&amp;nbsp; S/D/L processors (see below), by using GPIO_16.&lt;/P&gt;&lt;P&gt;Does this apply to iMX6SX devices too ?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; &lt;span class="lia-inline-image-display-wrapper" image-alt="pastedImage_1.png"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/54578iA9C46940AFB970F1/image-size/large?v=v2&amp;amp;px=999" role="button" title="pastedImage_1.png" alt="pastedImage_1.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2) The following screenshots show my connections between LAN8720 and iMX6SX.&lt;/P&gt;&lt;P&gt;Do they seem correct ?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="pastedImage_2.png"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/54595i5DE0140D7655F679/image-size/large?v=v2&amp;amp;px=999" role="button" title="pastedImage_2.png" alt="pastedImage_2.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="pastedImage_3.png"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/54609i9E26563522033BF8/image-size/large?v=v2&amp;amp;px=999" role="button" title="pastedImage_3.png" alt="pastedImage_3.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 20 Jul 2015 02:38:38 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/RMII-interface-on-i-MX6SX/m-p/424530#M64202</guid>
      <dc:creator>Richard1z</dc:creator>
      <dc:date>2015-07-20T02:38:38Z</dc:date>
    </item>
    <item>
      <title>Re: RMII interface on i.MX6SX</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/RMII-interface-on-i-MX6SX/m-p/424531#M64203</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;1. change the device tree to set the pin ctrl&amp;nbsp; correctly . Especially loop back the clock.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; #define MX6SX_PAD_ENET1_TX_CLK__ENET1_REF_CLK1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x0090 0x03D8 0x0760 0x11 0x1&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span class="lia-inline-image-display-wrapper" image-alt="Untitled.png"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/54667i0018B8899B323C99/image-size/large?v=v2&amp;amp;px=999" role="button" title="Untitled.png" alt="Untitled.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;2. change the device tree to set the fec correctly.&amp;nbsp; using rmii&lt;/P&gt;&lt;P&gt;3. Using 50M for RMII&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; arch/arm/mach-imx/clk-imx6sx.c&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; imx_clk_set_rate(clks[IMX6SX_CLK_ENET_REF], 50000000);&lt;/P&gt;&lt;P&gt;4.&amp;nbsp;&amp;nbsp; Add phy fix up for LAN8720 as ar8031 does &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;193 #define PHY_ID_AR8031&amp;nbsp;&amp;nbsp; 0x004dd074&lt;/P&gt;&lt;P&gt;194 static void __init imx6sx_enet_phy_init(void)&lt;/P&gt;&lt;P&gt;195 {&lt;/P&gt;&lt;P&gt;196&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (IS_BUILTIN(CONFIG_PHYLIB))&lt;/P&gt;&lt;P&gt;197&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; phy_register_fixup_for_uid(PHY_ID_AR8031, 0xffffffff,&lt;/P&gt;&lt;P&gt;198&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ar8031_phy_fixup);&lt;/P&gt;&lt;P&gt;199 }&lt;/P&gt;&lt;P&gt;200&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 20 Jul 2015 03:01:26 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/RMII-interface-on-i-MX6SX/m-p/424531#M64203</guid>
      <dc:creator>BiyongSUN</dc:creator>
      <dc:date>2015-07-20T03:01:26Z</dc:date>
    </item>
    <item>
      <title>Re: RMII interface on i.MX6SX</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/RMII-interface-on-i-MX6SX/m-p/424532#M64204</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Sun,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;can you please note that the reference clock is connected to ENET2_RX_CLK, do you think looks ok?&lt;/P&gt;&lt;P&gt;&lt;SPAN style="line-height: 1.5;"&gt;Currently I'm going to patch our custom board under uboot-imx with this pinmux.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;/* mx6sx_pins.h */&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MX6SX_PAD_ENET2_RX_CLK__ENET2_RX_CLK&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = IOMUX_PAD(0x03E4, 0x009C, 0 | IOMUX_CONFIG_SION, 0x0000, 0, NO_PAD_CTRL)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;/* board pinmux */&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;#define GPIO_FEC1_PHY_RESET IMX_GPIO_NR(2, 7)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;static iomux_v3_cfg_t const fec1_pads[] = {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MX6SX_PAD_ENET1_MDC__ENET1_MDC | MUX_PAD_CTRL(ENET_PAD_CTRL),&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MX6SX_PAD_ENET1_MDIO__ENET1_MDIO | MUX_PAD_CTRL(ENET_PAD_CTRL),&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MX6SX_PAD_RGMII1_RD0__ENET1_RX_DATA_0 | MUX_PAD_CTRL(ENET_PAD_CTRL),&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MX6SX_PAD_RGMII1_RD1__ENET1_RX_DATA_1 | MUX_PAD_CTRL(ENET_PAD_CTRL),&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MX6SX_PAD_ENET2_CRS__GPIO2_IO_7 | MUX_PAD_CTRL(NO_PAD_CTRL),&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MX6SX_PAD_RGMII1_TD0__ENET1_TX_DATA_0 | MUX_PAD_CTRL(ENET_PAD_CTRL),&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MX6SX_PAD_RGMII1_TD1__ENET1_TX_DATA_1 | MUX_PAD_CTRL(ENET_PAD_CTRL),&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MX6SX_PAD_RGMII1_RX_CTL__ENET1_RX_EN | MUX_PAD_CTRL(ENET_PAD_CTRL),&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MX6SX_PAD_RGMII1_TX_CTL__ENET1_TX_EN | MUX_PAD_CTRL(ENET_PAD_CTRL),&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MX6SX_PAD_ENET2_RX_CLK__ENET2_RX_CLK | MUX_PAD_CTRL(ENET_PAD_CTRL),&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MX6SX_PAD_ENET2_TX_CLK__GPIO2_IO_9 | MUX_PAD_CTRL(ENET_PAD_CTRL),&lt;/P&gt;&lt;P&gt;&lt;SPAN style="line-height: 1.5;"&gt;};&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks in advance,&lt;/P&gt;&lt;P&gt;Roberto Fichera.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 20 Jul 2015 18:03:32 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/RMII-interface-on-i-MX6SX/m-p/424532#M64204</guid>
      <dc:creator>robyf</dc:creator>
      <dc:date>2015-07-20T18:03:32Z</dc:date>
    </item>
    <item>
      <title>Re: RMII interface on i.MX6SX</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/RMII-interface-on-i-MX6SX/m-p/424533#M64205</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Which BSP you are using?&lt;/P&gt;&lt;P&gt;i.MXSX is L3.10.53_1.1.0 and later.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 24 Jul 2015 06:09:52 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/RMII-interface-on-i-MX6SX/m-p/424533#M64205</guid>
      <dc:creator>BiyongSUN</dc:creator>
      <dc:date>2015-07-24T06:09:52Z</dc:date>
    </item>
    <item>
      <title>Re: RMII interface on i.MX6SX</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/RMII-interface-on-i-MX6SX/m-p/424534#M64206</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I'm using yocto fido fully updated. u-boot is imx version.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 24 Jul 2015 08:07:31 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/RMII-interface-on-i-MX6SX/m-p/424534#M64206</guid>
      <dc:creator>robyf</dc:creator>
      <dc:date>2015-07-24T08:07:31Z</dc:date>
    </item>
    <item>
      <title>Re: RMII interface on i.MX6SX</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/RMII-interface-on-i-MX6SX/m-p/424535#M64207</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;If you use the freescale release. Now the pin is handled by device tree.&lt;/P&gt;&lt;P&gt;Could not have the following array to configure the iomux.&lt;/P&gt;&lt;P&gt;Please use the freescale BSP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;static iomux_v3_cfg_t const fec1_pads[] = {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MX6SX_PAD_ENET1_MDC__ENET1_MDC | MUX_PAD_CTRL(ENET_PAD_CTRL),&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MX6SX_PAD_ENET1_MDIO__ENET1_MDIO | MUX_PAD_CTRL(ENET_PAD_CTRL),&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MX6SX_PAD_RGMII1_RD0__ENET1_RX_DATA_0 | MUX_PAD_CTRL(ENET_PAD_CTRL),&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MX6SX_PAD_RGMII1_RD1__ENET1_RX_DATA_1 | MUX_PAD_CTRL(ENET_PAD_CTRL),&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MX6SX_PAD_ENET2_CRS__GPIO2_IO_7 | MUX_PAD_CTRL(NO_PAD_CTRL),&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MX6SX_PAD_RGMII1_TD0__ENET1_TX_DATA_0 | MUX_PAD_CTRL(ENET_PAD_CTRL),&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MX6SX_PAD_RGMII1_TD1__ENET1_TX_DATA_1 | MUX_PAD_CTRL(ENET_PAD_CTRL),&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MX6SX_PAD_RGMII1_RX_CTL__ENET1_RX_EN | MUX_PAD_CTRL(ENET_PAD_CTRL),&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MX6SX_PAD_RGMII1_TX_CTL__ENET1_TX_EN | MUX_PAD_CTRL(ENET_PAD_CTRL),&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MX6SX_PAD_ENET2_RX_CLK__ENET2_RX_CLK | MUX_PAD_CTRL(ENET_PAD_CTRL),&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MX6SX_PAD_ENET2_TX_CLK__GPIO2_IO_9 | MUX_PAD_CTRL(ENET_PAD_CTRL),&lt;/P&gt;&lt;P&gt;};&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 24 Jul 2015 11:25:05 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/RMII-interface-on-i-MX6SX/m-p/424535#M64207</guid>
      <dc:creator>BiyongSUN</dc:creator>
      <dc:date>2015-07-24T11:25:05Z</dc:date>
    </item>
    <item>
      <title>Re: RMII interface on i.MX6SX</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/RMII-interface-on-i-MX6SX/m-p/424536#M64208</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Sorry but I guess you are referring to the linux kernel and not regarding u-boot. I'm currently using the last u-boot-imx version you will find in L3.14.28_1.0.0_ga release. Here the my git log:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;* 88123ea - (HEAD, tag: rel_imx_3.14.28_1.0.0_ga) MLK-10215 Add elan init in i.MX6SL-EVK board (5 months ago) &amp;lt;Haibo Chen&amp;gt;&lt;/P&gt;&lt;P&gt;* 1d4e7b2 - MLK-10134 imx: mx6dqarm2: Add MX6DQ PoP validation board support (6 months ago) &amp;lt;Ye.Li&amp;gt;&lt;/P&gt;&lt;P&gt;* cd67d51 - MA-6048 Correct word in uboot log for android recovery mode (7 months ago) &amp;lt;guoyin.chen&amp;gt;&lt;/P&gt;&lt;P&gt;* 9045626 - MLK-10035-2: supports NAND chips with oob size up to 744 byte (7 months ago) &amp;lt;Allen Xu&amp;gt;&lt;/P&gt;&lt;P&gt;[...]&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The changes you are talking above seems related to the linux kernel not u-boot as I've requested. By the way my current pinmux settings is:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;static iomux_v3_cfg_t const fec1_pads[] = {&lt;/P&gt;&lt;P&gt;&amp;nbsp; MX6SX_PAD_ENET1_MDC__ENET1_MDC | MUX_PAD_CTRL(ENET_PAD_CTRL),&lt;/P&gt;&lt;P&gt;&amp;nbsp; MX6SX_PAD_ENET1_MDIO__ENET1_MDIO | MUX_PAD_CTRL(ENET_PAD_CTRL),&lt;/P&gt;&lt;P&gt;&amp;nbsp; MX6SX_PAD_RGMII1_RD0__ENET1_RX_DATA_0 | MUX_PAD_CTRL(ENET_PAD_CTRL),&lt;/P&gt;&lt;P&gt;&amp;nbsp; MX6SX_PAD_RGMII1_RD1__ENET1_RX_DATA_1 | MUX_PAD_CTRL(ENET_PAD_CTRL),&lt;/P&gt;&lt;P&gt;&amp;nbsp; MX6SX_PAD_ENET2_CRS__GPIO2_IO_7 | MUX_PAD_CTRL(NO_PAD_CTRL),&lt;/P&gt;&lt;P&gt;&amp;nbsp; MX6SX_PAD_RGMII1_TD0__ENET1_TX_DATA_0 | MUX_PAD_CTRL(ENET_PAD_CTRL),&lt;/P&gt;&lt;P&gt;&amp;nbsp; MX6SX_PAD_RGMII1_TD1__ENET1_TX_DATA_1 | MUX_PAD_CTRL(ENET_PAD_CTRL),&lt;/P&gt;&lt;P&gt;&amp;nbsp; MX6SX_PAD_RGMII1_RX_CTL__ENET1_RX_EN | MUX_PAD_CTRL(ENET_PAD_CTRL),&lt;/P&gt;&lt;P&gt;&amp;nbsp; MX6SX_PAD_RGMII1_TX_CTL__ENET1_TX_EN | MUX_PAD_CTRL(ENET_PAD_CTRL),&lt;/P&gt;&lt;P&gt;&amp;nbsp; MX6SX_PAD_ENET1_RX_CLK__ENET1_RX_CLK | MUX_PAD_CTRL(ENET_PAD_CTRL),&lt;/P&gt;&lt;P&gt;&amp;nbsp; MX6SX_PAD_ENET1_TX_CLK__ENET1_REF_CLK1 | MUX_PAD_CTRL(ENET_PAD_CTRL),&lt;/P&gt;&lt;P&gt;&amp;nbsp; MX6SX_PAD_ENET2_RX_CLK__ENET2_RX_CLK | MUX_PAD_CTRL(ENET_PAD_CTRL),&lt;/P&gt;&lt;P&gt;&amp;nbsp; MX6SX_PAD_ENET2_TX_CLK__ENET2_REF_CLK2 | MUX_PAD_CTRL(ENET_PAD_CTRL),&lt;/P&gt;&lt;P&gt;&lt;SPAN style="line-height: 1.5;"&gt;};&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="line-height: 1.5;"&gt;we are actually fixing the RX_CLK vs TX_CLK issue by a patch but we want to enable both ENET1/2 &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="line-height: 1.5;"&gt;ref clocks in order to feed the clock to LAN8720 pin, &lt;/SPAN&gt;&lt;SPAN style="line-height: 1.5;"&gt;so I've this &lt;/SPAN&gt;&lt;SPAN style="line-height: 1.5;"&gt;fec initialization code:&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;static int setup_fec(int fec_id)&lt;/P&gt;&lt;P&gt;{&lt;/P&gt;&lt;P&gt;&amp;nbsp; struct iomuxc_gpr_base_regs *const iomuxc_gpr_regs&amp;nbsp; = (struct iomuxc_gpr_base_regs *) IOMUXC_GPR_BASE_ADDR;&lt;/P&gt;&lt;P&gt;&amp;nbsp; int ret;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; /* Use 50MHz anatop REF_CLK1/2 for both ENET1/2, clear gpr1[13:14], gpr1[17:18]*/&lt;/P&gt;&lt;P&gt;&lt;SPAN style="line-height: 1.5;"&gt;&amp;nbsp; clrsetbits_le32(&amp;amp;iomuxc_gpr_regs-&amp;gt;gpr[1], IOMUX_GPR1_FEC1_MASK, 0);&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; clrsetbits_le32(&amp;amp;iomuxc_gpr_regs-&amp;gt;gpr[1], IOMUX_GPR1_FEC2_MASK, 0);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; ret&amp;nbsp; = enable_fec_anatop_clock(0, ENET_50MHz);&lt;/P&gt;&lt;P&gt;&amp;nbsp; ret |= enable_fec_anatop_clock(1, ENET_50MHz);&lt;/P&gt;&lt;P&gt;&amp;nbsp; if (ret)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return ret;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; return 0;&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;But we don't see anything on the ENET2_TX_CLK pin right now. Any idea how to get both clocks up and running?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Cheers,&lt;/P&gt;&lt;P&gt;Roberto Fichera.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 24 Jul 2015 16:39:40 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/RMII-interface-on-i-MX6SX/m-p/424536#M64208</guid>
      <dc:creator>robyf</dc:creator>
      <dc:date>2015-07-24T16:39:40Z</dc:date>
    </item>
    <item>
      <title>Re: RMII interface on i.MX6SX</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/RMII-interface-on-i-MX6SX/m-p/424537#M64209</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;In the referece design, the hardware is shared MDIO/MDC. &lt;/P&gt;&lt;P&gt;Could you please check you hardware and also read the phy id to confirm which phy you are controlling?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 27 Jul 2015 01:47:59 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/RMII-interface-on-i-MX6SX/m-p/424537#M64209</guid>
      <dc:creator>BiyongSUN</dc:creator>
      <dc:date>2015-07-27T01:47:59Z</dc:date>
    </item>
    <item>
      <title>Re: RMII interface on i.MX6SX</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/RMII-interface-on-i-MX6SX/m-p/424538#M64210</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Currently I'm not able to read the phy id. The RX/TX_CLK is not present, hence the MDIO is transmitting all "1"s.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 02 Aug 2015 22:26:39 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/RMII-interface-on-i-MX6SX/m-p/424538#M64210</guid>
      <dc:creator>robyf</dc:creator>
      <dc:date>2015-08-02T22:26:39Z</dc:date>
    </item>
    <item>
      <title>Re: RMII interface on i.MX6SX</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/RMII-interface-on-i-MX6SX/m-p/424539#M64211</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;BR /&gt;for the&amp;nbsp; RMII, the clock should be provided by the transmit side.&lt;/P&gt;&lt;P&gt;And please make sure, the pad configure as SION to loop back.&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;The RX side clock should provide by the phy.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 03 Aug 2015 10:35:29 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/RMII-interface-on-i-MX6SX/m-p/424539#M64211</guid>
      <dc:creator>BiyongSUN</dc:creator>
      <dc:date>2015-08-03T10:35:29Z</dc:date>
    </item>
    <item>
      <title>Re: RMII interface on i.MX6SX</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/RMII-interface-on-i-MX6SX/m-p/424540#M64212</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;My code actually is the following:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;arch/arm/include/include/asm/arch-mx6/mx6sx_pins.h has the following changes:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MX6SX_PAD_ENET1_TX_CLK__ENET1_REF_CLK1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = IOMUX_PAD(0x03D8, 0x0090, 1 | IOMUX_CONFIG_SION, 0x0760, 1, 0),&lt;/P&gt;&lt;P&gt;MX6SX_PAD_ENET2_TX_CLK__ENET2_REF_CLK2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = IOMUX_PAD(0x03E8, 0x00A0, 1 | IOMUX_CONFIG_SION, 0x076C, 1, 0),&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;board specific code looks:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;#define ENET_PAD_CTRL&amp;nbsp; (PAD_CTL_PUS_100K_UP | PAD_CTL_PUE |&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; \&lt;/P&gt;&lt;P&gt;&amp;nbsp; PAD_CTL_SPEED_HIGH&amp;nbsp;&amp;nbsp; |&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; \&lt;/P&gt;&lt;P&gt;&amp;nbsp; PAD_CTL_DSE_48ohm&amp;nbsp;&amp;nbsp; | PAD_CTL_SRE_FAST)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;#define ENET_CLK_PAD_CTRL&amp;nbsp; (PAD_CTL_SPEED_MED | \&lt;/P&gt;&lt;P&gt;&amp;nbsp; PAD_CTL_DSE_120ohm&amp;nbsp;&amp;nbsp; | PAD_CTL_SRE_FAST)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;#define ENET_RX_PAD_CTRL&amp;nbsp; (PAD_CTL_PKE | PAD_CTL_PUE |&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; \&lt;/P&gt;&lt;P&gt;&amp;nbsp; PAD_CTL_SPEED_HIGH&amp;nbsp;&amp;nbsp; | PAD_CTL_SRE_FAST)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;#define GPIO_FEC1_PHY_RESET IMX_GPIO_NR(2, 7)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;static iomux_v3_cfg_t const fec1_pads[] = {&lt;/P&gt;&lt;P&gt;&amp;nbsp; MX6SX_PAD_ENET1_MDC__ENET1_MDC | MUX_PAD_CTRL(ENET_PAD_CTRL),&lt;/P&gt;&lt;P&gt;&amp;nbsp; MX6SX_PAD_ENET1_MDIO__ENET1_MDIO | MUX_PAD_CTRL(ENET_PAD_CTRL),&lt;/P&gt;&lt;P&gt;&amp;nbsp; MX6SX_PAD_RGMII1_RD0__ENET1_RX_DATA_0 | MUX_PAD_CTRL(ENET_RX_PAD_CTRL),&lt;/P&gt;&lt;P&gt;&amp;nbsp; MX6SX_PAD_RGMII1_RD1__ENET1_RX_DATA_1 | MUX_PAD_CTRL(ENET_RX_PAD_CTRL),&lt;/P&gt;&lt;P&gt;&amp;nbsp; MX6SX_PAD_RGMII1_TD0__ENET1_TX_DATA_0 | MUX_PAD_CTRL(ENET_PAD_CTRL),&lt;/P&gt;&lt;P&gt;&amp;nbsp; MX6SX_PAD_RGMII1_TD1__ENET1_TX_DATA_1 | MUX_PAD_CTRL(ENET_PAD_CTRL),&lt;/P&gt;&lt;P&gt;&amp;nbsp; MX6SX_PAD_RGMII1_RX_CTL__ENET1_RX_EN | MUX_PAD_CTRL(ENET_RX_PAD_CTRL),&lt;/P&gt;&lt;P&gt;&amp;nbsp; MX6SX_PAD_RGMII1_TX_CTL__ENET1_TX_EN | MUX_PAD_CTRL(ENET_PAD_CTRL),&lt;/P&gt;&lt;P&gt;&amp;nbsp; MX6SX_PAD_ENET1_RX_CLK__ENET1_REF_CLK_25M | MUX_PAD_CTRL(ENET_PAD_CTRL),&lt;/P&gt;&lt;P&gt;&amp;nbsp; MX6SX_PAD_ENET1_TX_CLK__ENET1_REF_CLK1 | MUX_PAD_CTRL(ENET_PAD_CTRL),&lt;/P&gt;&lt;P&gt;&amp;nbsp; MX6SX_PAD_ENET2_RX_CLK__ENET2_REF_CLK_25M | MUX_PAD_CTRL(ENET_PAD_CTRL),&lt;/P&gt;&lt;P&gt;&amp;nbsp; MX6SX_PAD_ENET2_TX_CLK__ENET2_REF_CLK2 | MUX_PAD_CTRL(ENET_PAD_CTRL),&lt;/P&gt;&lt;P&gt;&amp;nbsp; /* ENET PHY Reset */&lt;/P&gt;&lt;P&gt;&amp;nbsp; MX6SX_PAD_ENET2_CRS__GPIO2_IO_7 | MUX_PAD_CTRL(NO_PAD_CTRL),&lt;/P&gt;&lt;P&gt;};&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;....&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;static int voneus_enable_fec_anatop_clock(enum enet_freq freq)&lt;/P&gt;&lt;P&gt;{&lt;/P&gt;&lt;P&gt; extern struct mxc_ccm_reg *imx_ccm;&lt;/P&gt;&lt;P&gt;&amp;nbsp; u32 reg = 0;&lt;/P&gt;&lt;P&gt;&amp;nbsp; s32 timeout = 100000;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; if (freq &amp;lt; ENET_25MHz || freq &amp;gt; ENET_125MHz)&lt;/P&gt;&lt;P&gt;&amp;nbsp; return -EINVAL;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; reg = readl(&amp;amp;imx_ccm-&amp;gt;analog_pll_enet);&lt;/P&gt;&lt;P&gt;&amp;nbsp; reg &amp;amp;= ~(BM_ANADIG_PLL_ENET_DIV_SELECT|BM_ANADIG_PLL_ENET2_DIV_SELECT);&lt;/P&gt;&lt;P&gt;&amp;nbsp; reg |= BF_ANADIG_PLL_ENET_DIV_SELECT(freq) | BF_ANADIG_PLL_ENET2_DIV_SELECT(freq);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; if ((reg &amp;amp; BM_ANADIG_PLL_ENET_POWERDOWN) ||&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (!(reg &amp;amp; BM_ANADIG_PLL_ENET_LOCK))) {&lt;/P&gt;&lt;P&gt;&amp;nbsp; reg &amp;amp;= ~BM_ANADIG_PLL_ENET_POWERDOWN;&lt;/P&gt;&lt;P&gt;&amp;nbsp; writel(reg, &amp;amp;imx_ccm-&amp;gt;analog_pll_enet);&lt;/P&gt;&lt;P&gt;&amp;nbsp; while (timeout--) {&lt;/P&gt;&lt;P&gt;&amp;nbsp; if (readl(&amp;amp;imx_ccm-&amp;gt;analog_pll_enet) &amp;amp; BM_ANADIG_PLL_ENET_LOCK)&lt;/P&gt;&lt;P&gt;&amp;nbsp; break;&lt;/P&gt;&lt;P&gt;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&amp;nbsp; if (timeout &amp;lt; 0) {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf("FEC MXC: %s:timeout\n", __func__);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return -ETIMEDOUT;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; /* Enable FEC clock */&lt;/P&gt;&lt;P&gt;&amp;nbsp; reg |= BM_ANADIG_PLL_ENET_ENABLE|BM_ANADIG_PLL_ENET2_ENABLE;&lt;/P&gt;&lt;P&gt;&amp;nbsp; reg &amp;amp;= ~BM_ANADIG_PLL_ENET_BYPASS;&lt;/P&gt;&lt;P&gt;#ifdef CONFIG_FEC_MXC_25M_REF_CLK&lt;/P&gt;&lt;P&gt;&amp;nbsp; reg |= BM_ANADIG_PLL_ENET_REF_25M_ENABLE;&lt;/P&gt;&lt;P&gt;#endif&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; writel(reg, &amp;amp;imx_ccm-&amp;gt;analog_pll_enet);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; return 0;&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;static int probe_lan8720(bd_t *bd, int dev_id, int phy_id, uint32_t addr)&lt;/P&gt;&lt;P&gt;{&lt;/P&gt;&lt;P&gt;&amp;nbsp; uint32_t base_mii;&lt;/P&gt;&lt;P&gt;&amp;nbsp; struct mii_dev *bus = NULL;&lt;/P&gt;&lt;P&gt;#ifdef CONFIG_PHYLIB&lt;/P&gt;&lt;P&gt;&amp;nbsp; struct phy_device *phydev = NULL;&lt;/P&gt;&lt;P&gt;#endif&lt;/P&gt;&lt;P&gt;&amp;nbsp; int ret;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; base_mii = addr;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; printf("eth_init: fec_probe(bd, %i, %i) @ %08x\n", dev_id, phy_id, addr);&lt;/P&gt;&lt;P&gt;&amp;nbsp; bus = fec_get_miibus(base_mii, dev_id);&lt;/P&gt;&lt;P&gt;&amp;nbsp; if (!bus)&lt;/P&gt;&lt;P&gt;&amp;nbsp; return -ENOMEM;&lt;/P&gt;&lt;P&gt;#ifdef CONFIG_PHYLIB&lt;/P&gt;&lt;P&gt;&amp;nbsp; phydev = phy_find_by_mask(bus, 1 &amp;lt;&amp;lt; phy_id, PHY_INTERFACE_MODE_RMII);&lt;/P&gt;&lt;P&gt;&amp;nbsp; if (!phydev) {&lt;/P&gt;&lt;P&gt;&amp;nbsp; free(bus);&lt;/P&gt;&lt;P&gt;&amp;nbsp; return -ENOMEM;&lt;/P&gt;&lt;P&gt;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&amp;nbsp; ret = fec_probe(bd, dev_id, addr, bus, phydev);&lt;/P&gt;&lt;P&gt;#else&lt;/P&gt;&lt;P&gt;&amp;nbsp; ret = fec_probe(bd, dev_id, addr, bus, phy_id);&lt;/P&gt;&lt;P&gt;#endif&lt;/P&gt;&lt;P&gt;&amp;nbsp; if (ret) {&lt;/P&gt;&lt;P&gt;#ifdef CONFIG_PHYLIB&lt;/P&gt;&lt;P&gt;&amp;nbsp; free(phydev);&lt;/P&gt;&lt;P&gt;#endif&lt;/P&gt;&lt;P&gt;&amp;nbsp; free(bus);&lt;/P&gt;&lt;P&gt;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&amp;nbsp; return ret;&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;int board_eth_init(bd_t *bis)&lt;/P&gt;&lt;P&gt;{&lt;/P&gt;&lt;P&gt;&amp;nbsp; struct iomuxc_gpr_base_regs *const iomuxc_gpr_regs = (struct iomuxc_gpr_base_regs *) IOMUXC_GPR_BASE_ADDR;&lt;/P&gt;&lt;P&gt;&amp;nbsp; int ret;&lt;/P&gt;&lt;P&gt;&amp;nbsp; int reg;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; imx_iomux_v3_setup_multiple_pads(fec1_pads, ARRAY_SIZE(fec1_pads));&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; gpio_direction_output(GPIO_FEC1_PHY_RESET, 0);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; reg = readl(&amp;amp;iomuxc_gpr_regs-&amp;gt;gpr[1]);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* reset ENET1/2_TX_CLK_DIR gpr1[14:13] to set reference clock driven by ref_enetpll0/1&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * Clock is output to pins via IOMUX ENET_REF_CLK1/2 &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; */&lt;/P&gt;&lt;P&gt;&amp;nbsp; reg &amp;amp;= ~(IOMUX_GPR1_FEC1_CLOCK_MUX2_SEL_MASK|IOMUX_GPR1_FEC2_CLOCK_MUX2_SEL_MASK);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; /* set ENET1/2_TX_CLK_DIR gpr1[18:17] to enable output driver when ENET1/2_TX_CLK when in ALT1 */&lt;/P&gt;&lt;P&gt;&amp;nbsp; reg |= IOMUX_GPR1_FEC1_CLOCK_MUX1_SEL_MASK|IOMUX_GPR1_FEC2_CLOCK_MUX1_SEL_MASK;&lt;/P&gt;&lt;P&gt;&amp;nbsp; writel(reg, &amp;amp;iomuxc_gpr_regs-&amp;gt;gpr[1]);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; ret&amp;nbsp; = voneus_enable_fec_anatop_clock(ENET_50MHz);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; enable_enet_clock();&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; mdelay(30);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; gpio_set_value(GPIO_FEC1_PHY_RESET, 1);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; mdelay(100);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; ret = probe_lan8720(bis, CONFIG_FEC_ENET_DEV, CONFIG_FEC_MXC_PHYADDR, IMX_FEC_BASE);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; if (ret)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf("FEC MXC: %s:failed (%0x)\n",&amp;nbsp; __func__, ret);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; return ret;&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;int board_phy_config(struct phy_device *phydev)&lt;/P&gt;&lt;P&gt;{&lt;/P&gt;&lt;P&gt;&amp;nbsp; if (phydev-&amp;gt;drv-&amp;gt;config)&lt;/P&gt;&lt;P&gt;&amp;nbsp; phydev-&amp;gt;drv-&amp;gt;config(phydev);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; return 0;&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 03 Aug 2015 13:33:51 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/RMII-interface-on-i-MX6SX/m-p/424540#M64212</guid>
      <dc:creator>robyf</dc:creator>
      <dc:date>2015-08-03T13:33:51Z</dc:date>
    </item>
    <item>
      <title>Re: RMII interface on i.MX6SX</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/RMII-interface-on-i-MX6SX/m-p/424541#M64213</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I want to reply myself because finally I've got it working and now the PHY is finally recognized correctly!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;U-Boot 2014.04-imx_v2014.04_3.14.28_1.0.0_ga+g88123ea (Aug 05 2015 - 16:44:08)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CPU:&amp;nbsp;&amp;nbsp; Freescale i.MX6SX rev1.2 at 792 MHz&lt;/P&gt;&lt;P&gt;CPU:&amp;nbsp;&amp;nbsp; Temperature 35 C, calibration data: 0x5c553569&lt;/P&gt;&lt;P&gt;Reset cause: POR&lt;/P&gt;&lt;P&gt;Board: Domus iMX6SX (ID:e301dab51823b1d4)&lt;/P&gt;&lt;P&gt;I2C:&amp;nbsp;&amp;nbsp; ready&lt;/P&gt;&lt;P&gt;DRAM:&amp;nbsp; 512 MiB&lt;/P&gt;&lt;P&gt;MMC:&amp;nbsp;&amp;nbsp; FSL_SDHC: 0, FSL_SDHC: 1&lt;/P&gt;&lt;P&gt;*** Warning - bad CRC, using default environment&lt;/P&gt;&lt;P&gt;In:&amp;nbsp;&amp;nbsp;&amp;nbsp; serial&lt;/P&gt;&lt;P&gt;Out:&amp;nbsp;&amp;nbsp; serial&lt;/P&gt;&lt;P&gt;Err:&amp;nbsp;&amp;nbsp; serial&lt;/P&gt;&lt;P&gt;Found PFUZE200! deviceid 0x1, revid 0x21&lt;/P&gt;&lt;P&gt;mmc0 is current device&lt;/P&gt;&lt;P&gt;FEC0 connected to SMSC LAN8710/LAN8720&lt;/P&gt;&lt;P&gt;FEC0&lt;/P&gt;&lt;P&gt;Warning: failed to set MAC address&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Normal Boot&lt;/P&gt;&lt;P&gt;Hit any key to stop autoboot:&amp;nbsp; 0&lt;/P&gt;&lt;P&gt;=&amp;gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 07 Aug 2015 10:53:35 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/RMII-interface-on-i-MX6SX/m-p/424541#M64213</guid>
      <dc:creator>robyf</dc:creator>
      <dc:date>2015-08-07T10:53:35Z</dc:date>
    </item>
    <item>
      <title>Re: RMII interface on i.MX6SX</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/RMII-interface-on-i-MX6SX/m-p/424542#M64214</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Roberto,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I've exactly the same config as you apparently.&lt;/P&gt;&lt;P&gt;Did you make it works finally ? (with 50MHz generation and internal loopack)&lt;/P&gt;&lt;P&gt;Can you explain me U-Boot and linux configurations ?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I actually can generate 50MHz on Ref_clk and so the MDIO is OK but the RMII (ping/data) seems KO.&lt;/P&gt;&lt;P&gt;I think it's only a loopback issue but I'm quite lost between GPR1, MUX, ANALOG_PLL, ENET registers .....&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Can you help me please (again ;-) ) ?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 09 Oct 2015 08:58:55 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/RMII-interface-on-i-MX6SX/m-p/424542#M64214</guid>
      <dc:creator>mchaplet</dc:creator>
      <dc:date>2015-10-09T08:58:55Z</dc:date>
    </item>
    <item>
      <title>Re: RMII interface on i.MX6SX</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/RMII-interface-on-i-MX6SX/m-p/424543#M64215</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Ok, it seems that it was only missing MUX_MODE_SION in Muxing :&lt;/P&gt;&lt;P&gt;#define MX6_PAD_ENET1_TX_CLK__ENET1_REF_CLK1 | MUX_PAD_CTRL(ENET_PAD_CTRL) | MUX_MODE_SION,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Now I'm able to send packet ... but RX doesn't work because the ENET_RX_EN signal is not wired on my board :-/&lt;/P&gt;&lt;P&gt;I copied my design from an iMX6Solo and it seems that RX_EN signal is now muxed on RX_CTL pad instead of CRS pad.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I need to wait the second board version .... :-(&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 09 Oct 2015 12:15:24 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/RMII-interface-on-i-MX6SX/m-p/424543#M64215</guid>
      <dc:creator>mchaplet</dc:creator>
      <dc:date>2015-10-09T12:15:24Z</dc:date>
    </item>
    <item>
      <title>Re: RMII interface on i.MX6SX</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/RMII-interface-on-i-MX6SX/m-p/424544#M64216</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Martin,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Once patched the PCB but keeping the clocks from the second MAC I was able to progress a bit. uboot was patched accordingly with such particular clock wiring. The interface was able to acquire a DHCP address but pinging never worked. Due to that I haven't invested much time to check it, I have preferred to complete my tests with the rest of the peripherals and wait a new PCB version with the right wiring.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 09 Oct 2015 13:01:21 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/RMII-interface-on-i-MX6SX/m-p/424544#M64216</guid>
      <dc:creator>robyf</dc:creator>
      <dc:date>2015-10-09T13:01:21Z</dc:date>
    </item>
    <item>
      <title>Re: RMII interface on i.MX6SX</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/RMII-interface-on-i-MX6SX/m-p/424545#M64217</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Martin,&lt;/P&gt;&lt;P&gt;getting back to the SX + LAN8720 circuit after a _long_ absence......&lt;/P&gt;&lt;P&gt;Did your second PCB version work ?&lt;/P&gt;&lt;P&gt;I ask because our 1st one has a fatal clock problem, and I am about to spin a 2nd revision in the hope that correcting the clock error will allow it to work.&lt;/P&gt;&lt;P&gt;I'd be obliged if you could review my circuit above and compare it to yours or if you could share the relevant parts of your schematic. I'd hate to build a second set of board that still didn't work!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;BTW: For those in Freescale/NXP, the IMX6SXHDG has recently been revised - but it _still_ doesn't mention the RMII interface !&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 30 Jul 2016 02:06:00 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/RMII-interface-on-i-MX6SX/m-p/424545#M64217</guid>
      <dc:creator>Richard1z</dc:creator>
      <dc:date>2016-07-30T02:06:00Z</dc:date>
    </item>
  </channel>
</rss>

