forcedeth: use unicast receive mode for WoL

I happened to notice that a system with an NVidia NIC using the
forcedeth driver won't wake-on-LAN if the interface was in promiscuous
mode when you power off.  By experiment, it looks like
the hardware needs to have NvRegPacketFilterFlags set to
NVREG_PFF_ALWAYS|NVREG_PFF_MYADDR (i.e., receive unicast packets to my
address) in order for WoL to work.

Jeff Garzik writes: "NVIDIA says the patch looks OK."  I didn't venture
to insert a signed-off-by line with his name on it, though.

Signed-off-by: Tim Mann <mann@vmware.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
This commit is contained in:
Tim Mann 2007-06-14 13:16:38 -07:00 committed by Jeff Garzik
parent d46146274b
commit 2cc49a5ca1
1 changed files with 3 additions and 1 deletions

View File

@ -4825,8 +4825,10 @@ static int nv_close(struct net_device *dev)
drain_ring(dev);
if (np->wolenabled)
if (np->wolenabled) {
writel(NVREG_PFF_ALWAYS|NVREG_PFF_MYADDR, base + NvRegPacketFilterFlags);
nv_start_rx(dev);
}
/* FIXME: power down nic */