[PATCH] sis190: unmask the link change events
authorFrancois Romieu <romieu@fr.zoreil.com>
Fri, 2 Sep 2005 22:54:25 +0000 (00:54 +0200)
committerJeff Garzik <jgarzik@pobox.com>
Mon, 5 Sep 2005 22:06:52 +0000 (18:06 -0400)
link changes reporting does not work when the driver masks its irq event

Signed-off-by: Arnaud Patard <apatard@mandriva.com>
Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
drivers/net/sis190.c

index bf3440aa6c248005dace01a7855a1aaabae1da65..5f1d0ad549693af9e253ad3f8d44216782992361 100644 (file)
@@ -360,7 +360,7 @@ MODULE_VERSION(DRV_VERSION);
 MODULE_LICENSE("GPL");
 
 static const u32 sis190_intr_mask =
-       RxQEmpty | RxQInt | TxQ1Int | TxQ0Int | RxHalt | TxHalt;
+       RxQEmpty | RxQInt | TxQ1Int | TxQ0Int | RxHalt | TxHalt | LinkChange;
 
 /*
  * Maximum number of multicast addresses to filter (vs. Rx-all-multicast).
@@ -923,6 +923,7 @@ static void sis190_phy_task(void * data)
                     BMSR_ANEGCOMPLETE)) {
                net_link(tp, KERN_WARNING "%s: PHY reset until link up.\n",
                         dev->name);
+               netif_carrier_off(dev);
                mdio_write(ioaddr, phy_id, MII_BMCR, val | BMCR_RESET);
                mod_timer(&tp->timer, jiffies + SIS190_PHY_TIMEOUT);
        } else {