mirror of
https://git.FreeBSD.org/src.git
synced 2025-01-25 16:13:17 +00:00
- 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.
This commit is contained in:
parent
4304e142c2
commit
4d1f3470e3
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=61317
@ -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;
|
||||
|
@ -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;
|
||||
|
Loading…
Reference in New Issue
Block a user