diff options
| author | Pyun YongHyeon <yongari@FreeBSD.org> | 2008-02-03 07:48:13 +0000 |
|---|---|---|
| committer | Pyun YongHyeon <yongari@FreeBSD.org> | 2008-02-03 07:48:13 +0000 |
| commit | f4c28cc4d66e1d1750a259d9e793d38ad4076fe3 (patch) | |
| tree | 59f03be61ff04d6af362731832a31d2914a0b2d4 | |
| parent | 630a5bd1ff1623bf32fec6751d8112df3b5331c5 (diff) | |
Notes
| -rw-r--r-- | sys/dev/msk/if_msk.c | 37 | ||||
| -rw-r--r-- | sys/dev/msk/if_mskreg.h | 1 |
2 files changed, 16 insertions, 22 deletions
diff --git a/sys/dev/msk/if_msk.c b/sys/dev/msk/if_msk.c index 77006984b88d..b7595ffeb06d 100644 --- a/sys/dev/msk/if_msk.c +++ b/sys/dev/msk/if_msk.c @@ -369,6 +369,9 @@ msk_miibus_readreg(device_t dev, int phy, int reg) { struct msk_if_softc *sc_if; + if (phy != PHY_ADDR_MARV) + return (0); + sc_if = device_get_softc(dev); return (msk_phy_readreg(sc_if, phy, reg)); @@ -407,6 +410,9 @@ msk_miibus_writereg(device_t dev, int phy, int reg, int val) { struct msk_if_softc *sc_if; + if (phy != PHY_ADDR_MARV) + return (0); + sc_if = device_get_softc(dev); return (msk_phy_writereg(sc_if, phy, reg, val)); @@ -518,17 +524,14 @@ msk_link_task(void *arg, int pending) CSR_WRITE_4(sc, MR_ADDR(sc_if->msk_port, GMAC_CTRL), gmac); /* Enable PHY interrupt for FIFO underrun/overflow. */ - if (sc->msk_marvell_phy) - msk_phy_writereg(sc_if, PHY_ADDR_MARV, - PHY_MARV_INT_MASK, PHY_M_IS_FIFO_ERROR); + msk_phy_writereg(sc_if, PHY_ADDR_MARV, + PHY_MARV_INT_MASK, PHY_M_IS_FIFO_ERROR); } else { /* * Link state changed to down. * Disable PHY interrupts. */ - if (sc->msk_marvell_phy) - msk_phy_writereg(sc_if, PHY_ADDR_MARV, - PHY_MARV_INT_MASK, 0); + msk_phy_writereg(sc_if, PHY_ADDR_MARV, PHY_MARV_INT_MASK, 0); /* Disable Rx/Tx MAC. */ gmac = GMAC_READ_2(sc, sc_if->msk_port, GM_GP_CTRL); gmac &= ~(GM_GPCR_RX_ENA | GM_GPCR_TX_ENA); @@ -1505,10 +1508,6 @@ msk_attach(device_t dev) error = ENXIO; goto fail; } - /* Check whether PHY Id is MARVELL. */ - if (msk_phy_readreg(sc_if, PHY_ADDR_MARV, PHY_MARV_ID0) - == PHY_MARV_ID0_VAL) - sc->msk_marvell_phy = 1; fail: if (error != 0) { @@ -3160,15 +3159,12 @@ msk_intr_phy(struct msk_if_softc *sc_if) { uint16_t status; - if (sc_if->msk_softc->msk_marvell_phy) { - msk_phy_readreg(sc_if, PHY_ADDR_MARV, PHY_MARV_INT_STAT); - status = msk_phy_readreg(sc_if, PHY_ADDR_MARV, - PHY_MARV_INT_STAT); - /* Handle FIFO Underrun/Overflow? */ - if ((status & PHY_M_IS_FIFO_ERROR)) - device_printf(sc_if->msk_if_dev, - "PHY FIFO underrun/overflow.\n"); - } + msk_phy_readreg(sc_if, PHY_ADDR_MARV, PHY_MARV_INT_STAT); + status = msk_phy_readreg(sc_if, PHY_ADDR_MARV, PHY_MARV_INT_STAT); + /* Handle FIFO Underrun/Overflow? */ + if ((status & PHY_M_IS_FIFO_ERROR)) + device_printf(sc_if->msk_if_dev, + "PHY FIFO underrun/overflow.\n"); } static void @@ -3976,8 +3972,7 @@ msk_stop(struct msk_if_softc *sc_if) /* Disable all GMAC interrupt. */ CSR_WRITE_1(sc, MR_ADDR(sc_if->msk_port, GMAC_IRQ_MSK), 0); /* Disable PHY interrupt. */ - if (sc->msk_marvell_phy) - msk_phy_writereg(sc_if, PHY_ADDR_MARV, PHY_MARV_INT_MASK, 0); + msk_phy_writereg(sc_if, PHY_ADDR_MARV, PHY_MARV_INT_MASK, 0); /* Disable the RAM Interface Arbiter. */ CSR_WRITE_1(sc, MR_ADDR(sc_if->msk_port, TXA_CTRL), TXA_DIS_ARB); diff --git a/sys/dev/msk/if_mskreg.h b/sys/dev/msk/if_mskreg.h index 256d148baed4..55e9bc6aff10 100644 --- a/sys/dev/msk/if_mskreg.h +++ b/sys/dev/msk/if_mskreg.h @@ -2307,7 +2307,6 @@ struct msk_softc { uint32_t msk_intrhwemask; int msk_suspended; int msk_clock; - int msk_marvell_phy; int msk_msi; struct msk_if_softc *msk_if[2]; device_t msk_devs[2]; |
