diff options
author | imp <imp@FreeBSD.org> | 2001-03-03 08:31:37 +0000 |
---|---|---|
committer | imp <imp@FreeBSD.org> | 2001-03-03 08:31:37 +0000 |
commit | c2257f6c8a69b4a7cae98128bd89f28f3893f3c5 (patch) | |
tree | 6a6e8077b17a02e0d83e4b1fad4660dd6562ccad /sys/dev/ed/if_edvar.h | |
parent | 5f89669270bed456c02457eab0709fc74466f733 (diff) | |
download | FreeBSD-src-c2257f6c8a69b4a7cae98128bd89f28f3893f3c5.zip FreeBSD-src-c2257f6c8a69b4a7cae98128bd89f28f3893f3c5.tar.gz |
Add support for Dlink DL10022 to the ed driver. This is a mii part
bolted to a ne-2000 chip. This is necessary for the NetGear FA-410TX
and other cards.
This also requires you add mii to your kernel if you have an ed driver
configured.
This code will result in a couple of timeout messages for ed on the
impacted cards. Additional work will be needed, but this does work
right now, and many people need these cards.
Submitted by: Ian Dowse <iedowse@maths.tcd.ie>
Diffstat (limited to 'sys/dev/ed/if_edvar.h')
-rw-r--r-- | sys/dev/ed/if_edvar.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/sys/dev/ed/if_edvar.h b/sys/dev/ed/if_edvar.h index d4e896f..8c58b64 100644 --- a/sys/dev/ed/if_edvar.h +++ b/sys/dev/ed/if_edvar.h @@ -49,6 +49,10 @@ struct ed_softc { int irq_rid; /* resource id for irq */ struct resource* irq_res; /* resource for irq */ void* irq_handle; /* handle for irq handler */ + device_t miibus; /* MII bus for cards with MII. */ + void (*mii_writebits)__P((struct ed_softc *, u_int, int)); + u_int (*mii_readbits)__P((struct ed_softc *, int)); + struct callout_handle tick_ch; /* Callout handle for ed_tick */ int nic_offset; /* NIC (DS8390) I/O bus address offset */ int asic_offset; /* ASIC I/O bus address offset */ @@ -205,6 +209,11 @@ void ed_pio_readmem __P((struct ed_softc *, int, unsigned char *, unsigned short)); void ed_pio_writemem __P((struct ed_softc *, char *, unsigned short, unsigned short)); +int ed_miibus_readreg __P((device_t, int, int)); +void ed_miibus_writereg __P((device_t, int, int, int)); +int ed_ifmedia_upd __P((struct ifnet *)); +void ed_ifmedia_sts __P((struct ifnet *, struct ifmediareq *)); +void ed_child_detached __P((device_t, device_t)); driver_intr_t edintr; |