projects
/
linux-2.6-microblaze.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge remote-tracking branch 'torvalds/master' into perf/core
[linux-2.6-microblaze.git]
/
drivers
/
pci
/
of.c
diff --git
a/drivers/pci/of.c
b/drivers/pci/of.c
index
da5b414
..
a143b02
100644
(file)
--- a/
drivers/pci/of.c
+++ b/
drivers/pci/of.c
@@
-103,6
+103,13
@@
struct irq_domain *pci_host_bridge_of_msi_domain(struct pci_bus *bus)
#endif
}
#endif
}
+bool pci_host_of_has_msi_map(struct device *dev)
+{
+ if (dev && dev->of_node)
+ return of_get_property(dev->of_node, "msi-map", NULL);
+ return false;
+}
+
static inline int __of_pci_pci_compare(struct device_node *node,
unsigned int data)
{
static inline int __of_pci_pci_compare(struct device_node *node,
unsigned int data)
{
@@
-346,6
+353,8
@@
static int devm_of_pci_get_host_bridge_resources(struct device *dev,
dev_warn(dev, "More than one I/O resource converted for %pOF. CPU base address for old range lost!\n",
dev_node);
*io_base = range.cpu_addr;
dev_warn(dev, "More than one I/O resource converted for %pOF. CPU base address for old range lost!\n",
dev_node);
*io_base = range.cpu_addr;
+ } else if (resource_type(res) == IORESOURCE_MEM) {
+ res->flags &= ~IORESOURCE_MEM_64;
}
pci_add_resource_offset(resources, res, res->start - range.pci_addr);
}
pci_add_resource_offset(resources, res, res->start - range.pci_addr);