<?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: K66 RMII pin MUX doesn't hold in Kinetis Microcontrollers</title>
    <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/K66-RMII-pin-MUX-doesn-t-hold/m-p/625912#M37524</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I do a test with FRDM-K66F board &amp;amp; KDSK V2.0 software, while I don't find your mentioned issue.&lt;/P&gt;&lt;P&gt;I also check the K66 errata record, without any record similar with this issue.&lt;/P&gt;&lt;P&gt;Could you check your software if there exist code modify the PORTA_PCR5 &amp;amp; PORTA_PCR9 registers value after the Ethernet pin initialization?&lt;/P&gt;&lt;P&gt;If possible, you could debug the code and check those register value setting if as expected.&lt;/P&gt;&lt;P&gt;And during the code execution to find where the code change those registers.&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Wish it helps.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Have a great day,&lt;BR /&gt;Ma Hui&lt;BR /&gt;-----------------------------------------------------------------------------------------------------------------------&lt;BR /&gt;Note: If this post answers your question, please click the Correct Answer button. Thank you!&lt;BR /&gt;-----------------------------------------------------------------------------------------------------------------------&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 21 Dec 2016 00:58:01 GMT</pubDate>
    <dc:creator>Hui_Ma</dc:creator>
    <dc:date>2016-12-21T00:58:01Z</dc:date>
    <item>
      <title>K66 RMII pin MUX doesn't hold</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/K66-RMII-pin-MUX-doesn-t-hold/m-p/625911#M37523</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I've been struggling for a while with the RMII setup of K66 that is connected to TI's&amp;nbsp;dp83620. The connection to the DP83620 and it's setup is the same as for another K70 project I have and that works fine. Now porting the code to the K66 gives a strange issue of PORTA_PCR5 changing from MUX setup of 4 to 6 and PORTA_PCR9 from 1 to 5. Can't see any mention of this in any documents.&lt;/P&gt;&lt;P&gt;IO config is:&lt;/P&gt;&lt;P&gt;/**&lt;BR /&gt; ETHERNET configuration (DP83620)&lt;BR /&gt; PTA24 = ETH_PCF_EN - Enable DP83620 Ethernet chip - OUTPUT (initial hi)&lt;BR /&gt; PTE26 = 50MHz osc input - default&lt;BR /&gt; PTA9 = ETH_INT - Interrupt from DP83620 Ethernet chip&lt;BR /&gt; PTA8 = ETH_RMII_MDC&lt;BR /&gt; PTA7 = ETH_RMII_MDIO&lt;BR /&gt; PTA17 = ETH_RMII_TXD1&lt;BR /&gt; PTA16 = ETH_RMII_TXD0&lt;BR /&gt; PTA15 = ETH_RMII_TXEN&lt;BR /&gt; PTA14 = ETH_RMII_CRS_DV&lt;BR /&gt; PTA13 = ETH_RMII_RXD0&lt;BR /&gt; PTA12 = ETH_RMII_RXD1&lt;BR /&gt; PTA5 = ETH_RMII_RXER&lt;BR /&gt; PTA28 = ETH_RESET output - Reset DP83620 Ethernet chip (initial lo)&lt;BR /&gt;**/&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The setup is:&lt;/P&gt;&lt;P&gt;#define DEFINE_ETHERNET_IO PORTA_PCR28 = (0 | PORT_PCR_MUX(PORT_PIN_MUX_CONTROL_PIN_ALT1)); \&lt;BR /&gt; PTA-&amp;gt;PCOR |= (0x01 &amp;lt;&amp;lt; 28); \&lt;BR /&gt; PTA-&amp;gt;PDDR |= (0x01 &amp;lt;&amp;lt; 28); /* ETH_RESET as output */ \&lt;BR /&gt; PORTA_PCR24 = (0 | PORT_PCR_MUX(PORT_PIN_MUX_CONTROL_PIN_ALT1)); /* ETH_EN */ \&lt;BR /&gt; PTA-&amp;gt;PCOR |= (0x01 &amp;lt;&amp;lt; 24); /* ETH_PCF_EN = LO */ \&lt;BR /&gt; PTA-&amp;gt;PDDR |= (0x01 &amp;lt;&amp;lt; 24); /* ETH_PCF_EN as output */ \&lt;BR /&gt; PORTA_PCR9 = (0 | PORT_PCR_MUX(PORT_PIN_MUX_CONTROL_PIN_ALT1) | PORT_PCR_PS_MASK | PORT_PCR_PE_MASK); /* ETH_INT */ \&lt;BR /&gt; PTA-&amp;gt;PSOR |= (0x01 &amp;lt;&amp;lt; 9); /* ETH_PWRDOWN= HI */ \&lt;BR /&gt; PTA-&amp;gt;PDDR |= (0x01 &amp;lt;&amp;lt; 9); /* ETH_PWRDOWN as output */ \&lt;BR /&gt; /**/ \&lt;BR /&gt; PORTE-&amp;gt;PCR[26] = (0 | PORT_PCR_MUX(PORT_PIN_MUX_CONTROL_PIN_ALT2)); /* SYS_CLK from 50MHz osc */ \&lt;BR /&gt; /**/ \&lt;BR /&gt; PORTA_PCR8 = (0 | PORT_PCR_MUX(PORT_PIN_MUX_CONTROL_PIN_ALT5) | ETH_PORT_MDC_SRE_MASK); /* ETH_RMII_MDC */ \&lt;BR /&gt; PORTA_PCR7 = (0 | PORT_PCR_MUX(PORT_PIN_MUX_CONTROL_PIN_ALT5) | PORT_PCR_PS_MASK | PORT_PCR_PE_MASK); /* ETH_RMII_MDIO */ \&lt;BR /&gt; PORTA_PCR17 = (0 | PORT_PCR_MUX(PORT_PIN_MUX_CONTROL_PIN_ALT4)); /* ETH_RMII_TXD1 */ \&lt;BR /&gt; PORTA_PCR16 = (0 | PORT_PCR_MUX(PORT_PIN_MUX_CONTROL_PIN_ALT4)); /* ETH_RMII_TXD0 */ \&lt;BR /&gt; PORTA_PCR15 = (0 | PORT_PCR_MUX(PORT_PIN_MUX_CONTROL_PIN_ALT4)); /* ETH_RMII_TXEN */ \&lt;BR /&gt; PORTA_PCR14 = (0 | PORT_PCR_MUX(PORT_PIN_MUX_CONTROL_PIN_ALT4)); /* ETH_RMII_CRS_DV */ \&lt;BR /&gt; PORTA_PCR13 = (0 | PORT_PCR_MUX(PORT_PIN_MUX_CONTROL_PIN_ALT4)); /* ETH_RMII_RXD0 */ \&lt;BR /&gt; PORTA_PCR12 = (0 | PORT_PCR_MUX(PORT_PIN_MUX_CONTROL_PIN_ALT4)); /* ETH_RMII_RXD1 */ \&lt;BR /&gt; PORTA_PCR5 = (0 | PORT_PCR_MUX(PORT_PIN_MUX_CONTROL_PIN_ALT4)); /* ETH_RMII_RXER &amp;nbsp;*/&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Ethernet receives packages like ping and replies to it internally (I can see action on the ETH_TX0, ETH_TX1 &amp;amp; ETH_TXEN and ENET cout's up transmissions while nothing is released to the wire). the PHY is not in isolate mode nor in loopback mode so it isn't that.&lt;/P&gt;&lt;P&gt;The strange thing is that if I print out the registers for pinout mux setup it replies:&lt;/P&gt;&lt;P&gt;SIM_SCGC2....: 0x00000001&lt;BR /&gt;PORTA_PCR24: 0x00000100, ISF:0, IRQC:0, LK:0, MUX:1, DSE:0, ODE:0, PFE:0, SRE:0, PE:0, PS0&lt;BR /&gt;GPIOA_PCOR...: 0x00000000&lt;BR /&gt;GPIOA_PSOR...: 0x00000000&lt;BR /&gt;GPIOA_PDDR...: 0x11000E00&lt;BR /&gt;PORTE_PCR26: 0x00000202, ISF:0, IRQC:0, LK:0, MUX:2, DSE:0, ODE:0, PFE:0, SRE:0, PE:1, PS0&lt;BR /&gt;PORTA_PCR9.: 0x00000503, ISF:0, IRQC:0, LK:0, MUX:5, DSE:0, ODE:0, PFE:0, SRE:0, PE:1, PS1&lt;BR /&gt;PORTA_PCR8.: 0x00000500, ISF:0, IRQC:0, LK:0, MUX:5, DSE:0, ODE:0, PFE:0, SRE:0, PE:0, PS0&lt;BR /&gt;PORTA_PCR7.: 0x00000503, ISF:0, IRQC:0, LK:0, MUX:5, DSE:0, ODE:0, PFE:0, SRE:0, PE:1, PS1&lt;BR /&gt;PORTA_PCR17: 0x00000400, ISF:0, IRQC:0, LK:0, MUX:4, DSE:0, ODE:0, PFE:0, SRE:0, PE:0, PS0&lt;BR /&gt;PORTA_PCR16: 0x00000400, ISF:0, IRQC:0, LK:0, MUX:4, DSE:0, ODE:0, PFE:0, SRE:0, PE:0, PS0&lt;BR /&gt;PORTA_PCR15: 0x00000400, ISF:0, IRQC:0, LK:0, MUX:4, DSE:0, ODE:0, PFE:0, SRE:0, PE:0, PS0&lt;BR /&gt;PORTA_PCR14: 0x00000400, ISF:0, IRQC:0, LK:0, MUX:4, DSE:0, ODE:0, PFE:0, SRE:0, PE:0, PS0&lt;BR /&gt;PORTA_PCR13: 0x00000400, ISF:0, IRQC:0, LK:0, MUX:4, DSE:0, ODE:0, PFE:0, SRE:0, PE:0, PS0&lt;BR /&gt;PORTA_PCR12: 0x00000400, ISF:0, IRQC:0, LK:0, MUX:4, DSE:0, ODE:0, PFE:0, SRE:0, PE:0, PS0&lt;BR /&gt;PORTA_PCR5.: 0x00000603, ISF:0, IRQC:0, LK:0, MUX:6, DSE:0, ODE:0, PFE:0, SRE:0, PE:1, PS1&lt;BR /&gt;PORTA_PCR28.: 0x00000100, ISF:0, IRQC:0, LK:0, MUX:1, DSE:0, ODE:0, PFE:0, SRE:0, PE:0, PS0&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Does anyone out there have an idea of what this could be?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;here is the ENET register setup:&lt;/P&gt;&lt;P&gt;ENET Register Block&lt;BR /&gt;---------------------------------&lt;BR /&gt;ENET_EIR.: 1C000000&lt;BR /&gt;ENET_EIMR: 0E000000&lt;BR /&gt;ENET_RDAR: 01000000&lt;BR /&gt;ENET_TDAR: 00000000&lt;BR /&gt;ENET_ECR.: F0000002 - Ethernet Control Register&lt;BR /&gt;ENET_MMFR: 60E3FFFF&lt;BR /&gt;ENET_MSCR: 00000048 - MII Speed Control Register&lt;BR /&gt;ENET_MIBC: 40000000 - MIB Control Register&lt;BR /&gt;ENET_RCR.: 05F05104 - Receive Control Register&lt;BR /&gt;ENET_TCR.: 00000104 - Transmit Control Register&lt;BR /&gt;ENET_PALR: 00603522 - Physical Address Lower Register&lt;BR /&gt;ENET_PAUR: 41478808 - Physical Address Upper Register&lt;BR /&gt;ENET_OPD.: 00010000 - Opcode/Pause Duration Register&lt;BR /&gt;ENET_IAUR: 00000000 - Descriptor Individual Upper Address Register&lt;BR /&gt;ENET_IALR: 00000400 - Descriptor Individual Lower Address Register&lt;BR /&gt;ENET_GAUR: 00000000 - Descriptor Group Upper Address Register&lt;BR /&gt;ENET_GALR: 00000000 - Descriptor Group Lower Address Register&lt;BR /&gt;ENET_TFWR: 00000100 - Transmit FIFO Watermark Register&lt;BR /&gt;ENET_RDSR: 1FFF0040 - Receive Descriptor Ring Start Register&lt;BR /&gt;ENET_TDSR: 1FFF0000 - Transmit Buffer Descriptor Ring Start Register&lt;BR /&gt;ENET_MRBR: 00000640 - Maximum Receive Buffer Size Register&lt;BR /&gt;ENET_RSFL: 00000000 - Receive FIFO Selection Full Threshold&lt;BR /&gt;ENET_RSEM: 00000000 - Receive FIFO Section Empty Threshold&lt;BR /&gt;ENET_RAEM: 00000004 - Receive FIFO Almost Empty Threshold&lt;BR /&gt;ENET_RAFL: 00000004 - Receive FIFO Almost Full Threshold&lt;BR /&gt;ENET_TSEM: 00000000 - Transmit FIFO Section Empty Threshold&lt;BR /&gt;ENET_TAEM: 0000000C - Transmit FIFO Almost Empty Threshold&lt;BR /&gt;ENET_TAFL: 00000008 - Transmit FIFO Almost Full Threshold&lt;BR /&gt;ENET_TIPG: 0000000C - Transmit Inter-Packet Gap&lt;BR /&gt;ENET_FTRL: 000007FF - Frame Truncation Length&lt;BR /&gt;ENET_TACC: 00000010 - Transmit Accelerator Function Configuration&lt;BR /&gt;ENET_RACC: 00000047 - Receive Accelerator Function Configuration&lt;BR /&gt;---------------------------------&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards,&lt;/P&gt;&lt;P&gt;Mummi&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 19 Dec 2016 18:24:00 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/K66-RMII-pin-MUX-doesn-t-hold/m-p/625911#M37523</guid>
      <dc:creator>gudmundurkristi</dc:creator>
      <dc:date>2016-12-19T18:24:00Z</dc:date>
    </item>
    <item>
      <title>Re: K66 RMII pin MUX doesn't hold</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/K66-RMII-pin-MUX-doesn-t-hold/m-p/625912#M37524</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I do a test with FRDM-K66F board &amp;amp; KDSK V2.0 software, while I don't find your mentioned issue.&lt;/P&gt;&lt;P&gt;I also check the K66 errata record, without any record similar with this issue.&lt;/P&gt;&lt;P&gt;Could you check your software if there exist code modify the PORTA_PCR5 &amp;amp; PORTA_PCR9 registers value after the Ethernet pin initialization?&lt;/P&gt;&lt;P&gt;If possible, you could debug the code and check those register value setting if as expected.&lt;/P&gt;&lt;P&gt;And during the code execution to find where the code change those registers.&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Wish it helps.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Have a great day,&lt;BR /&gt;Ma Hui&lt;BR /&gt;-----------------------------------------------------------------------------------------------------------------------&lt;BR /&gt;Note: If this post answers your question, please click the Correct Answer button. Thank you!&lt;BR /&gt;-----------------------------------------------------------------------------------------------------------------------&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 21 Dec 2016 00:58:01 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/K66-RMII-pin-MUX-doesn-t-hold/m-p/625912#M37524</guid>
      <dc:creator>Hui_Ma</dc:creator>
      <dc:date>2016-12-21T00:58:01Z</dc:date>
    </item>
  </channel>
</rss>

