From 0b1df3a8a21b6cc1b04d640139712db067092dde Mon Sep 17 00:00:00 2001 From: wpaul Date: Tue, 6 Jun 2000 02:56:37 +0000 Subject: - Call mii_pollstat() after we bring up the link on a 1000baseTX card after autoneg so we make sure to set the link state and duplex mode correctly. - Make sure to set the 'ignore pause frames' bit on the XMAC. - Small linewrap fix. --- sys/pci/if_sk.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'sys/pci/if_sk.c') diff --git a/sys/pci/if_sk.c b/sys/pci/if_sk.c index 09907f8..3504af4 100644 --- a/sys/pci/if_sk.c +++ b/sys/pci/if_sk.c @@ -1782,7 +1782,8 @@ static void sk_intr_bcom(sc_if) if (!(lstat & BRGPHY_AUXSTS_LINK) && sc_if->sk_link) { mii_mediachg(mii); /* Turn off the link LED. */ - SK_IF_WRITE_1(sc_if, 0, SK_LINKLED1_CTL, SK_LINKLED_OFF); + SK_IF_WRITE_1(sc_if, 0, + SK_LINKLED1_CTL, SK_LINKLED_OFF); sc_if->sk_link = 0; } else if (status & BRGPHY_ISR_LNK_CHG) { sk_miibus_writereg(sc_if->sk_dev, SK_PHYADDR_BCOM, @@ -1793,6 +1794,7 @@ static void sk_intr_bcom(sc_if) SK_IF_WRITE_1(sc_if, 0, SK_LINKLED1_CTL, SK_LINKLED_ON|SK_LINKLED_LINKSYNC_OFF| SK_LINKLED_BLINK_OFF); + mii_pollstat(mii); } else { mii_tick(mii); sc_if->sk_tick_ch = timeout(sk_tick, sc_if, hz); @@ -2184,6 +2186,7 @@ static void sk_init(xsc) SK_IF_WRITE_4(sc_if, 0, SK_RXQ1_BMU_CSR, SK_RXBMU_RX_START); /* Enable XMACs TX and RX state machines */ + SK_XM_CLRBIT_2(sc_if, XM_MMUCMD, XM_MMUCMD_IGNPAUSE); SK_XM_SETBIT_2(sc_if, XM_MMUCMD, XM_MMUCMD_TX_ENB|XM_MMUCMD_RX_ENB); ifp->if_flags |= IFF_RUNNING; -- cgit v1.1