Thanks Jeff :)<br><div></div>I did notice which one is deprecated before.<br><br><br>bill<br><br><br>At 2011-07-15 01:08:14,"Jeff&nbsp;Haran"&nbsp;&lt;jharan@bytemobile.com&gt; wrote:<br> <blockquote id="isReplyContent" style="padding-left: 1ex; margin: 0px 0px 0px 0.8ex; border-left: 1px solid rgb(204, 204, 204);"><div class="WordSection1"><p class="MsoNormal"><span style="font-size: 11pt; font-family: &quot;Calibri&quot;,&quot;sans-serif&quot;; color: rgb(31, 73, 125);"><o:p>&nbsp;</o:p></span></p><p class="MsoNormal"><span style="font-size: 11pt; font-family: &quot;Calibri&quot;,&quot;sans-serif&quot;; color: rgb(31, 73, 125);"><o:p>&nbsp;</o:p></span></p><div style="border-width: medium medium medium 1.5pt; border-style: none none none solid; border-color: -moz-use-text-color -moz-use-text-color -moz-use-text-color blue; padding: 0in 0in 0in 4pt;"><div><div style="border-right: medium none; border-width: 1pt medium medium; border-style: solid none none; border-color: rgb(181, 196, 223) -moz-use-text-color -moz-use-text-color; padding: 3pt 0in 0in;"><p class="MsoNormal"><b><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;;">From:</span></b><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;;"> <a href="mailto:kernelnewbies-bounces@kernelnewbies.org">kernelnewbies-bounces@kernelnewbies.org</a> [mailto:<a href="mailto:kernelnewbies-bounces@kernelnewbies.org">kernelnewbies-bounces@kernelnewbies.org</a>] <b>On Behalf Of </b>bill<br><b>Sent:</b> Thursday, July 14, 2011 2:09 AM<br><b>To:</b> kernelnewbies<br><b>Subject:</b> Puzzled about MDIO issue<o:p></o:p></span></p></div></div><p class="MsoNormal"><o:p>&nbsp;</o:p></p><p class="MsoNormal" style="margin-bottom: 12pt;">Hi, All<br><br>I've been reading MDIO code, tiny though but it still puzzled me for its usage.<br>MDIO is an hardware interface for the MAC to set/get PHY configuration/status.<br><br>Linux manipulates MDIO through:<br>struct net_device -&gt;do_ioctl -&gt; mdio_mii_ioctl -&gt; mdio_read/mdio_write<br><br>Question:<br>A: Turn an NIC from cold state to running state, is this ioctl must be used to configure the PHY?<br>&nbsp;&nbsp;&nbsp;&nbsp; If so , how?<br><br>B: what's the usage of this net device ioctl?<br>&nbsp;&nbsp;&nbsp; I found an user-space package&nbsp; mii-tool create a socket first and then use the socket handle for ioctl<br>&nbsp;&nbsp;&nbsp; to query lots of PHY information.<br>&nbsp;&nbsp;&nbsp; Is there any other typical usage of&nbsp; it?<br><br><br>thanks<br>bill<br><br><span style="color: rgb(31, 73, 125);">mii-tool and the ioctls that go with it are long deprecated. These days they can be useful for debugging, but that’s about it.</span><o:p></o:p></p><p class="MsoNormal" style="margin-bottom: 12pt;"><span style="font-size: 11pt; font-family: &quot;Calibri&quot;,&quot;sans-serif&quot;; color: rgb(31, 73, 125);">Modern Linux Ethernet drivers implement support for the ETHTOOL ioctls which are generated using the ethtool application. Usage of mii-tool and its ioctls with modern drivers is likely to cause you problems as mii-tool can put the PHY into a state that is out of sync with how the driver thinks it should be configured.<o:p></o:p></span></p><p class="MsoNormal" style="margin-bottom: 12pt;"><span style="font-size: 11pt; font-family: &quot;Calibri&quot;,&quot;sans-serif&quot;; color: rgb(31, 73, 125);">Jeff Haran<o:p></o:p></span></p><p class="MsoNormal" style="margin-bottom: 12pt;"><span style="font-size: 11pt; font-family: &quot;Calibri&quot;,&quot;sans-serif&quot;; color: rgb(31, 73, 125);"><o:p>&nbsp;</o:p></span></p></div></div><font face="monospace"></font></blockquote><br><br><span title="neteasefooter"><span id="netease_mail_footer"></span></span>