Lines Matching +full:ecam +full:- +full:based
2 * Low-Level PCI Support for PC
4 * (c) 1999--2000 Martin Mares <mj@ucw.cz>
9 #include <linux/pci-acpi.h>
33 int pcibios_last_bus = -1;
42 return raw_pci_ops->read(domain, bus, devfn, reg, len, val); in raw_pci_read()
44 return raw_pci_ext_ops->read(domain, bus, devfn, reg, len, val); in raw_pci_read()
45 return -EINVAL; in raw_pci_read()
52 return raw_pci_ops->write(domain, bus, devfn, reg, len, val); in raw_pci_write()
54 return raw_pci_ext_ops->write(domain, bus, devfn, reg, len, val); in raw_pci_write()
55 return -EINVAL; in raw_pci_write()
60 return raw_pci_read(pci_domain_nr(bus), bus->number, in pci_read()
66 return raw_pci_write(pci_domain_nr(bus), bus->number, in pci_write()
76 * This interrupt-safe spinlock protects all accesses to PCI configuration
77 * space, except for the mmconfig (ECAM) based operations.
84 printk(KERN_INFO "PCI: %s detected, can skip ISA alignment\n", d->ident); in can_skip_ioresource_align()
127 struct resource *rom_r = &dev->resource[PCI_ROM_RESOURCE]; in pcibios_fixup_device_resources()
138 bar_r = &dev->resource[bar]; in pcibios_fixup_device_resources()
139 if (bar_r->start == 0 && bar_r->end != 0) { in pcibios_fixup_device_resources()
140 bar_r->flags = 0; in pcibios_fixup_device_resources()
141 bar_r->end = 0; in pcibios_fixup_device_resources()
147 if (rom_r->parent) in pcibios_fixup_device_resources()
149 if (rom_r->start) { in pcibios_fixup_device_resources()
153 rom_r->start = rom_r->end = rom_r->flags = 0; in pcibios_fixup_device_resources()
167 list_for_each_entry(dev, &b->devices, bus_list) in pcibios_fixup_bus()
190 printk(KERN_INFO "PCI: %s detected, enabling pci=bfsort.\n", d->ident); in set_bf_sort()
200 if (dm->type != 0xB1) in read_dmi_type_b1()
220 " (pci=assign-busses)\n", d->ident); in assign_all_busses()
228 d->ident); in set_scan_all()
236 * Laptops which need pci=assign-busses to see Cardbus cards
467 sd->node = x86_pci_root_bus_node(busnum); in pcibios_scan_root()
489 if (c->x86_clflush_size > 0) { in pcibios_set_cache_line_size()
490 pci_dfl_cache_line_size = c->x86_clflush_size >> 2; in pcibios_set_cache_line_size()
587 } else if (!strcmp(str, "assign-busses")) { in pcibios_setup()
611 if (noioapicreroute != -1) in pcibios_setup()
615 if (noioapicreroute != -1) in pcibios_setup()
634 list_add(&domain->node, &dma_domain_list); in add_dma_domain()
642 list_del(&domain->node); in del_dma_domain()
653 if (pci_domain_nr(pdev->bus) == domain->domain_nr) { in set_dma_domain_ops()
654 pdev->dev.dma_ops = domain->dma_ops; in set_dma_domain_ops()
666 if (is_vmd(pdev->bus)) in set_dev_domain_options()
667 pdev->hotplug_user_indicators = 1; in set_dev_domain_options()
680 return -ENOMEM; in pcibios_add_device()
682 if (data->type == SETUP_PCI) { in pcibios_add_device()
685 if ((pci_domain_nr(dev->bus) == rom->segment) && in pcibios_add_device()
686 (dev->bus->number == rom->bus) && in pcibios_add_device()
687 (PCI_SLOT(dev->devfn) == rom->device) && in pcibios_add_device()
688 (PCI_FUNC(dev->devfn) == rom->function) && in pcibios_add_device()
689 (dev->vendor == rom->vendor) && in pcibios_add_device()
690 (dev->device == rom->devid)) { in pcibios_add_device()
691 dev->rom = pa_data + in pcibios_add_device()
693 dev->romlen = rom->pcilen; in pcibios_add_device()
696 pa_data = data->next; in pcibios_add_device()
725 if (atomic_dec_return(&dev->enable_cnt) >= 0) in pcibios_release_device()