Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit bc6dc752 authored by Michael Neuling's avatar Michael Neuling Committed by Benjamin Herrenschmidt
Browse files

powerpc/pseries: Fix software invalidate TCE



The following added support for powernv but broke pseries/BML:
 1f1616e8 powerpc/powernv: Add TCE SW invalidation support

TCE_PCI_SW_INVAL was split into FREE and CREATE flags but the tests in
the pseries code were not updated to reflect this.

Signed-off-by: default avatarMichael Neuling <mikey@neuling.org>
cc: stable@kernel.org [v3.3+]
Signed-off-by: default avatarBenjamin Herrenschmidt <benh@kernel.crashing.org>
parent 0b17ba72
Loading
Loading
Loading
Loading
+2 −2
Original line number Original line Diff line number Diff line
@@ -106,7 +106,7 @@ static int tce_build_pSeries(struct iommu_table *tbl, long index,
		tcep++;
		tcep++;
	}
	}


	if (tbl->it_type == TCE_PCI_SWINV_CREATE)
	if (tbl->it_type & TCE_PCI_SWINV_CREATE)
		tce_invalidate_pSeries_sw(tbl, tces, tcep - 1);
		tce_invalidate_pSeries_sw(tbl, tces, tcep - 1);
	return 0;
	return 0;
}
}
@@ -121,7 +121,7 @@ static void tce_free_pSeries(struct iommu_table *tbl, long index, long npages)
	while (npages--)
	while (npages--)
		*(tcep++) = 0;
		*(tcep++) = 0;


	if (tbl->it_type == TCE_PCI_SWINV_FREE)
	if (tbl->it_type & TCE_PCI_SWINV_FREE)
		tce_invalidate_pSeries_sw(tbl, tces, tcep - 1);
		tce_invalidate_pSeries_sw(tbl, tces, tcep - 1);
}
}