Lines Matching refs:root
44 struct eisa_root_device *root, in is_forced_dev() argument
50 x = (root->bus_nr << 8) | edev->slot; in is_forced_dev()
188 static int __init eisa_init_device(struct eisa_root_device *root, in eisa_init_device() argument
196 sig_addr = SLOT_ADDRESS(root, slot) + EISA_VENDOR_ID_OFFSET; in eisa_init_device()
204 edev->state = inb(SLOT_ADDRESS(root, slot) + EISA_CONFIG_OFFSET) in eisa_init_device()
206 edev->base_addr = SLOT_ADDRESS(root, slot); in eisa_init_device()
207 edev->dma_mask = root->dma_mask; /* Default DMA mask */ in eisa_init_device()
209 edev->dev.parent = root->dev; in eisa_init_device()
213 dev_set_name(&edev->dev, "%02X:%02X", root->bus_nr, slot); in eisa_init_device()
223 if (is_forced_dev(enable_dev, enable_dev_count, root, edev)) in eisa_init_device()
226 if (is_forced_dev(disable_dev, disable_dev_count, root, edev)) in eisa_init_device()
261 static int __init eisa_request_resources(struct eisa_root_device *root, in eisa_request_resources() argument
281 edev->res[i].start = SLOT_ADDRESS(root, slot) in eisa_request_resources()
287 edev->res[i].start = SLOT_ADDRESS(root, slot) in eisa_request_resources()
293 if (request_resource(root->res, &edev->res[i])) in eisa_request_resources()
315 static int __init eisa_probe(struct eisa_root_device *root) in eisa_probe() argument
321 dev_info(root->dev, "Probing EISA bus %d\n", root->bus_nr); in eisa_probe()
330 if (eisa_request_resources(root, edev, 0)) { in eisa_probe()
331 dev_warn(root->dev, in eisa_probe()
334 if (!root->force_probe) in eisa_probe()
339 if (eisa_init_device(root, edev, 0)) { in eisa_probe()
342 if (!root->force_probe) in eisa_probe()
358 for (c = 0, i = 1; i <= root->slots; i++) { in eisa_probe()
361 dev_err(root->dev, "EISA: Out of memory for slot %d\n", in eisa_probe()
366 if (eisa_request_resources(root, edev, i)) { in eisa_probe()
367 dev_warn(root->dev, in eisa_probe()
374 if (eisa_init_device(root, edev, i)) { in eisa_probe()
402 dev_info(root->dev, "EISA: Detected %d card%s\n", c, c == 1 ? "" : "s"); in eisa_probe()
415 int __init eisa_root_register(struct eisa_root_device *root) in eisa_root_register() argument
424 root->eisa_root_res.name = eisa_root_res.name; in eisa_root_register()
425 root->eisa_root_res.start = root->res->start; in eisa_root_register()
426 root->eisa_root_res.end = root->res->end; in eisa_root_register()
427 root->eisa_root_res.flags = IORESOURCE_BUSY; in eisa_root_register()
429 err = request_resource(&eisa_root_res, &root->eisa_root_res); in eisa_root_register()
433 root->bus_nr = eisa_bus_count++; in eisa_root_register()
435 err = eisa_probe(root); in eisa_root_register()
437 release_resource(&root->eisa_root_res); in eisa_root_register()