summaryrefslogtreecommitdiff
path: root/sys/dev/ic/smc91cxxvar.h
diff options
context:
space:
mode:
Diffstat (limited to 'sys/dev/ic/smc91cxxvar.h')
-rw-r--r--sys/dev/ic/smc91cxxvar.h19
1 files changed, 16 insertions, 3 deletions
diff --git a/sys/dev/ic/smc91cxxvar.h b/sys/dev/ic/smc91cxxvar.h
index 58ae97c2f3c..13294ad5509 100644
--- a/sys/dev/ic/smc91cxxvar.h
+++ b/sys/dev/ic/smc91cxxvar.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: smc91cxxvar.h,v 1.4 2002/03/14 01:26:55 millert Exp $ */
+/* $OpenBSD: smc91cxxvar.h,v 1.5 2006/01/23 14:42:55 martin Exp $ */
/* $NetBSD: smc91cxxvar.h,v 1.4 1997/10/15 05:56:13 explorer Exp $ */
/*-
@@ -49,15 +49,24 @@ struct smc91cxx_softc {
#endif
struct arpcom sc_arpcom; /* ethernet common glue */
+ struct mii_data sc_mii; /* MII/media control */
+ struct timeout sc_mii_timeout; /* MII callout handle */
+
bus_space_tag_t sc_bst; /* bus space */
bus_space_handle_t sc_bsh;
- struct ifmedia sc_media; /* our media info */
-
/* Power management hooks and state. */
int (*sc_enable)(struct smc91cxx_softc *);
void (*sc_disable)(struct smc91cxx_softc *);
int sc_enabled;
+ u_int32_t sc_flags; /* misc. flags*/
+#define SMC_FLAGS_ENABLED 0x0001
+#define SMC_FLAGS_ATTACHED 0x0002 /* attach was successful */
+#define SMC_FLAGS_HAS_MII 0x0004 /* Has MII (FEAST) */
+#define SMC_FLAGS_32BIT_READ 0x0008 /* reads are always 32-bits */
+
+ u_int8_t sc_chipid;
+ u_int8_t sc_internal_phy; /* 91C111 only */
#if NRND > 0
rndsource_element_t rnd_source;
@@ -72,3 +81,7 @@ void smc91cxx_attach(struct smc91cxx_softc *, u_int8_t *);
int smc91cxx_intr(void *);
void smc91cxx_init(struct smc91cxx_softc *);
void smc91cxx_stop(struct smc91cxx_softc *);
+int smc91cxx_enable(struct smc91cxx_softc *);
+void smc91cxx_disable(struct smc91cxx_softc *);
+int smc91cxx_activate(struct device *, enum devact);
+int smc91cxx_detach(struct device *, int);