Felipe W Damasio wrote:
+ int advertise, lpa, media, duplex;
Shouldn't advertise and lpa be either "unsigned short" or u16?
No, they don't need to be.
+ lpa = mii->mdio_read(mii->dev, mii->phy_id, MII_LPA);
+
+ /* figure out media and duplex from advertise and LPA values */
+ media = mii_nway_result(lpa & advertise);
^^^^^^^^^^^^^^^^^^^^^^^
mii_nway_result returns a "unsigned int", so media also doesn't look
good.
mii_nway_result _really_ returns a small bitmapped value, so it doesn't
matter.
+ duplex = (media & (ADVERTISE_100FULL | ADVERTISE_10FULL)) ? 1 : 0;
Or we could do
duplex = (media & ADVERTISE_FULL) ? 1 : 0;
True. I forgot about that constant...
Jeff
|