Lines Matching full:root
43 struct eisa_root_device *root, in is_forced_dev() argument
49 x = (root->bus_nr << 8) | edev->slot; in is_forced_dev()
187 static int __init eisa_init_device(struct eisa_root_device *root, in eisa_init_device() argument
195 sig_addr = SLOT_ADDRESS(root, slot) + EISA_VENDOR_ID_OFFSET; in eisa_init_device()
203 edev->state = inb(SLOT_ADDRESS(root, slot) + EISA_CONFIG_OFFSET) in eisa_init_device()
205 edev->base_addr = SLOT_ADDRESS(root, slot); in eisa_init_device()
206 edev->dma_mask = root->dma_mask; /* Default DMA mask */ in eisa_init_device()
208 edev->dev.parent = root->dev; in eisa_init_device()
212 dev_set_name(&edev->dev, "%02X:%02X", root->bus_nr, slot); in eisa_init_device()
222 if (is_forced_dev(enable_dev, enable_dev_count, root, edev)) in eisa_init_device()
225 if (is_forced_dev(disable_dev, disable_dev_count, root, edev)) in eisa_init_device()
260 static int __init eisa_request_resources(struct eisa_root_device *root, in eisa_request_resources() argument
280 edev->res[i].start = SLOT_ADDRESS(root, slot) in eisa_request_resources()
286 edev->res[i].start = SLOT_ADDRESS(root, slot) in eisa_request_resources()
292 if (request_resource(root->res, &edev->res[i])) in eisa_request_resources()
314 static int __init eisa_probe(struct eisa_root_device *root) in eisa_probe() argument
320 dev_info(root->dev, "Probing EISA bus %d\n", root->bus_nr); in eisa_probe()
323 * here, simply fail, unless root->force_probe is set. */ in eisa_probe()
329 if (eisa_request_resources(root, edev, 0)) { in eisa_probe()
330 dev_warn(root->dev, in eisa_probe()
333 if (!root->force_probe) in eisa_probe()
338 if (eisa_init_device(root, edev, 0)) { in eisa_probe()
341 if (!root->force_probe) in eisa_probe()
357 for (c = 0, i = 1; i <= root->slots; i++) { in eisa_probe()
360 dev_err(root->dev, "EISA: Out of memory for slot %d\n", in eisa_probe()
365 if (eisa_request_resources(root, edev, i)) { in eisa_probe()
366 dev_warn(root->dev, in eisa_probe()
373 if (eisa_init_device(root, edev, i)) { in eisa_probe()
401 dev_info(root->dev, "EISA: Detected %d card%s\n", c, c == 1 ? "" : "s"); in eisa_probe()
406 .name = "EISA root resource",
414 int __init eisa_root_register(struct eisa_root_device *root) in eisa_root_register() argument
419 * been already registered. This prevents the virtual root in eisa_root_register()
423 root->eisa_root_res.name = eisa_root_res.name; in eisa_root_register()
424 root->eisa_root_res.start = root->res->start; in eisa_root_register()
425 root->eisa_root_res.end = root->res->end; in eisa_root_register()
426 root->eisa_root_res.flags = IORESOURCE_BUSY; in eisa_root_register()
428 err = request_resource(&eisa_root_res, &root->eisa_root_res); in eisa_root_register()
432 root->bus_nr = eisa_bus_count++; in eisa_root_register()
434 err = eisa_probe(root); in eisa_root_register()
436 release_resource(&root->eisa_root_res); in eisa_root_register()