summaryrefslogtreecommitdiffstats
path: root/sys/dev/eisa
diff options
context:
space:
mode:
authorphk <phk@FreeBSD.org>1996-09-06 23:09:20 +0000
committerphk <phk@FreeBSD.org>1996-09-06 23:09:20 +0000
commitbca885205da7f15208946f0896edc2eda3caff01 (patch)
tree35dad08bf59366e84921fd4aad9718c2f9426a1b /sys/dev/eisa
parent9640e2d9e8f825813ec445d294de60884ad82bc8 (diff)
downloadFreeBSD-src-bca885205da7f15208946f0896edc2eda3caff01.zip
FreeBSD-src-bca885205da7f15208946f0896edc2eda3caff01.tar.gz
Remove devconf, it never grew up to be of any use.
Diffstat (limited to 'sys/dev/eisa')
-rw-r--r--sys/dev/eisa/eisaconf.c126
-rw-r--r--sys/dev/eisa/eisaconf.h7
2 files changed, 8 insertions, 125 deletions
diff --git a/sys/dev/eisa/eisaconf.c b/sys/dev/eisa/eisaconf.c
index 4b0d464..12b6335 100644
--- a/sys/dev/eisa/eisaconf.c
+++ b/sys/dev/eisa/eisaconf.c
@@ -28,14 +28,13 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $Id: eisaconf.c,v 1.20 1996/06/12 05:02:41 gpalmer Exp $
+ * $Id: eisaconf.c,v 1.21 1996/08/31 14:47:30 bde Exp $
*/
#include <sys/param.h>
#include <sys/systm.h>
-#include <sys/devconf.h>
#include <sys/kernel.h>
#include <sys/sysctl.h>
-#include <sys/conf.h> /* For kdc_isa */
+#include <sys/conf.h>
#include <sys/malloc.h>
#include <i386/eisa/eisaconf.h>
@@ -47,19 +46,6 @@ struct eisa_device_node{
struct eisa_device_node *next;
};
-extern struct kern_devconf kdc_cpu0;
-
-struct kern_devconf kdc_eisa0 = {
- 0, 0, 0, /* filled in by dev_attach */
- "eisa", 0, { MDDT_BUS, 0 },
- 0, 0, 0, BUS_EXTERNALLEN,
- &kdc_cpu0, /* parent is the CPU */
- 0, /* no parentdata */
- DC_BUSY, /* busses are always busy */
- NULL,
- DC_CLS_BUS /* class */
-};
-
/*
* This should probably be a list of "struct device" once it exists.
* A struct device will incorperate ioconf and driver entry point data
@@ -204,16 +190,6 @@ eisa_configure()
e_dev->full_name);
/* Should set the iosize, but I don't have a spec handy */
- kdc_eisa0.kdc_description =
- (char *)malloc(strlen(e_dev->full_name)
- + sizeof("EISA bus <>")
- + 1, M_DEVBUF, M_NOWAIT);
- if (!kdc_eisa0.kdc_description) {
- panic("Eisa probe unable to malloc");
- }
- sprintf((char *)kdc_eisa0.kdc_description, "EISA bus <%s>",
- e_dev->full_name);
- dev_attach(&kdc_eisa0);
printf("Probing for devices on the EISA bus\n");
dev_node = dev_node->next;
}
@@ -263,7 +239,6 @@ eisa_configure()
}
/* Ensure registration has ended */
reg_state.in_registration = 0;
- e_dev->kdc->kdc_unit = e_dev->unit;
}
else {
/* Announce unattached device */
@@ -379,14 +354,9 @@ eisa_reg_end(e_dev)
*/
char string[25];
- if (e_dev->kdc && (e_dev->kdc->kdc_parent == &kdc_isa0)) {
- sprintf(string, " on isa");
- }
- else {
- sprintf(string, " on %s0 slot %d",
- mainboard_drv.name,
- e_dev->ioconf.slot);
- }
+ sprintf(string, " on %s0 slot %d",
+ mainboard_drv.name,
+ e_dev->ioconf.slot);
eisa_reg_print(e_dev, string, NULL);
printf("\n");
reg_state.in_registration = 0;
@@ -620,7 +590,6 @@ eisa_reg_resvaddr(e_dev, head, resvaddr, reg_count)
eisa_reg_print(e_dev, buf,
*reg_count ? &separator : NULL);
(*reg_count)++;
- e_dev->kdc->kdc_datalen += sizeof(resvaddr_t);
return (0);
}
}
@@ -668,94 +637,11 @@ eisa_reg_iospace(e_dev, resvaddr)
}
int
-eisa_registerdev(e_dev, driver, kdc_template)
+eisa_registerdev(e_dev, driver)
struct eisa_device *e_dev;
struct eisa_driver *driver;
- struct kern_devconf *kdc_template;
{
e_dev->driver = driver; /* Driver now owns this device */
- e_dev->kdc = (struct kern_devconf *)malloc(sizeof(struct kern_devconf),
- M_DEVBUF, M_NOWAIT);
- if (!e_dev->kdc) {
- printf("WARNING: eisa_registerdev unable to malloc! "
- "Device kdc will not be registerd\n");
- return 1;
- }
- bcopy(kdc_template, e_dev->kdc, sizeof(*kdc_template));
- e_dev->kdc->kdc_description = e_dev->full_name;
- e_dev->kdc->kdc_parentdata = e_dev;
- dev_attach(e_dev->kdc);
return (0);
}
-int
-eisa_generic_externalize(struct kern_devconf *kdc, struct sysctl_req *req)
-{
- struct eisa_device *e_dev;
- resvaddr_t *node;
- void *buf; /* Temporary externalizing buffer */
- void *bufp; /* Current offset in the buffer */
- void *offset; /* Offset relative to target address space */
- void *ioa_prev; /* Prev Node entries relative to target address space */
- void *ma_prev; /* Prev Node entries relative to target address space */
- int retval;
-
- offset = (char *)req->oldptr + req->oldidx;
- buf = malloc(kdc->kdc_datalen, M_TEMP, M_NOWAIT);
- if (!buf)
- return 0;
-
- bufp = buf;
- bcopy(kdc->kdc_eisa, bufp, sizeof(struct eisa_device));
- e_dev = bufp;
-
- /* Calculate initial prev nodes */
- ioa_prev = (char *)offset + ((char *)&(e_dev->ioconf.ioaddrs.lh_first)
- - (char *)e_dev);
- ma_prev = (char *)offset + ((char *)&(e_dev->ioconf.maddrs.lh_first)
- - (char *)e_dev);
-
- offset = (char *)offset + sizeof(*e_dev);
- bufp = (char *)bufp + sizeof(*e_dev);
-
- if (e_dev->ioconf.ioaddrs.lh_first) {
- node = e_dev->ioconf.ioaddrs.lh_first;
- e_dev->ioconf.ioaddrs.lh_first = offset;
- for(;node;node = node->links.le_next) {
- resvaddr_t *out_node;
-
- bcopy(node, bufp, sizeof(resvaddr_t));
- out_node = (resvaddr_t *)bufp;
- bufp = (char *)bufp + sizeof(resvaddr_t);
- offset = (char *)offset + sizeof(resvaddr_t);
-
- out_node->links.le_prev = ioa_prev;
- ioa_prev = (char *)ioa_prev + sizeof(resvaddr_t);
-
- if (out_node->links.le_next)
- out_node->links.le_next = offset;
- }
- }
- if (e_dev->ioconf.maddrs.lh_first) {
- node = e_dev->ioconf.maddrs.lh_first;
- e_dev->ioconf.maddrs.lh_first = offset;
- for(;node;node = node->links.le_next) {
- resvaddr_t *out_node;
-
- bcopy(node, bufp, sizeof(resvaddr_t));
- out_node = (resvaddr_t *)bufp;
- bufp = (char *)bufp + sizeof(resvaddr_t);
- offset = (char *)offset + sizeof(resvaddr_t);
-
- out_node->links.le_prev = ma_prev;
- ma_prev = (char *)ma_prev + sizeof(resvaddr_t);
-
- if (out_node->links.le_next)
- out_node->links.le_next = offset;
- }
- }
-
- retval = SYSCTL_OUT(req, buf, kdc->kdc_datalen);
- free(buf, M_TEMP);
- return retval;
-}
diff --git a/sys/dev/eisa/eisaconf.h b/sys/dev/eisa/eisaconf.h
index c037239..5bceffb 100644
--- a/sys/dev/eisa/eisaconf.h
+++ b/sys/dev/eisa/eisaconf.h
@@ -28,7 +28,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $Id: eisaconf.h,v 1.8 1996/01/30 22:53:51 mpp Exp $
+ * $Id: eisaconf.h,v 1.9 1996/04/20 21:21:50 gibbs Exp $
*/
#ifndef _I386_EISA_EISACONF_H_
@@ -110,15 +110,12 @@ int eisa_add_iospace __P((struct eisa_device *, u_long, u_long, int));
int eisa_reg_iospace __P((struct eisa_device *, resvaddr_t *));
int eisa_add_mspace __P((struct eisa_device *, u_long, u_long, int));
int eisa_reg_mspace __P((struct eisa_device *, resvaddr_t *));
-int eisa_registerdev __P((struct eisa_device *, struct eisa_driver *, struct kern_devconf *));
+int eisa_registerdev __P((struct eisa_device *, struct eisa_driver *));
struct sysctl_req;
int eisa_externalize (struct eisa_device *, struct sysctl_req*);
-int eisa_generic_externalize (struct kern_devconf *, struct sysctl_req *);
-extern struct kern_devconf kdc_eisa0;
-
#define EISA_EXTERNALLEN (sizeof(struct eisa_device))
#endif /* _I386_EISA_EISACONF_H_ */
OpenPOWER on IntegriCloud