aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPyun YongHyeon <yongari@FreeBSD.org>2008-02-03 07:48:13 +0000
committerPyun YongHyeon <yongari@FreeBSD.org>2008-02-03 07:48:13 +0000
commitf4c28cc4d66e1d1750a259d9e793d38ad4076fe3 (patch)
tree59f03be61ff04d6af362731832a31d2914a0b2d4
parent630a5bd1ff1623bf32fec6751d8112df3b5331c5 (diff)
Notes
-rw-r--r--sys/dev/msk/if_msk.c37
-rw-r--r--sys/dev/msk/if_mskreg.h1
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];