android_kernel_samsung_a7y1.../arch/powerpc
Alexey Kardashevskiy 2e4189b44d powerpc/pseries: Allow not having ibm, hypertas-functions::hcall-multi-tce for DDW
commit 7559d3d295f3365ea7ac0c0274c05e633fe4f594 upstream.

By default a pseries guest supports a H_PUT_TCE hypercall which maps
a single IOMMU page in a DMA window. Additionally the hypervisor may
support H_PUT_TCE_INDIRECT/H_STUFF_TCE which update multiple TCEs at once;
this is advertised via the device tree /rtas/ibm,hypertas-functions
property which Linux converts to FW_FEATURE_MULTITCE.

FW_FEATURE_MULTITCE is checked when dma_iommu_ops is used; however
the code managing the huge DMA window (DDW) ignores it and calls
H_PUT_TCE_INDIRECT even if it is explicitly disabled via
the "multitce=off" kernel command line parameter.

This adds FW_FEATURE_MULTITCE checking to the DDW code path.

This changes tce_build_pSeriesLP to take liobn and page size as
the huge window does not have iommu_table descriptor which usually
the place to store these numbers.

Fixes: 4e8b0cf46b25 ("powerpc/pseries: Add support for dynamic dma windows")
Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>
Reviewed-by: Thiago Jung Bauermann <bauerman@linux.ibm.com>
Tested-by: Thiago Jung Bauermann <bauerman@linux.ibm.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20191216041924.42318-3-aik@ozlabs.ru
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2020-04-07 13:54:43 +02:00
..
boot powerpc/44x: Adjust indentation in ibm4xx_denali_fixup_memsize 2020-04-07 13:50:48 +02:00
configs A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
crypto A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
include powerpc/archrandom: fix arch_get_random_seed_int() 2020-04-07 13:39:07 +02:00
kernel powerpc/cacheinfo: add cacheinfo_teardown, cacheinfo_rebuild 2020-04-07 13:42:13 +02:00
kvm KVM: PPC: Book3S PR: Free shared page if mmu initialization fails 2020-04-07 13:50:37 +02:00
lib powerpc/lib: fix book3s/32 boot failure due to code patching 2020-04-06 17:01:53 +02:00
math-emu A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
mm powerpc: Ensure that swiotlb buffer is allocated from low memory 2020-04-07 13:28:44 +02:00
net A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
oprofile A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
perf A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
platforms powerpc/pseries: Allow not having ibm, hypertas-functions::hcall-multi-tce for DDW 2020-04-07 13:54:43 +02:00
sysdev soc/fsl/qe: Fix an error code in qe_pin_request() 2020-04-07 13:41:16 +02:00
xmon powerpc/xmon: fix dump_segments() 2020-04-07 12:42:01 +02:00
Kconfig of: Add OF_DMA_DEFAULT_COHERENT & select it on powerpc 2020-04-07 13:50:01 +02:00
Kconfig.debug A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
Makefile powerpc: vdso: Make vdso32 installation conditional in vdso_install 2020-04-07 13:41:29 +02:00
relocs_check.sh A750FXXU4CTBC 2020-03-27 21:51:54 +05:30