xen/swiotlb: Use the swiotlb_late_init_with_tbl to init Xen-SWIOTLB late when PV...
authorKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Thu, 23 Aug 2012 18:36:15 +0000 (14:36 -0400)
committerKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Mon, 17 Sep 2012 16:58:16 +0000 (12:58 -0400)
commitb82776005369899c1c7ca2e4b2414bb64b538d2c
treeb07bb5fc8cd2b335f46a43791f0fc7505a57d4ac
parent5bab7864b1167f9a72d375f6854027db436a1cc1
xen/swiotlb: Use the swiotlb_late_init_with_tbl to init Xen-SWIOTLB late when PV PCI is used.

With this patch we provide the functionality to initialize the
Xen-SWIOTLB late in the bootup cycle - specifically for
Xen PCI-frontend. We still will work if the user had
supplied 'iommu=soft' on the Linux command line.

Note: We cannot depend on after_bootmem to automatically
determine whether this is early or not. This is because
when PCI IOMMUs are initialized it is after after_bootmem but
before a lot of "other" subsystems are initialized.

CC: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
[v1: Fix smatch warnings]
[v2: Added check for xen_swiotlb]
[v3: Rebased with new xen-swiotlb changes]
[v4: squashed xen/swiotlb: Depending on after_bootmem is not correct in]
Reviewed-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
arch/x86/include/asm/xen/swiotlb-xen.h
arch/x86/xen/pci-swiotlb-xen.c
drivers/xen/swiotlb-xen.c
include/xen/swiotlb-xen.h