From: Lennert Buytenhek Date: Wed, 23 Nov 2005 11:49:59 +0000 (+0100) Subject: [PATCH] enp2611: disable/enable SERDES carrier on interface down/up X-Git-Tag: v2.6.16.28-rc1~1833^2~22^2~7^2~53 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=cffbfcaf00c4a36592fabd54ae9f960b552322b6;p=karo-tx-linux.git [PATCH] enp2611: disable/enable SERDES carrier on interface down/up Disable/enable the SERDES carrier when an interface is administratively downed/upped. Signed-off-by: Lennert Buytenhek Signed-off-by: Jeff Garzik --- diff --git a/drivers/net/ixp2000/enp2611.c b/drivers/net/ixp2000/enp2611.c index 2542e3bacfb9..d82651a97bae 100644 --- a/drivers/net/ixp2000/enp2611.c +++ b/drivers/net/ixp2000/enp2611.c @@ -175,10 +175,15 @@ static void enp2611_set_port_admin_status(int port, int up) { if (up) { caleb_enable_rx(port); + + pm3386_set_carrier(port, 1); pm3386_enable_rx(port); } else { caleb_disable_tx(port); pm3386_disable_tx(port); + /* @@@ Flush out pending packets. */ + pm3386_set_carrier(port, 0); + pm3386_disable_rx(port); caleb_disable_rx(port); }