On Mon, 2021-07-19 at 15:48 +0200, Frederic Barrat wrote:
On 16/07/2021 10:27, Leonardo Bras wrote:
quoted
Some functions assume IOMMU page size can only be 4K (pageshift ==
12).
Update them to accept any page size passed, so we can use 64K
pages.
In the process, some defines like TCE_SHIFT were made obsolete, and
then
removed.
IODA3 Revision 3.0_prd1 (OpenPowerFoundation), Figures 3.4 and 3.5
show
a RPN of 52-bit, and considers a 12-bit pageshift, so there should
be
no need of using TCE_RPN_MASK, which masks out any bit after 40 in
rpn.
It's usage removed from tce_build_pSeries(), tce_build_pSeriesLP(),
and
tce_buildmulti_pSeriesLP().
Most places had a tbl struct, so using tbl->it_page_shift was
simple.
tce_free_pSeriesLP() was a special case, since callers not always
have a
tbl struct, so adding a tceshift parameter seems the right thing to
do.
Signed-off-by: Leonardo Bras <redacted>
Reviewed-by: Alexey Kardashevskiy <redacted>
---
FWIW,
Reviewed-by: Frederic Barrat <redacted>
Thanks!