2
0
mirror of https://github.com/edk2-porting/linux-next.git synced 2024-12-18 10:13:57 +08:00
linux-next/drivers/pci
Ivan Kokshaysky 884525655d PCI: clean up resource alignment management
Done per Linus' request and suggestions. Linus has explained that
better than I'll be able to explain:

On Thu, Mar 27, 2008 at 10:12:10AM -0700, Linus Torvalds wrote:
> Actually, before we go any further, there might be a less intrusive
> alternative: add just a couple of flags to the resource flags field (we
> still have something like 8 unused bits on 32-bit), and use those to
> implement a generic "resource_alignment()" routine.
>
> Two flags would do it:
>
>  - IORESOURCE_SIZEALIGN: size indicates alignment (regular PCI device
>    resources)
>
>  - IORESOURCE_STARTALIGN: start field is alignment (PCI bus resources
>    during probing)
>
> and then the case of both flags zero (or both bits set) would actually be
> "invalid", and we would also clear the IORESOURCE_STARTALIGN flag when we
> actually allocate the resource (so that we don't use the "start" field as
> alignment incorrectly when it no longer indicates alignment).
>
> That wouldn't be totally generic, but it would have the nice property of
> automatically at least add sanity checking for that whole "res->start has
> the odd meaning of 'alignment' during probing" and remove the need for a
> new field, and it would allow us to have a generic "resource_alignment()"
> routine that just gets a resource pointer.

Besides, I removed IORESOURCE_BUS_HAS_VGA flag which was unused for ages.

Signed-off-by: Ivan Kokshaysky <ink@jurassic.park.msu.ru>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Gary Hade <garyhade@us.ibm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2008-04-20 21:47:08 -07:00
..
hotplug PCI Hotplug: the ibm driver is not dependant on PCI_LEGACY 2008-04-20 21:46:57 -07:00
pcie PCI: aerdrv_acpi.c: remove unneeded NULL check 2008-04-20 21:47:08 -07:00
.gitignore Add some basic .gitignore files 2005-10-18 08:26:15 -07:00
access.c PCI: Expose PCI VPD through sysfs 2008-04-20 21:47:07 -07:00
bus.c PCI: remove global list of PCI devices 2008-04-20 21:47:02 -07:00
dmar.c copyright owner and author clean up for intel iommu and related files 2008-02-23 17:12:14 -08:00
hotplug-pci.c PCI: fix section mismatch warning in pci_scan_child_bus 2008-03-04 15:07:03 -08:00
hotplug.c Driver core: change add_uevent_var to use a struct 2007-10-12 14:51:01 -07:00
htirq.c PCI: Use pci_find_ht_capability() in drivers/pci/htirq.c 2006-12-20 10:54:42 -08:00
intel-iommu.c PCI: iommu: iotlb flushing 2008-04-20 21:47:07 -07:00
intel-iommu.h copyright owner and author clean up for intel iommu and related files 2008-02-23 17:12:14 -08:00
iova.c PCI: iova RB tree setup tweak 2008-04-20 21:47:06 -07:00
iova.h PCI: iommu: iotlb flushing 2008-04-20 21:47:07 -07:00
Kconfig PCI: Add Kconfig option to disable deprecated pci_find_* API 2007-11-05 13:35:17 -08:00
Makefile mn10300: add the MN10300/AM33 architecture to the kernel 2008-02-08 09:22:30 -08:00
msi.c PCI: drivers/pci/msi.c: move arch hooks to the top 2008-02-01 15:04:25 -08:00
msi.h PCI: Make some MSI-X #defines generic 2006-12-01 14:36:56 -08:00
pci-acpi.c ACPI: acpi_pci_set_power_state() cleanups 2008-02-23 01:29:34 -05:00
pci-driver.c PCI: Mem Policy: fix mempolicy usage in pci driver 2008-02-01 15:04:20 -08:00
pci-sysfs.c PCI: Expose PCI VPD through sysfs 2008-04-20 21:47:07 -07:00
pci.c PCI: add PCI Express ASPM support 2008-04-20 21:47:03 -07:00
pci.h PCI: Expose PCI VPD through sysfs 2008-04-20 21:47:07 -07:00
probe.c PCI: clean up resource alignment management 2008-04-20 21:47:08 -07:00
proc.c PCI: Fix wrong reference counter check for proc_dir_entry 2008-02-21 15:34:39 -08:00
quirks.c PCI: Update VIA CX700 quirk 2008-04-20 21:47:07 -07:00
remove.c PCI: add PCI Express ASPM support 2008-04-20 21:47:03 -07:00
rom.c docbook: fix kernel-api source files 2008-03-03 10:47:14 -08:00
search.c PCI: clean up search.c a lot 2008-04-20 21:46:54 -07:00
setup-bus.c PCI: clean up resource alignment management 2008-04-20 21:47:08 -07:00
setup-irq.c kobjects: fix up improper use of the kobject name field 2007-10-12 14:51:02 -07:00
setup-res.c PCI: clean up resource alignment management 2008-04-20 21:47:08 -07:00
syscall.c PCI: remove unneeded lock_kernel() in drivers/pci/syscall.c. 2008-02-01 15:04:21 -08:00