summaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
Diffstat (limited to 'sys')
-rw-r--r--sys/dev/pci/if_cas.c9
-rw-r--r--sys/dev/pci/if_casreg.h3
2 files changed, 5 insertions, 7 deletions
diff --git a/sys/dev/pci/if_cas.c b/sys/dev/pci/if_cas.c
index 292edd72648..522eb6193ab 100644
--- a/sys/dev/pci/if_cas.c
+++ b/sys/dev/pci/if_cas.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: if_cas.c,v 1.10 2007/11/26 15:36:22 kettenis Exp $ */
+/* $OpenBSD: if_cas.c,v 1.11 2007/11/26 15:55:59 kettenis Exp $ */
/*
*
@@ -523,10 +523,6 @@ cas_config(struct cas_softc *sc)
CAS_MII_DATAPATH_MODE, CAS_MII_DATAPATH_SERDES);
bus_space_write_4(sc->sc_memt, sc->sc_memh,
- CAS_MII_SLINK_CONTROL,
- CAS_MII_SLINK_LOOPBACK|CAS_MII_SLINK_EN_SYNC_D);
-
- bus_space_write_4(sc->sc_memt, sc->sc_memh,
CAS_MII_CONFIG, CAS_MII_CONFIG_ENABLE);
mii->mii_readreg = cas_pcs_readreg;
@@ -672,7 +668,8 @@ cas_reset(struct cas_softc *sc)
cas_reset_tx(sc);
/* Do a full reset */
- bus_space_write_4(t, h, CAS_RESET, CAS_RESET_RX|CAS_RESET_TX);
+ bus_space_write_4(t, h, CAS_RESET,
+ CAS_RESET_RX | CAS_RESET_TX | CAS_RESET_BLOCK_PCS);
if (!cas_bitwait(sc, h, CAS_RESET, CAS_RESET_RX | CAS_RESET_TX, 0))
printf("%s: cannot reset device\n", sc->sc_dev.dv_xname);
splx(s);
diff --git a/sys/dev/pci/if_casreg.h b/sys/dev/pci/if_casreg.h
index 929112045bf..16e6fc0462b 100644
--- a/sys/dev/pci/if_casreg.h
+++ b/sys/dev/pci/if_casreg.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: if_casreg.h,v 1.7 2007/11/26 15:24:35 kettenis Exp $ */
+/* $OpenBSD: if_casreg.h,v 1.8 2007/11/26 15:55:59 kettenis Exp $ */
/*
*
@@ -113,6 +113,7 @@
#define CAS_RESET_TX 0x000000001 /* Reset TX half */
#define CAS_RESET_RX 0x000000002 /* Reset RX half */
#define CAS_RESET_RSTOUT 0x000000004 /* Force PCI RSTOUT# */
+#define CAS_RESET_BLOCK_PCS 0x00000008 /* Block PCS reset */
/* TX DMA registers */
#define CAS_TX_CONFIG 0x2004