Hi Mike, [...] > The hang is in wait_for_user_access() in the davinci_mdio_read() call. Looks like > the state machine got put back into IDLE somewhere between the MDIO probe and the > EMAC probe. Seems like there should be some sort of time-out and error message > in the wait_for_user_access() method.... (maybe even a check for IDLE??) > > If I add a patch to check the state machine for IDLE and then re-enable it in the > davinci_mdio_read() call, it is able to press on and come up. I don't see any calls > to the davinci_mdio_suspend() call, so I am wondering if the EMAC probe routine, > particularly the application of the SOFTRESET, is causing the MDIO to drop back to > IDLE / disabled. > > I can post the patch if you like, but it is a bit of a hack... An EMAC soft-reset clobbering the MDIO controller state is a possibility. I will poll TI designers to see if this could be the case. In any case, a couple of unanswered questions remain: 1. Why don't other davinci devices display similar behavior? 2. If the answer to #1 above is that the timing window is pretty slim (i.e., only if an MDIO read/write is in progress during EMAC soft-reset), why do we hit this situation consistently on mityomap? I have put together a quick patch (tested dm365). See attached. Regards Cyril.