netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* phy_mii_ioctl - phydev->advertising ethtool.h vs. mii.h
@ 2007-08-06  8:45 Domen Puncer
  0 siblings, 0 replies; only message in thread
From: Domen Puncer @ 2007-08-06  8:45 UTC (permalink / raw)
  To: netdev; +Cc: macro

Hi!

I've noticed mii-tool doesn't work right for a driver I'm just
developing (it uses generic phy layer).
Driver's ioctl is wired directly to phy_mii_ioctl().

"mii-tool -A something" shows the problem is in
phy_mii_ioctl -> SIOCSMIIREG:
392                         case MII_ADVERTISE:
393                                 phydev->advertising = val;
394                                 break;  

phydev->advertising value should be combined with ones from
ethtool.h (at least in other usages it is):
	437 #define ADVERTISED_10baseT_Half         (1 << 0)
	438 #define ADVERTISED_10baseT_Full         (1 << 1)
	439 #define ADVERTISED_100baseT_Half        (1 << 2)
	440 #define ADVERTISED_100baseT_Full        (1 << 3)

but mii-tool sends a mask with values from mii.h:
	 70 #define ADVERTISE_10HALF        0x0020  /* Try for 10mbps half-duplex  */
	 71 #define ADVERTISE_1000XFULL     0x0020  /* Try for 1000BASE-X full-duplex */
	 72 #define ADVERTISE_10FULL        0x0040  /* Try for 10mbps full-duplex  */
	 73 #define ADVERTISE_1000XHALF     0x0040  /* Try for 1000BASE-X half-duplex */
	 74 #define ADVERTISE_100HALF       0x0080  /* Try for 100mbps half-duplex */
	...

I'm I right that this is a bug?
Comments, suggestions how to fix it?


	Domen

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2007-08-06  8:45 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-08-06  8:45 phy_mii_ioctl - phydev->advertising ethtool.h vs. mii.h Domen Puncer

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).