aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>2010-08-19 13:34:58 -0400
committerKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>2010-10-18 10:49:38 -0400
commit74226b8c8a0b10841129916191205095af928da5 (patch)
tree641bd6e96004d432806ad781ee090515e82b14f5
parent956a9202cd1220397933a07beda9f96b3df1fa24 (diff)
downloadmrst-s0i3-test-74226b8c8a0b10841129916191205095af928da5.tar.gz
mrst-s0i3-test-74226b8c8a0b10841129916191205095af928da5.tar.xz
mrst-s0i3-test-74226b8c8a0b10841129916191205095af928da5.zip
xen/pci: Request ACS when Xen-SWIOTLB is activated.
It used to done in the Xen startup code but that is not really appropiate. [v2: Update Kconfig with PCI requirement] Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
-rw-r--r--arch/x86/xen/pci-swiotlb-xen.c4
-rw-r--r--drivers/xen/Kconfig2
2 files changed, 5 insertions, 1 deletions
diff --git a/arch/x86/xen/pci-swiotlb-xen.c b/arch/x86/xen/pci-swiotlb-xen.c
index a013ec9d0c5..be4d80a6fae 100644
--- a/arch/x86/xen/pci-swiotlb-xen.c
+++ b/arch/x86/xen/pci-swiotlb-xen.c
@@ -1,6 +1,7 @@
/* Glue code to lib/swiotlb-xen.c */
#include <linux/dma-mapping.h>
+#include <linux/pci.h>
#include <xen/swiotlb-xen.h>
#include <asm/xen/hypervisor.h>
@@ -54,5 +55,8 @@ void __init pci_xen_swiotlb_init(void)
if (xen_swiotlb) {
xen_swiotlb_init(1);
dma_ops = &xen_swiotlb_dma_ops;
+
+ /* Make sure ACS will be enabled */
+ pci_request_acs();
}
}
diff --git a/drivers/xen/Kconfig b/drivers/xen/Kconfig
index 60d71e9abe9..f70a627080e 100644
--- a/drivers/xen/Kconfig
+++ b/drivers/xen/Kconfig
@@ -74,6 +74,6 @@ config XEN_PLATFORM_PCI
config SWIOTLB_XEN
def_bool y
- depends on SWIOTLB
+ depends on PCI && SWIOTLB
endmenu