>Now the question was: Who is turning off the MDIO controller? After a >bit of debugging I found out that the reset of the MDIO controller >seems to be caused by these lines in the davinci_emac driver in >emac_hw_enable() in drivers/net/ethernet/ti/davinci_emac.c: > >emac_write(EMAC_SOFTRESET, 1); >while (emac_read(EMAC_SOFTRESET)) > cpu_relax(); > >According to the AM1808 Technical Reference Manual (sections 18.2.14.1 >and 18.3.3.34 in [1]), writing a 1 to the EMAC_SOFTRESET register >resets the EMAC module, but not the MDIO module. However, when I >comment out the code above, the MDIO control register is not affected >and the warning 'resetting idled controller' disappears. > >Is this an error in the documentation? Or in hardware? Or did I miss >something here? I already asked this questions in TI's E2E forum [2] >but did not get an answer yet. I would like to ask all the TI people >out there to help me getting an answer to this question. Thanks you!
Christian, We are looking into this right now. We believe that the mac reset should not impact MDIO reset but clearly you are seeing that behavior and we need to investigate. > >Anyway, I think this should be fixed since it's bad when a driver >(davinci_emac) resets another driver's (davinci_mdio's) hardware. > Once we find the root cause of this we would be able to fix this. right now the EMAC reset code is not incorrect - just need to find why it shows the wrong behavior with MDIO and if this is seen only on AM1808 - will update you as soon as we find out. Regards, Anant _______________________________________________ Davinci-linux-open-source mailing list Davinci-linux-open-source@linux.davincidsp.com http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source