aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux
diff options
context:
space:
mode:
authorEric W. Biederman <ebiederm@aristanetworks.com>2009-09-09 17:09:24 -0400
committerJesse Barnes <jbarnes@virtuousgeek.org>2009-09-09 17:10:24 -0400
commit28760489a3f1e136c5ae8581c0fa8f63511f2f4c (patch)
treea3c890e9c8d9e98385691d56f5c007d280514fe5 /include/linux
parent0ba379ec0fb182a87b8891c5754abbcd9c035b4f (diff)
PCI: pcie: Ensure hotplug ports have a minimum number of resources
In general a BIOS may goof or we may hotplug in a hotplug controller. In either case the kernel needs to reserve resources for plugging in more devices in the future instead of creating a minimal resource assignment. We already do this for cardbus bridges I am just adding a variant for pcie bridges. v2: Make testing for pcie hotplug bridges based on a flag. So far we only set the flag for pcie but a header_quirk could easily be added for the non-standard pci hotplug bridges. Signed-off-by: Eric W. Biederman <ebiederm@aristanetworks.com> Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/pci.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/include/linux/pci.h b/include/linux/pci.h
index d75668317705..d80ed872a3c4 100644
--- a/include/linux/pci.h
+++ b/include/linux/pci.h
@@ -278,6 +278,7 @@ struct pci_dev {
278 unsigned int is_physfn:1; 278 unsigned int is_physfn:1;
279 unsigned int is_virtfn:1; 279 unsigned int is_virtfn:1;
280 unsigned int reset_fn:1; 280 unsigned int reset_fn:1;
281 unsigned int is_hotplug_bridge:1;
281 pci_dev_flags_t dev_flags; 282 pci_dev_flags_t dev_flags;
282 atomic_t enable_cnt; /* pci_enable_device has been called */ 283 atomic_t enable_cnt; /* pci_enable_device has been called */
283 284
@@ -1245,6 +1246,9 @@ extern int pci_pci_problems;
1245extern unsigned long pci_cardbus_io_size; 1246extern unsigned long pci_cardbus_io_size;
1246extern unsigned long pci_cardbus_mem_size; 1247extern unsigned long pci_cardbus_mem_size;
1247 1248
1249extern unsigned long pci_hotplug_io_size;
1250extern unsigned long pci_hotplug_mem_size;
1251
1248int pcibios_add_platform_entries(struct pci_dev *dev); 1252int pcibios_add_platform_entries(struct pci_dev *dev);
1249void pcibios_disable_device(struct pci_dev *dev); 1253void pcibios_disable_device(struct pci_dev *dev);
1250int pcibios_set_pcie_reset_state(struct pci_dev *dev, 1254int pcibios_set_pcie_reset_state(struct pci_dev *dev,