eisaconf.c (30813) | eisaconf.c (31016) |
---|---|
1/* 2 * EISA bus probe and attach routines 3 * 4 * Copyright (c) 1995, 1996 Justin T. Gibbs. 5 * All rights reserved. 6 * 7 * Redistribution and use in source and binary forms, with or without 8 * modification, are permitted provided that the following conditions --- 14 unchanged lines hidden (view full) --- 23 * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 24 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 25 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 26 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 27 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 28 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 29 * SUCH DAMAGE. 30 * | 1/* 2 * EISA bus probe and attach routines 3 * 4 * Copyright (c) 1995, 1996 Justin T. Gibbs. 5 * All rights reserved. 6 * 7 * Redistribution and use in source and binary forms, with or without 8 * modification, are permitted provided that the following conditions --- 14 unchanged lines hidden (view full) --- 23 * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 24 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 25 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 26 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 27 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 28 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 29 * SUCH DAMAGE. 30 * |
31 * $Id: eisaconf.c,v 1.31 1997/09/21 21:35:23 gibbs Exp $ | 31 * $Id: eisaconf.c,v 1.32 1997/10/28 15:58:08 bde Exp $ |
32 */ 33 34#include "opt_eisa.h" 35 36#include <sys/param.h> 37#include <sys/systm.h> 38#include <sys/kernel.h> 39#include <sys/malloc.h> --- 67 unchanged lines hidden (view full) --- 107 108/* 109** probe for EISA devices 110*/ 111void 112eisa_configure() 113{ 114 int i,slot; | 32 */ 33 34#include "opt_eisa.h" 35 36#include <sys/param.h> 37#include <sys/systm.h> 38#include <sys/kernel.h> 39#include <sys/malloc.h> --- 67 unchanged lines hidden (view full) --- 107 108/* 109** probe for EISA devices 110*/ 111void 112eisa_configure() 113{ 114 int i,slot; |
115 char *id_string; | |
116 struct eisa_device_node *dev_node; 117 struct eisa_driver **e_drvp; 118 struct eisa_driver *e_drv; 119 struct eisa_device *e_dev; 120 int eisaBase = 0xc80; 121 eisa_id_t eisa_id; 122 123 e_drvp = (struct eisa_driver**)eisadriver_set.ls_items; --- 240 unchanged lines hidden (view full) --- 364} 365 366int 367eisa_add_intr(e_dev, irq) 368 struct eisa_device *e_dev; 369 int irq; 370{ 371 struct irq_node *irq_info; | 115 struct eisa_device_node *dev_node; 116 struct eisa_driver **e_drvp; 117 struct eisa_driver *e_drv; 118 struct eisa_device *e_dev; 119 int eisaBase = 0xc80; 120 eisa_id_t eisa_id; 121 122 e_drvp = (struct eisa_driver**)eisadriver_set.ls_items; --- 240 unchanged lines hidden (view full) --- 363} 364 365int 366eisa_add_intr(e_dev, irq) 367 struct eisa_device *e_dev; 368 int irq; 369{ 370 struct irq_node *irq_info; |
372 void *dev_instance = (void *)-1; /* XXX use cfg->devdata */ 373 void *idesc; | |
374 375 irq_info = (struct irq_node *)malloc(sizeof(*irq_info), M_DEVBUF, 376 M_NOWAIT); 377 if (irq_info == NULL) 378 return (1); 379 380 irq_info->irq_no = irq; 381 irq_info->idesc = NULL; --- 5 unchanged lines hidden (view full) --- 387eisa_reg_intr(e_dev, irq, func, arg, maskptr, shared) 388 struct eisa_device *e_dev; 389 int irq; 390 void (*func)(void *); 391 void *arg; 392 u_int *maskptr; 393 int shared; 394{ | 371 372 irq_info = (struct irq_node *)malloc(sizeof(*irq_info), M_DEVBUF, 373 M_NOWAIT); 374 if (irq_info == NULL) 375 return (1); 376 377 irq_info->irq_no = irq; 378 irq_info->idesc = NULL; --- 5 unchanged lines hidden (view full) --- 384eisa_reg_intr(e_dev, irq, func, arg, maskptr, shared) 385 struct eisa_device *e_dev; 386 int irq; 387 void (*func)(void *); 388 void *arg; 389 u_int *maskptr; 390 int shared; 391{ |
395 int result; 396 int s; | |
397 char string[25]; 398 char separator = ','; 399 400#if NOT_YET 401 /* 402 * Punt on conflict detection for the moment. 403 * I want to develop a generic routine to do 404 * this for all device types. --- 258 unchanged lines hidden --- | 392 char string[25]; 393 char separator = ','; 394 395#if NOT_YET 396 /* 397 * Punt on conflict detection for the moment. 398 * I want to develop a generic routine to do 399 * this for all device types. --- 258 unchanged lines hidden --- |