-/* $OpenBSD: eephy.c,v 1.61 2023/12/05 11:06:05 uwe Exp $ */
+/* $OpenBSD: eephy.c,v 1.62 2023/12/07 09:46:58 uwe Exp $ */
/*
* Principal Author: Parag Patel
* Copyright (c) 2001
PHY_WRITE(sc, E1000_SCR, reg);
- /* 25 MHz TX_CLK should always work. */
- reg = PHY_READ(sc, E1000_ESCR);
- reg |= E1000_ESCR_TX_CLK_25;
- PHY_WRITE(sc, E1000_ESCR, reg);
+ if (sc->mii_model != MII_MODEL_MARVELL_E1512 &&
+ sc->mii_model != MII_MODEL_MARVELL_E1545) {
+ /* 25 MHz TX_CLK should always work. */
+ reg = PHY_READ(sc, E1000_ESCR);
+ reg |= E1000_ESCR_TX_CLK_25;
+ PHY_WRITE(sc, E1000_ESCR, reg);
+ }
/* Configure LEDs if they were left unconfigured. */
if (sc->mii_model == MII_MODEL_MARVELL_E3016 &&
-/* $OpenBSD: eephyreg.h,v 1.9 2022/01/09 05:42:44 jsg Exp $ */
+/* $OpenBSD: eephyreg.h,v 1.10 2023/12/07 09:46:58 uwe Exp $ */
/*
* Principal Author: Parag Patel
* Copyright (c) 2001
#define E1000_ISR_SPEED_CHANGED 0x4000
#define E1000_ISR_AUTO_NEG_ERR 0x8000
+/* page any */
#define E1000_ESCR 0x14 /* extended special control reg */
#define E1000_ESCR_FIBER_LOOPBACK 0x4000
#define E1000_ESCR_DOWN_NO_IDLE 0x8000