Hi Todd,
I finally found a solution to this problem and I had tested that is working to my new control card. Below is my change to file TMDXDOCKH52C1.c. Please feel free to give it a try.
Regards,
Bin
Void TMDXDOCKH52C1_initEMAC(Void)
{
/*
* Set up the pins that are used for Ethernet
* MII_TXD3
*/
GPIODirModeSet(GPIO_PORTC_BASE, GPIO_PIN_4, GPIO_DIR_MODE_HW);
GPIOPadConfigSet(GPIO_PORTC_BASE, GPIO_PIN_4, GPIO_PIN_TYPE_STD);
//HWREG(GPIO_PORTC_BASE + GPIO_O_PCTL) &= 0xFFF0FFFF;
//HWREG(GPIO_PORTC_BASE + GPIO_O_PCTL) |= 0x00030000;
GPIOPinConfigure(GPIO_PC4_MIITXD3);
/* MII_MDIO */
GPIODirModeSet(GPIO_PORTE_BASE, GPIO_PIN_6, GPIO_DIR_MODE_HW);
GPIOPadConfigSet(GPIO_PORTE_BASE, GPIO_PIN_6, GPIO_PIN_TYPE_STD);
GPIOPinConfigure(GPIO_PE6_MIIMDIO);
/*HWREG(GPIO_PORTE_BASE + GPIO_O_APSEL)|= 0x00000040;
HWREG(GPIO_PORTE_BASE + GPIO_O_PCTL) &= 0xF0FFFFFF;
HWREG(GPIO_PORTE_BASE + GPIO_O_PCTL) |= 0x0C000000;*/
/* MII_RXD3 */
GPIODirModeSet(GPIO_PORTF_BASE, GPIO_PIN_5, GPIO_DIR_MODE_HW);
GPIOPadConfigSet(GPIO_PORTF_BASE, GPIO_PIN_5, GPIO_PIN_TYPE_STD);
GPIOPinConfigure(GPIO_PF5_MIIRXD3);
/*HWREG(GPIO_PORTF_BASE + GPIO_O_PCTL) &= 0xFF0FFFFF;
HWREG(GPIO_PORTF_BASE + GPIO_O_PCTL) |= 0x00300000;*/
/* MII_TXER , MII_RXDV , MII_RXD1 , MII_RXD2 */
GPIODirModeSet(GPIO_PORTG_BASE, GPIO_PIN_7|GPIO_PIN_3|GPIO_PIN_1|GPIO_PIN_0,
GPIO_DIR_MODE_HW);
GPIOPadConfigSet(GPIO_PORTG_BASE, GPIO_PIN_7|GPIO_PIN_3|GPIO_PIN_1|
GPIO_PIN_0,
GPIO_PIN_TYPE_STD);
GPIOPinConfigure(GPIO_PG0_MIIRXD2);
GPIOPinConfigure(GPIO_PG1_MIIRXD1);
GPIOPinConfigure(GPIO_PG3_MIIRXDV);
GPIOPinConfigure(GPIO_PG7_MIITXER);
/*HWREG(GPIO_PORTG_BASE + GPIO_O_APSEL)|= 0x0000000B;
HWREG(GPIO_PORTG_BASE + GPIO_O_PCTL) &= 0x0FFF0F00;
HWREG(GPIO_PORTG_BASE + GPIO_O_PCTL) |= 0x3000C0CC;*/
/* MII_TXCK , MII_TXEN , MII_TXD0 , MII_TXD1 , MII_TXD2 , MII_RXD0 */
GPIODirModeSet(
GPIO_PORTH_BASE, GPIO_PIN_7|GPIO_PIN_6|GPIO_PIN_5|GPIO_PIN_4|
GPIO_PIN_3|
GPIO_PIN_1, GPIO_DIR_MODE_HW);
GPIOPadConfigSet(
GPIO_PORTH_BASE, GPIO_PIN_7|GPIO_PIN_6|GPIO_PIN_5|GPIO_PIN_4|
GPIO_PIN_3|
GPIO_PIN_1, GPIO_PIN_TYPE_STD);
GPIOPinConfigure(GPIO_PH1_MIIRXD0);
GPIOPinConfigure(GPIO_PH3_MIITXD2);
GPIOPinConfigure(GPIO_PH4_MIITXD1);
GPIOPinConfigure(GPIO_PH5_MIITXD0);
GPIOPinConfigure(GPIO_PH6_MIITXEN);
GPIOPinConfigure(GPIO_PH7_MIITXCK);
/*HWREG(GPIO_PORTH_BASE + GPIO_O_APSEL)|= 0x000000C2;
HWREG(GPIO_PORTH_BASE + GPIO_O_PCTL) &= 0x00000F0F;
HWREG(GPIO_PORTH_BASE + GPIO_O_PCTL) |= 0xCC9990C0;*/
/*
* MII_PHYRSTn , MII_PHYINTRn , MII_CRS , MII_COL , MII_MDC , MII_RXCK ,
* MII_RXER
*/
GPIODirModeSet(
GPIO_PORTJ_BASE, GPIO_PIN_7|GPIO_PIN_6|GPIO_PIN_5|GPIO_PIN_4|
GPIO_PIN_3|
GPIO_PIN_2|GPIO_PIN_0, GPIO_DIR_MODE_HW);
GPIOPadConfigSet(
GPIO_PORTJ_BASE, GPIO_PIN_7|GPIO_PIN_6|GPIO_PIN_5|GPIO_PIN_4|
GPIO_PIN_3|
GPIO_PIN_2|GPIO_PIN_0, GPIO_PIN_TYPE_STD);
GPIOPinConfigure(GPIO_PJ0_MIIRXER);
GPIOPinConfigure(GPIO_PJ2_MIIRXCK);
GPIOPinConfigure(GPIO_PJ3_MIIMDC);
GPIOPinConfigure(GPIO_PJ4_MIICOL);
GPIOPinConfigure(GPIO_PJ5_MIICRS);
GPIOPinConfigure(GPIO_PJ6_MIIPHYINTRn);
GPIOPinConfigure(GPIO_PJ7_MIIPHYRSTn);
/*HWREG(GPIO_PORTJ_BASE + GPIO_O_APSEL)|= 0x000000FC;
HWREG(GPIO_PORTJ_BASE + GPIO_O_PCTL) &= 0x000000F0;
HWREG(GPIO_PORTJ_BASE + GPIO_O_PCTL) |= 0xCCCCCC03;*/
/* Enable and Reset the Ethernet Controller. */
SysCtlPeripheralEnable(SYSCTL_PERIPH_ETH);
SysCtlPeripheralReset(SYSCTL_PERIPH_ETH);
if (macAddress[0] == 0xff && macAddress[1] == 0xff &&
macAddress[2] == 0xff && macAddress[3] == 0xff &&
macAddress[4] == 0xff && macAddress[5] == 0xff) {
System_abort("Change the macAddress variable to match your board's MAC sticker");
}
/* Once EMAC_init is called, EMAC_config cannot be changed */
EMAC_init();
}