Problems with MII mode operation on 440GP ethernet

David Adair dadair at ariodata.com
Thu Nov 11 09:41:47 EST 2004


Thanks for the advice Matt. 

> I have a custom board with the same configuration (on 2.6). The
> driver in that tree works in this configuration. FWIW, the port
> also uses ocp calls to remove the three unused interfaces. In

This sounds reasonable to me -- OCP stays cpu generic but exact
use is refined by the board port.

Can you give me any hints were to find the "ocp calls?"

> > (I also tweaked things so my version of mii-tool would work
> > does anyone else have trouble with the wrong variable size?)
> 
> I haven't tried 2.4 in a long time...others would know. A lot
> of fixes/features have gone into the 2.6 driver that haven't
> been backported to 2.4.

I'm severely 2.6 impaired, but looking at 2.6.9 there is still a mismatch
that does not exist in other drivers such as eepro100:

drivers/net/ibm_emac/ibm_emac_core.c:

static int emac_ioctl(struct net_device *dev, struct ifreq *rq, int cmd)
{
	struct ocp_enet_private *fep = dev->priv;
	uint *data = (uint *) & rq->ifr_ifru;

	switch (cmd) {
	case SIOCGMIIPHY:
		data[0] = fep->mii_phy_addr;

And

include/linux/mii.h:

/* This structure is used in all SIOCxMIIxxx ioctl calls */
struct mii_ioctl_data {
	u16		phy_id;
	u16		reg_num;
	u16		val_in;
	u16		val_out;
};




More information about the Linuxppc-embedded mailing list