|
@@ -31,9 +31,10 @@ struct dma_mapping_ops swiotlb_dma_ops = {
|
|
void pci_swiotlb_init(void)
|
|
void pci_swiotlb_init(void)
|
|
{
|
|
{
|
|
/* don't initialize swiotlb if iommu=off (no_iommu=1) */
|
|
/* don't initialize swiotlb if iommu=off (no_iommu=1) */
|
|
- if (!iommu_detected && !no_iommu &&
|
|
|
|
- (end_pfn > MAX_DMA32_PFN || force_iommu))
|
|
|
|
|
|
+ if (!iommu_detected && !no_iommu && end_pfn > MAX_DMA32_PFN)
|
|
swiotlb = 1;
|
|
swiotlb = 1;
|
|
|
|
+ if (swiotlb_force)
|
|
|
|
+ swiotlb = 1;
|
|
if (swiotlb) {
|
|
if (swiotlb) {
|
|
printk(KERN_INFO "PCI-DMA: Using software bounce buffering for IO (SWIOTLB)\n");
|
|
printk(KERN_INFO "PCI-DMA: Using software bounce buffering for IO (SWIOTLB)\n");
|
|
swiotlb_init();
|
|
swiotlb_init();
|