aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorRam Pai <linuxram@us.ibm.com>2011-07-25 13:08:39 -0700
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2012-11-26 11:34:57 -0800
commit36720ae8b37c324a1c2e8ad9652f08b180081861 (patch)
tree1ac41bfecb4a2ce4bb34382479865ec8fb61821d /include
parent95eb6d3d6ea9d8788c1268be35a8e70db2025f07 (diff)
downloadkernel_samsung_smdk4412-36720ae8b37c324a1c2e8ad9652f08b180081861.zip
kernel_samsung_smdk4412-36720ae8b37c324a1c2e8ad9652f08b180081861.tar.gz
kernel_samsung_smdk4412-36720ae8b37c324a1c2e8ad9652f08b180081861.tar.bz2
PCI : ability to relocate assigned pci-resources
commit 2bbc6942273b5b3097bd265d82227bdd84b351b2 upstream. Currently pci-bridges are allocated enough resources to satisfy their immediate requirements. Any additional resource-requests fail if additional free space, contiguous to the one already allocated, is not available. This behavior is not reasonable since sufficient contiguous resources, that can satisfy the request, are available at a different location. This patch provides the ability to expand and relocate a allocated resource. v2: Changelog: Fixed size calculation in pci_reassign_resource() v3: Changelog : Split this patch. The resource.c changes are already upstream. All the pci driver changes are in here. Signed-off-by: Ram Pai <linuxram@us.ibm.com> Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org> Cc: Andrew Worsley <amworsley@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'include')
-rw-r--r--include/linux/pci.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/linux/pci.h b/include/linux/pci.h
index c446b5c..f39d894 100644
--- a/include/linux/pci.h
+++ b/include/linux/pci.h
@@ -800,6 +800,7 @@ int __pci_reset_function(struct pci_dev *dev);
int pci_reset_function(struct pci_dev *dev);
void pci_update_resource(struct pci_dev *dev, int resno);
int __must_check pci_assign_resource(struct pci_dev *dev, int i);
+int __must_check pci_reassign_resource(struct pci_dev *dev, int i, resource_size_t add_size, resource_size_t align);
int pci_select_bars(struct pci_dev *dev, unsigned long flags);
/* ROM control related routines */