]> err.no Git - linux-2.6/commitdiff
[PATCH] enp2611: disable/enable SERDES carrier on interface down/up
authorLennert Buytenhek <buytenh@wantstofly.org>
Wed, 23 Nov 2005 11:49:59 +0000 (12:49 +0100)
committerJeff Garzik <jgarzik@pobox.com>
Thu, 1 Dec 2005 07:25:27 +0000 (02:25 -0500)
Disable/enable the SERDES carrier when an interface is administratively
downed/upped.

Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
drivers/net/ixp2000/enp2611.c

index 2542e3bacfb9e8838c59744f117fe63e8d5a6887..d82651a97bae95a6879dc0f22a5d02f8db9e2705 100644 (file)
@@ -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);
        }