diff options
| author | drochner <drochner@NetBSD.org> | 1998-04-16 17:51:46 +0000 |
|---|---|---|
| committer | drochner <drochner@NetBSD.org> | 1998-04-16 17:51:46 +0000 |
| commit | 02157092d4e97fa305a3e6ac3ccbc4afc53ac545 (patch) | |
| tree | 94c2f5d5024178461a2a13cce3ad04ed535da645 /sys/dev | |
| parent | 10860a27c66abcfb9c24cef8c4d4f94f84818a68 (diff) | |
Make the ISA LANCE drivers work without BROKEN_INDIRECT_CONFIG.
DEPCA is now split out into a separate driver.
Because there can be only one attachment of a device to a bus, for
each card type a separate pseudo-bus was introduced which attaches to "isa"
and where "le" attaches to.
Diffstat (limited to 'sys/dev')
| -rw-r--r-- | sys/dev/isa/files.isa | 15 | ||||
| -rw-r--r-- | sys/dev/isa/if_le_isa.c | 530 | ||||
| -rw-r--r-- | sys/dev/isa/if_levar.h | 22 |
3 files changed, 169 insertions, 398 deletions
diff --git a/sys/dev/isa/files.isa b/sys/dev/isa/files.isa index 78030da62ab..a3f4736e4ff 100644 --- a/sys/dev/isa/files.isa +++ b/sys/dev/isa/files.isa @@ -1,4 +1,4 @@ -# $NetBSD: files.isa,v 1.57 1998/04/15 20:26:53 drochner Exp $ +# $NetBSD: files.isa,v 1.58 1998/04/16 17:51:46 drochner Exp $ # # Config file and device description for machine-independent ISA code. # Included by ports that need it. Requires that the SCSI files be @@ -194,8 +194,17 @@ file dev/isa/if_iy.c iy # AMD am7990 (Lance) -based boards # (BICC Isolan, NE2100, DEPCA) # device declaration in sys/conf/files -attach le at isa with le_isa: isadma -file dev/isa/if_le_isa.c le_isa +device nele {} +attach nele at isa +attach le at nele with le_nele: isadma +device bicc {} +attach bicc at isa +attach le at bicc with le_bicc: isadma +file dev/isa/if_le_isa.c nele | bicc +device depca {} +attach depca at isa with depca_isa +attach le at depca with le_depca +file dev/isa/if_depca_isa.c depca # DEC EtherWORKS III (LEMAC-based: DE203, DE204, DE205) cards attach lc at isa with lc_isa diff --git a/sys/dev/isa/if_le_isa.c b/sys/dev/isa/if_le_isa.c index 68a745790e4..e3577191416 100644 --- a/sys/dev/isa/if_le_isa.c +++ b/sys/dev/isa/if_le_isa.c @@ -1,4 +1,4 @@ -/* $NetBSD: if_le_isa.c,v 1.16 1998/02/04 00:37:49 thorpej Exp $ */ +/* $NetBSD: if_le_isa.c,v 1.17 1998/04/16 17:51:46 drochner Exp $ */ /*- * Copyright (c) 1997 The NetBSD Foundation, Inc. @@ -109,30 +109,46 @@ #include <dev/isa/if_levar.h> -static char *card_type[] = - { "unknown", "BICC Isolan", "NE2100", "DEPCA", "PCnet-ISA" }; - -int le_isa_probe __P((struct device *, void *, void *)); -void le_isa_attach __P((struct device *, struct device *, void *)); +int ne2100_isa_probe __P((struct device *, struct cfdata *, void *)); +int bicc_isa_probe __P((struct device *, struct cfdata *, void *)); +void le_dummyattach __P((struct device *, struct device *, void *)); +int le_dummyprobe __P((struct device *, struct cfdata *, void *)); +void le_ne2100_attach __P((struct device *, struct device *, void *)); +void le_bicc_attach __P((struct device *, struct device *, void *)); + +struct cfattach nele_ca = { + sizeof(struct device), ne2100_isa_probe, le_dummyattach +}, le_nele_ca = { + sizeof(struct le_softc), le_dummyprobe, le_ne2100_attach +}, bicc_ca = { + sizeof(struct device), bicc_isa_probe, le_dummyattach +}, le_bicc_ca = { + sizeof(struct le_softc), le_dummyprobe, le_bicc_attach +}; -struct cfattach le_isa_ca = { - sizeof(struct le_softc), le_isa_probe, le_isa_attach +struct le_isa_params { + char *name; + int iosize, rap, rdp; + int macstart, macstride; +} ne2100_params = { + "NE2100", + 24, NE2100_RAP, NE2100_RDP, + 0, 1 +}, bicc_params = { + "BICC Isolan", + 16, BICC_RAP, BICC_RDP, + 0, 2 }; -int depca_isa_probe __P((struct le_softc *, struct isa_attach_args *)); -int ne2100_isa_probe __P((struct le_softc *, struct isa_attach_args *)); -int bicc_isa_probe __P((struct le_softc *, struct isa_attach_args *)); -int lance_isa_probe __P((struct am7990_softc *)); +int lance_isa_probe __P((struct isa_attach_args *, struct le_isa_params *)); +void le_isa_attach __P((struct device *, struct le_softc *, + struct isa_attach_args *, struct le_isa_params *)); int le_isa_intredge __P((void *)); hide void le_isa_wrcsr __P((struct am7990_softc *, u_int16_t, u_int16_t)); hide u_int16_t le_isa_rdcsr __P((struct am7990_softc *, u_int16_t)); -void depca_copytobuf __P((struct am7990_softc *, void *, int, int)); -void depca_copyfrombuf __P((struct am7990_softc *, void *, int, int)); -void depca_zerobuf __P((struct am7990_softc *, int, int)); - #define LE_ISA_MEMSIZE 16384 hide void @@ -164,371 +180,179 @@ le_isa_rdcsr(sc, port) } int -le_isa_probe(parent, match, aux) +ne2100_isa_probe(parent, match, aux) struct device *parent; - void *match, *aux; + struct cfdata *match; + void *aux; { - struct le_softc *lesc = match; - struct isa_attach_args *ia = aux; - - /* Disallow wildcarded i/o address. */ - if (ia->ia_iobase == ISACF_PORT_DEFAULT) - return (0); - - if (bicc_isa_probe(lesc, ia)) - return (1); - if (ne2100_isa_probe(lesc, ia)) - return (1); - if (depca_isa_probe(lesc, ia)) - return (1); + return (lance_isa_probe(aux, &ne2100_params)); +} - return (0); +int +bicc_isa_probe(parent, match, aux) + struct device *parent; + struct cfdata *match; + void *aux; +{ + return (lance_isa_probe(aux, &bicc_params)); } +/* + * Determine which chip is present on the card. + */ int -depca_isa_probe(lesc, ia) - struct le_softc *lesc; +lance_isa_probe(ia, p) struct isa_attach_args *ia; + struct le_isa_params *p; { - struct am7990_softc *sc = &lesc->sc_am7990; - int iobase = ia->ia_iobase, port; bus_space_tag_t iot = ia->ia_iot; bus_space_handle_t ioh; - bus_space_handle_t memh; - u_int8_t csr; -#if 0 - u_int32_t sum, rom_sum; - u_int8_t x; -#endif - int i; + int rap, rdp; + int rv = 0; + + /* Disallow wildcarded i/o address. */ + if (ia->ia_iobase == ISACF_PORT_DEFAULT) + return (0); /* Map i/o space. */ - if (bus_space_map(iot, iobase, 16, 0, &ioh)) - return 0; + if (bus_space_map(iot, ia->ia_iobase, p->iosize, 0, &ioh)) + return (0); - if (ia->ia_maddr == MADDRUNK || ia->ia_msize == -1) - goto bad; + rap = p->rap; + rdp = p->rdp; - switch (ia->ia_msize) { - case 65536: - csr = DEPCA_CSR_SHE; - break; - case 32768: - csr = DEPCA_CSR_SHE | DEPCA_CSR_LOW32K; - break; - default: - goto bad; - } + /* Stop the LANCE chip and put it in a known state. */ + bus_space_write_2(iot, ioh, rap, LE_CSR0); + bus_space_write_2(iot, ioh, rdp, LE_C0_STOP); + delay(100); - /* Map card RAM. */ - if (bus_space_map(ia->ia_memt, ia->ia_maddr, ia->ia_msize, 0, &memh)) + bus_space_write_2(iot, ioh, rap, LE_CSR0); + if (bus_space_read_2(iot, ioh, rdp) != LE_C0_STOP) goto bad; - /* Just needed to check mapability; don't need it anymore. */ - bus_space_unmap(ia->ia_memt, memh, ia->ia_msize); + bus_space_write_2(iot, ioh, rap, LE_CSR3); + bus_space_write_2(iot, ioh, rdp, 0); - lesc->sc_iot = iot; - lesc->sc_ioh = ioh; - lesc->sc_rap = DEPCA_RAP; - lesc->sc_rdp = DEPCA_RDP; - lesc->sc_card = DEPCA; + ia->ia_iosize = p->iosize; + rv = 1; - if (lance_isa_probe(sc) == 0) - goto bad; - - bus_space_write_1(iot, ioh, DEPCA_CSR, DEPCA_CSR_DUM); +bad: + bus_space_unmap(iot, ioh, p->iosize); + return (rv); +} - /* - * Extract the physical MAC address from the ROM. - * - * The address PROM is 32 bytes wide, and we access it through - * a single I/O port. On each read, it rotates to the next - * position. We find the ethernet address by looking for a - * particular sequence of bytes (0xff, 0x00, 0x55, 0xaa, 0xff, - * 0x00, 0x55, 0xaa), and then reading the next 8 bytes (the - * ethernet address and a checksum). - * - * It appears that the PROM can be at one of two locations, so - * we just try both. - */ - port = DEPCA_ADP; - for (i = 0; i < 32; i++) - if (bus_space_read_1(iot, ioh, port) == 0xff && - bus_space_read_1(iot, ioh, port) == 0x00 && - bus_space_read_1(iot, ioh, port) == 0x55 && - bus_space_read_1(iot, ioh, port) == 0xaa && - bus_space_read_1(iot, ioh, port) == 0xff && - bus_space_read_1(iot, ioh, port) == 0x00 && - bus_space_read_1(iot, ioh, port) == 0x55 && - bus_space_read_1(iot, ioh, port) == 0xaa) - goto found; - port = DEPCA_ADP + 1; - for (i = 0; i < 32; i++) - if (bus_space_read_1(iot, ioh, port) == 0xff && - bus_space_read_1(iot, ioh, port) == 0x00 && - bus_space_read_1(iot, ioh, port) == 0x55 && - bus_space_read_1(iot, ioh, port) == 0xaa && - bus_space_read_1(iot, ioh, port) == 0xff && - bus_space_read_1(iot, ioh, port) == 0x00 && - bus_space_read_1(iot, ioh, port) == 0x55 && - bus_space_read_1(iot, ioh, port) == 0xaa) - goto found; - printf("%s: address not found\n", sc->sc_dev.dv_xname); - goto bad; - -found: - for (i = 0; i < sizeof(sc->sc_enaddr); i++) - sc->sc_enaddr[i] = bus_space_read_1(iot, ioh, port); - -#if 0 - sum = - (sc->sc_enaddr[0] << 2) + - (sc->sc_enaddr[1] << 10) + - (sc->sc_enaddr[2] << 1) + - (sc->sc_enaddr[3] << 9) + - (sc->sc_enaddr[4] << 0) + - (sc->sc_enaddr[5] << 8); - sum = (sum & 0xffff) + (sum >> 16); - sum = (sum & 0xffff) + (sum >> 16); - - rom_sum = bus_space_read_1(iot, ioh, port); - rom_sum |= bus_space_read_1(iot, ioh, port) << 8; - - if (sum != rom_sum) { - printf("%s: checksum mismatch; calculated %04x != read %04x", - sc->sc_dev.dv_xname, sum, rom_sum); - goto bad; - } -#endif +void +le_dummyattach(parent, self, aux) + struct device *parent, *self; + void *aux; +{ + printf("\n"); - /* - * XXX INDIRECT BROKENNESS! - * XXX Should always unmap, and re-map in if_le_isa_attach(). - */ + config_found(self, aux, 0); +} - bus_space_write_1(iot, ioh, DEPCA_CSR, DEPCA_CSR_DUM | DEPCA_CSR_IEN | - csr); +int +le_dummyprobe(parent, match, aux) + struct device *parent; + struct cfdata *match; + void *aux; +{ + return (1); +} - ia->ia_iosize = 16; - ia->ia_drq = DRQUNK; - return 1; +void +le_ne2100_attach(parent, self, aux) + struct device *parent, *self; + void *aux; +{ + le_isa_attach(parent, (void *)self, aux, &ne2100_params); +} - bad: - bus_space_unmap(iot, ioh, 16); - return 0; +void +le_bicc_attach(parent, self, aux) + struct device *parent, *self; + void *aux; +{ + le_isa_attach(parent, (void *)self, aux, &bicc_params); } -int -ne2100_isa_probe(lesc, ia) +void +le_isa_attach(parent, lesc, ia, p) + struct device *parent; struct le_softc *lesc; struct isa_attach_args *ia; + struct le_isa_params *p; { struct am7990_softc *sc = &lesc->sc_am7990; - int iobase = ia->ia_iobase; bus_space_tag_t iot = ia->ia_iot; bus_space_handle_t ioh; - int i; + bus_dma_tag_t dmat = lesc->sc_dmat; + bus_dma_segment_t seg; + int i, rseg; - /* Map i/o space. */ - if (bus_space_map(iot, iobase, 24, 0, &ioh)) - return 0; + printf(": %s Ethernet\n", p->name); - lesc->sc_iot = iot; - lesc->sc_ioh = ioh; - lesc->sc_rap = NE2100_RAP; - lesc->sc_rdp = NE2100_RDP; - lesc->sc_card = NE2100; - - if (lance_isa_probe(sc) == 0) { - bus_space_unmap(iot, ioh, 24); - return 0; - } + if (bus_space_map(iot, ia->ia_iobase, p->iosize, 0, &ioh)) + panic("%s: can't map io", sc->sc_dev.dv_xname); /* * Extract the physical MAC address from the ROM. */ for (i = 0; i < sizeof(sc->sc_enaddr); i++) - sc->sc_enaddr[i] = bus_space_read_1(iot, ioh, i); - - /* - * XXX INDIRECT BROKENNESS! - * XXX Should always unmap, and re-map in if_le_isa_attach(). - */ - - ia->ia_iosize = 24; - return 1; -} - -int -bicc_isa_probe(lesc, ia) - struct le_softc *lesc; - struct isa_attach_args *ia; -{ - struct am7990_softc *sc = &lesc->sc_am7990; - int iobase = ia->ia_iobase; - bus_space_tag_t iot = ia->ia_iot; - bus_space_handle_t ioh; - int i; - - /* Map i/o space. */ - if (bus_space_map(iot, iobase, 16, 0, &ioh)) - return 0; + sc->sc_enaddr[i] = + bus_space_read_1(iot, ioh, p->macstart + i * p->macstride); lesc->sc_iot = iot; lesc->sc_ioh = ioh; - lesc->sc_rap = BICC_RAP; - lesc->sc_rdp = BICC_RDP; - lesc->sc_card = BICC; - - if (lance_isa_probe(sc) == 0) { - bus_space_unmap(iot, ioh, 16); - return 0; - } + lesc->sc_dmat = ia->ia_dmat; + lesc->sc_rap = p->rap; + lesc->sc_rdp = p->rdp; /* - * Extract the physical MAC address from the ROM. + * Allocate a DMA area for the card. */ - for (i = 0; i < sizeof(sc->sc_enaddr); i++) - sc->sc_enaddr[i] = bus_space_read_1(iot, ioh, i * 2); + if (bus_dmamem_alloc(dmat, LE_ISA_MEMSIZE, NBPG, 0, &seg, 1, + &rseg, BUS_DMA_NOWAIT)) { + printf("%s: couldn't allocate memory for card\n", + sc->sc_dev.dv_xname); + return; + } + if (bus_dmamem_map(dmat, &seg, rseg, LE_ISA_MEMSIZE, + (caddr_t *)&sc->sc_mem, + BUS_DMA_NOWAIT|BUS_DMA_COHERENT)) { + printf("%s: couldn't map memory for card\n", + sc->sc_dev.dv_xname); + return; + } /* - * XXX INDIRECT BROKENNESS! - * XXX Should always unmap, and re-map in if_le_isa_attach(). + * Create and load the DMA map for the DMA area. */ - - ia->ia_iosize = 16; - return 1; -} - -/* - * Determine which chip is present on the card. - */ -int -lance_isa_probe(sc) - struct am7990_softc *sc; -{ - - /* Stop the LANCE chip and put it in a known state. */ - le_isa_wrcsr(sc, LE_CSR0, LE_C0_STOP); - delay(100); - - if (le_isa_rdcsr(sc, LE_CSR0) != LE_C0_STOP) - return 0; - - le_isa_wrcsr(sc, LE_CSR3, sc->sc_conf3); - return 1; -} - -void -le_isa_attach(parent, self, aux) - struct device *parent, *self; - void *aux; -{ - struct le_softc *lesc = (void *)self; - struct am7990_softc *sc = &lesc->sc_am7990; - struct isa_attach_args *ia = aux; - bus_space_tag_t iot = ia->ia_iot; - bus_space_tag_t memt = ia->ia_memt; - bus_dma_tag_t dmat = ia->ia_dmat; - bus_space_handle_t memh; - bus_dma_segment_t seg; - int rseg; - - printf(": %s Ethernet\n", card_type[lesc->sc_card]); - - lesc->sc_iot = iot; - lesc->sc_memt = memt; - lesc->sc_dmat = dmat; - - /* XXX SHOULD RE-MAP I/O SPACE HERE. */ - - if (lesc->sc_card == DEPCA) { - u_char val; - int i; - - /* Map shared memory. */ - if (bus_space_map(memt, ia->ia_maddr, ia->ia_msize, 0, &memh)) { - printf("%s: can't map mem space\n", - sc->sc_dev.dv_xname); - return; - } - - lesc->sc_memh = memh; - - val = 0xff; - for (;;) { - bus_space_set_region_1(memt, memh, 0, val, - ia->ia_msize); - for (i = 0; i < ia->ia_msize; i++) - if (bus_space_read_1(memt, memh, 1) != val) { - printf("%s: failed to clear memory\n", - sc->sc_dev.dv_xname); - return; - } - if (val == 0x00) - break; - val -= 0x55; - } - - sc->sc_conf3 = LE_C3_ACON; - sc->sc_mem = 0; /* Not used. */ - sc->sc_addr = 0; - sc->sc_memsize = ia->ia_msize; - } else { - /* - * Allocate a DMA area for the card. - */ - if (bus_dmamem_alloc(dmat, LE_ISA_MEMSIZE, NBPG, 0, &seg, 1, - &rseg, BUS_DMA_NOWAIT)) { - printf("%s: couldn't allocate memory for card\n", - sc->sc_dev.dv_xname); - return; - } - if (bus_dmamem_map(dmat, &seg, rseg, LE_ISA_MEMSIZE, - (caddr_t *)&sc->sc_mem, - BUS_DMA_NOWAIT|BUS_DMA_COHERENT)) { - printf("%s: couldn't map memory for card\n", - sc->sc_dev.dv_xname); - return; - } - - /* - * Create and load the DMA map for the DMA area. - */ - if (bus_dmamap_create(dmat, LE_ISA_MEMSIZE, 1, - LE_ISA_MEMSIZE, 0, BUS_DMA_NOWAIT, &lesc->sc_dmam)) { - printf("%s: couldn't create DMA map\n", - sc->sc_dev.dv_xname); - bus_dmamem_free(dmat, &seg, rseg); - return; - } - if (bus_dmamap_load(dmat, lesc->sc_dmam, - sc->sc_mem, LE_ISA_MEMSIZE, NULL, BUS_DMA_NOWAIT)) { - printf("%s: coundn't load DMA map\n", - sc->sc_dev.dv_xname); - bus_dmamem_free(dmat, &seg, rseg); - return; - } - - sc->sc_conf3 = 0; - sc->sc_addr = lesc->sc_dmam->dm_segs[0].ds_addr; - sc->sc_memsize = LE_ISA_MEMSIZE; + if (bus_dmamap_create(dmat, LE_ISA_MEMSIZE, 1, + LE_ISA_MEMSIZE, 0, BUS_DMA_NOWAIT, &lesc->sc_dmam)) { + printf("%s: couldn't create DMA map\n", + sc->sc_dev.dv_xname); + bus_dmamem_free(dmat, &seg, rseg); + return; } - - if (lesc->sc_card == DEPCA) { - sc->sc_copytodesc = depca_copytobuf; - sc->sc_copyfromdesc = depca_copyfrombuf; - sc->sc_copytobuf = depca_copytobuf; - sc->sc_copyfrombuf = depca_copyfrombuf; - sc->sc_zerobuf = depca_zerobuf; - } else { - sc->sc_copytodesc = am7990_copytobuf_contig; - sc->sc_copyfromdesc = am7990_copyfrombuf_contig; - sc->sc_copytobuf = am7990_copytobuf_contig; - sc->sc_copyfrombuf = am7990_copyfrombuf_contig; - sc->sc_zerobuf = am7990_zerobuf_contig; + if (bus_dmamap_load(dmat, lesc->sc_dmam, + sc->sc_mem, LE_ISA_MEMSIZE, NULL, BUS_DMA_NOWAIT)) { + printf("%s: coundn't load DMA map\n", + sc->sc_dev.dv_xname); + bus_dmamem_free(dmat, &seg, rseg); + return; } + sc->sc_conf3 = 0; + sc->sc_addr = lesc->sc_dmam->dm_segs[0].ds_addr; + sc->sc_memsize = LE_ISA_MEMSIZE; + + sc->sc_copytodesc = am7990_copytobuf_contig; + sc->sc_copyfromdesc = am7990_copyfrombuf_contig; + sc->sc_copytobuf = am7990_copytobuf_contig; + sc->sc_copyfrombuf = am7990_copyfrombuf_contig; + sc->sc_zerobuf = am7990_zerobuf_contig; + sc->sc_rdcsr = le_isa_rdcsr; sc->sc_wrcsr = le_isa_wrcsr; sc->sc_hwinit = NULL; @@ -537,7 +361,7 @@ le_isa_attach(parent, self, aux) am7990_config(sc); if (ia->ia_drq != DRQUNK) - isa_dmacascade(parent, ia->ia_drq); + isa_dmacascade(parent->dv_parent, ia->ia_drq); lesc->sc_ih = isa_intr_establish(ia->ia_ic, ia->ia_irq, IST_EDGE, IPL_NET, le_isa_intredge, sc); @@ -557,47 +381,3 @@ le_isa_intredge(arg) if (am7990_intr(arg) == 0) return (1); } - -/* - * DEPCA shared memory access functions. - */ - -void -depca_copytobuf(sc, from, boff, len) - struct am7990_softc *sc; - void *from; - int boff, len; -{ - struct le_softc *lesc = (struct le_softc *)sc; - - bus_space_write_region_1(lesc->sc_memt, lesc->sc_memh, boff, - from, len); -} - -void -depca_copyfrombuf(sc, to, boff, len) - struct am7990_softc *sc; - void *to; - int boff, len; -{ - struct le_softc *lesc = (struct le_softc *)sc; - - bus_space_read_region_1(lesc->sc_memt, lesc->sc_memh, boff, - to, len); -} - -void -depca_zerobuf(sc, boff, len) - struct am7990_softc *sc; - int boff, len; -{ - struct le_softc *lesc = (struct le_softc *)sc; - -#if 0 /* XXX !! */ - bus_space_set_region_1(lesc->sc_memt, lesc->sc_memh, boff, - 0x00, len); -#else - for (; len != 0; boff++, len--) - bus_space_write_1(lesc->sc_memt, lesc->sc_memh, boff, 0x00); -#endif -} diff --git a/sys/dev/isa/if_levar.h b/sys/dev/isa/if_levar.h index a95625824e9..6e571efafdf 100644 --- a/sys/dev/isa/if_levar.h +++ b/sys/dev/isa/if_levar.h @@ -1,4 +1,4 @@ -/* $NetBSD: if_levar.h,v 1.10 1997/09/10 03:05:40 mycroft Exp $ */ +/* $NetBSD: if_levar.h,v 1.11 1998/04/16 17:51:46 drochner Exp $ */ /* * LANCE Ethernet driver header file @@ -13,27 +13,12 @@ * for damages incurred with its use. */ -/* Board types */ -#define BICC 1 #define BICC_RDP 0xc #define BICC_RAP 0xe -#define NE2100 2 -#define PCnet_ISA 4 #define NE2100_RDP 0x10 #define NE2100_RAP 0x12 -#define DEPCA 3 -#define DEPCA_CSR 0x0 -#define DEPCA_CSR_SHE 0x80 /* Shared memory enabled */ -#define DEPCA_CSR_LOW32K 0x40 /* Map lower 32K chunk */ -#define DEPCA_CSR_DUM 0x08 /* rev E compatibility */ -#define DEPCA_CSR_IM 0x04 /* Interrupt masked */ -#define DEPCA_CSR_IEN 0x02 /* Interrupt enabled */ -#define DEPCA_RDP 0x4 -#define DEPCA_RAP 0x6 -#define DEPCA_ADP 0xc - /* * Ethernet software status per interface. * @@ -46,11 +31,8 @@ struct le_softc { void *sc_ih; bus_space_tag_t sc_iot; - bus_space_tag_t sc_memt; bus_space_handle_t sc_ioh; - bus_space_handle_t sc_memh; - bus_dma_tag_t sc_dmat; /* DMA glue for non-DEPCA */ + bus_dma_tag_t sc_dmat; /* DMA glue */ bus_dmamap_t sc_dmam; - int sc_card; int sc_rap, sc_rdp; /* offsets to LANCE registers */ }; |
