Re: [PATCH 3/4] atl1: Main C file for Attansic L1 driver

From: Jeff Garzik
Date: Mon Nov 20 2006 - 16:37:34 EST


Stephen Hemminger wrote:
On Mon, 20 Nov 2006 14:35:10 -0500
Jeff Garzik <jeff@xxxxxxxxxx> wrote:

Stephen Hemminger wrote:
Using common MII code is good, but one problem with the existing MII code is that
it doesn't work when device is down. This makes it impossible to set speed/duplex
before device comes up.

That's not true at all. drivers/net/mii.c uses caller-provided locking in all cases, and there is nothing that prevents the common code from being called when the interface is down.

You are probably thinking about all the netif_running() checks found in the drivers, particularly in the ->begin() hook.

Jeff



Yeah it is a driver specific thing. All users of mii seem to block changes so
I thought it was in base code.

Yeah. As a bit of history, a lot of drivers would power down the phy when the interface was down, and so MII would need to be inaccessible. But that's really a driver policy thing. If the driver provides a "don't power down phy, when interface is downed" knob, maybe it would want to support MII operations when !netif_running().

Jeff



-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/