On Mon, 31 Jan 2000, Nikolai Saoukh wrote: > THE PROBLEM is that tok_isa_probe is not called at all, > when driver kldloaded. Return value is irrelevant for this case. Try the attached patch. (cd /sys/isa && patch < isa_common.c.patch) -- | Matthew N. Dodd | '78 Datsun 280Z | '75 Volvo 164E | FreeBSD/NetBSD | | [EMAIL PROTECTED] | 2 x '84 Volvo 245DL | ix86,sparc,pmax | | http://www.jurai.net/~winter | This Space For Rent | ISO8802.5 4ever |
Index: isa_common.c =================================================================== RCS file: /cvs/src/sys/isa/isa_common.c,v retrieving revision 1.15 diff -u -r1.15 isa_common.c --- isa_common.c 2000/01/18 02:15:05 1.15 +++ isa_common.c 2000/01/31 20:42:03 @@ -783,8 +783,7 @@ static void isa_driver_added(device_t dev, driver_t *driver) { - device_t *children; - int nchildren, i; + device_t child; /* * Don't do anything if drivers are dynamically @@ -796,11 +795,10 @@ return; DEVICE_IDENTIFY(driver, dev); - if (device_get_children(dev, &children, &nchildren)) - return; - for (i = 0; i < nchildren; i++) { - device_t child = children[i]; + for (child = TAILQ_FIRST(&dev->children); + child; + child = TAILQ_NEXT(child, link)) { struct isa_device *idev = DEVTOISA(child); struct resource_list *rl = &idev->id_resources; struct resource_list_entry *rle; @@ -831,8 +829,6 @@ } } } - - free(children, M_TEMP); } static int