diff options
Diffstat (limited to 'sys/dev/ic/smc91cxxvar.h')
-rw-r--r-- | sys/dev/ic/smc91cxxvar.h | 19 |
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); |