summaryrefslogtreecommitdiffstats
path: root/sys/dev/en
diff options
context:
space:
mode:
authorharti <harti@FreeBSD.org>2003-04-29 08:07:44 +0000
committerharti <harti@FreeBSD.org>2003-04-29 08:07:44 +0000
commit434086177ff1782e5033d3ef3944a029b263f85b (patch)
tree631feff583589aa3eebd1ddb28044891f36cc315 /sys/dev/en
parentdb92d84028d043a57be76ff4d516386f5736053e (diff)
downloadFreeBSD-src-434086177ff1782e5033d3ef3944a029b263f85b.zip
FreeBSD-src-434086177ff1782e5033d3ef3944a029b263f85b.tar.gz
Add module data and version to the atm_subr and reference this info from the
(currently) only consumer (en). Add a sysctl node hw.atm where the atm drivers will hook on their hardware sysctl sub-trees. Make atm_ifattach call if_attach and remove the corresponding call to if_attach from en. Create atm_ifdetach and use that in en. While the last change actually changes the interface this is not a problem in practice because the only other consumer of this API is an older LANAI driver on the net, that is not ready for current anyway. Reviewed by: -atm
Diffstat (limited to 'sys/dev/en')
-rw-r--r--sys/dev/en/if_en_pci.c7
-rw-r--r--sys/dev/en/midway.c5
2 files changed, 7 insertions, 5 deletions
diff --git a/sys/dev/en/if_en_pci.c b/sys/dev/en/if_en_pci.c
index 45e5e3a..19b174c 100644
--- a/sys/dev/en/if_en_pci.c
+++ b/sys/dev/en/if_en_pci.c
@@ -66,6 +66,9 @@
#include <dev/en/midwayreg.h>
#include <dev/en/midwayvar.h>
+MODULE_DEPEND(en, pci, 1, 1, 1);
+MODULE_DEPEND(en, atm, 1, 1, 1);
+
/*
* local structures
*/
@@ -262,7 +265,7 @@ en_pci_attach(device_t dev)
en_intr, sc, &scp->ih);
if (error) {
en_reset(sc);
- if_detach(&sc->enif);
+ atm_ifdetach(&sc->enif);
device_printf(dev, "could not setup irq\n");
bus_release_resource(dev, SYS_RES_IRQ, 0, scp->irq);
bus_release_resource(dev, SYS_RES_MEMORY, PCI_CBMA, scp->res);
@@ -297,7 +300,7 @@ en_pci_detach(device_t dev)
* Close down routes etc.
*/
en_reset(sc);
- if_detach(&sc->enif);
+ atm_ifdetach(&sc->enif);
/*
* Deallocate resources.
diff --git a/sys/dev/en/midway.c b/sys/dev/en/midway.c
index 5ccb66a..e468f4f 100644
--- a/sys/dev/en/midway.c
+++ b/sys/dev/en/midway.c
@@ -173,7 +173,7 @@ enum {
#define ENOTHER_DRAIN 0x02 /* almost free (drain DRQ dma) */
#define ENOTHER_SWSL 0x08 /* in software service list */
-SYSCTL_NODE(_hw, OID_AUTO, en, CTLFLAG_RW, 0, "ENI 155p");
+SYSCTL_DECL(_hw_atm);
/*
* dma tables
@@ -2767,7 +2767,7 @@ en_attach(struct en_softc *sc)
sysctl_ctx_init(&sc->sysctl_ctx);
if ((sc->sysctl_tree = SYSCTL_ADD_NODE(&sc->sysctl_ctx,
- SYSCTL_STATIC_CHILDREN(_hw_en), OID_AUTO,
+ SYSCTL_STATIC_CHILDREN(_hw_atm), OID_AUTO,
device_get_nameunit(sc->dev), CTLFLAG_RD, 0, "")) == NULL)
goto fail;
@@ -2877,7 +2877,6 @@ en_attach(struct en_softc *sc)
/*
* final commit
*/
- if_attach(ifp);
atm_ifattach(ifp);
#ifdef ENABLE_BPF
OpenPOWER on IntegriCloud