Lines Matching full:child

114  * Find a working set of memory regions for a child using the ranges
119 isa_find_memory(device_t child, struct isa_config *config,
129 bus_delete_resource(child, SYS_RES_MEMORY, i);
154 bus_set_resource(child, SYS_RES_MEMORY, i,
156 res[i] = bus_alloc_resource_any(child,
180 bus_release_resource(child, SYS_RES_MEMORY,
188 * Find a working set of port regions for a child using the ranges
193 isa_find_port(device_t child, struct isa_config *config,
203 bus_delete_resource(child, SYS_RES_IOPORT, i);
228 bus_set_resource(child, SYS_RES_IOPORT, i,
230 res[i] = bus_alloc_resource_any(child,
254 bus_release_resource(child, SYS_RES_IOPORT,
280 * Find a working set of irqs for a child using the masks in *config
285 isa_find_irq(device_t child, struct isa_config *config,
295 bus_delete_resource(child, SYS_RES_IRQ, i);
314 bus_set_resource(child, SYS_RES_IRQ, i,
316 res[i] = bus_alloc_resource_any(child,
337 bus_release_resource(child, SYS_RES_IRQ,
345 * Find a working set of drqs for a child using the masks in *config
350 isa_find_drq(device_t child, struct isa_config *config,
360 bus_delete_resource(child, SYS_RES_DRQ, i);
379 bus_set_resource(child, SYS_RES_DRQ, i,
381 res[i] = bus_alloc_resource_any(child,
402 bus_release_resource(child, SYS_RES_DRQ,
414 isa_assign_resources(device_t child)
416 struct isa_device *idev = DEVTOISA(child);
427 if (!isa_find_memory(child, &ice->ice_config, cfg))
430 if (!isa_find_port(child, &ice->ice_config, cfg))
433 if (!isa_find_irq(child, &ice->ice_config, cfg))
436 if (!isa_find_drq(child, &ice->ice_config, cfg))
455 bus_print_child_header(device_get_parent(child), child);
458 isa_print_child(device_get_parent(child), child);
462 device_disable(child);
473 isa_claim_resources(device_t dev, device_t child)
475 struct isa_device *idev = DEVTOISA(child);
483 resource_list_alloc(rl, dev, child, rle->type, &rid,
496 device_t *children, child;
537 child = children[i];
538 idev = DEVTOISA(child);
543 !isa_assign_resources(child))
546 if (device_probe_and_attach(child) == 0)
547 isa_claim_resources(dev, child);
561 child = children[i];
562 idev = DEVTOISA(child);
564 if (device_is_attached(child) ||
568 err = device_probe_and_attach(child);
571 device_is_attached(child))
572 device_printf(child,
582 child = children[i];
583 idev = DEVTOISA(child);
585 if (device_is_attached(child) || TAILQ_EMPTY(&idev->id_configs))
588 if (isa_assign_resources(child)) {
589 device_probe_and_attach(child);
590 isa_claim_resources(dev, child);
600 * Add a new child with default ivars.
605 device_t child;
608 child = device_add_child_ordered(dev, order, name, unit);
609 if (child == NULL)
610 return (child);
620 device_set_ivars(child, idev);
622 return (child);
626 isa_child_deleted(device_t dev, device_t child)
628 free(device_get_ivars(child), M_ISADEV);
666 isa_probe_nomatch(device_t dev, device_t child)
669 bus_print_child_header(dev, child);
671 isa_print_all_resources(child);
672 bus_print_child_footer(dev, child);
873 isa_child_detached(device_t dev, device_t child)
875 struct isa_device* idev = DEVTOISA(child);
878 isa_claim_resources(dev, child);
901 device_t child = children[i];
902 struct isa_device *idev = DEVTOISA(child);
906 if (device_get_state(child) != DS_NOTPRESENT)
908 if (!device_is_enabled(child))
917 resource_list_release(rl, dev, child,
922 if (!isa_assign_resources(child))
925 device_probe_and_attach(child);
928 isa_claim_resources(dev, child);
935 isa_set_resource(device_t dev, device_t child, int type, int rid,
938 struct isa_device* idev = DEVTOISA(child);
961 isa_get_resource_list (device_t dev, device_t child)
963 struct isa_device* idev = DEVTOISA(child);
973 isa_add_config(device_t dev, device_t child, int priority,
976 struct isa_device* idev = DEVTOISA(child);
999 isa_set_config_callback(device_t dev, device_t child, isa_config_cb *fn,
1002 struct isa_device* idev = DEVTOISA(child);
1009 isa_pnp_probe(device_t dev, device_t child, struct isa_pnp_id *ids)
1011 struct isa_device* idev = DEVTOISA(child);
1023 device_set_desc(child, ids->ip_desc);
1033 isa_child_pnpinfo(device_t bus, device_t child, struct sbuf *sb)
1035 struct isa_device *idev = DEVTOISA(child);
1044 isa_child_location(device_t bus, device_t child, struct sbuf *sb)
1048 struct isa_device *idev = DEVTOISA(child);
1115 device_t child;
1117 child = device_add_child(dev, "isa", 0);
1118 if (child == NULL)