Hi, > > Looking at the situation, it seems like I would need to > enable/configure the interrupts for the PHYs. and when a change of > duplex is detected cause a reset of the MAC. Has anyone done anything > like this before. Looking through the ethernet drivers and phy drivers > I do not see anyone doing this (I admit not all). >
This looks like the only place to detect if the connection parameters have changed (link, duplex, speed). > Does my idea seem sound, or am I off in the woods somewhere. I know > about this duplex issue from another design. Where we had a commercial > rtos, that I found out they did not do this and caused a lot of issues, > I thought the device driver should of handled it, but they said it was > up to the application to control the bit. So I do want to repeat the > same issue. I have some code so show that, but it might not fit your device. The idea is to stop and start the ethernet device in the PHY's DSR. In the start function, if the ethernet is not already started, you can renegotiate the connection parameters. The code is at: http://www.ecosforge.net/ecosforge/trunk/ecos_mpc8313/packages/devs/eth/powerpc/quicc2pro/current/src/tsec.c search for: tsec_eth_start phy_dsr phyAutoNegociate Best regards, Edgar