WSL2-Linux-Kernel/drivers/iommu
Dmitry Osipenko 8dfd0fa6ec iommu/tegra-smmu: Make tegra_smmu_probe_device() to handle all IOMMU phandles
The tegra_smmu_probe_device() handles only the first IOMMU device-tree
phandle, skipping the rest. Devices like 3D module on Tegra30 have
multiple IOMMU phandles, one for each h/w block, and thus, only one
IOMMU phandle is added to fwspec for the 3D module, breaking GPU.
Previously this problem was masked by tegra_smmu_attach_dev() which
didn't use the fwspec, but parsed the DT by itself. The previous commit
to tegra-smmu driver partially reverted changes that caused problems for
T124 and now we have tegra_smmu_attach_dev() that uses the fwspec and
the old-buggy variant of tegra_smmu_probe_device() which skips secondary
IOMMUs.

Make tegra_smmu_probe_device() not to skip the secondary IOMMUs. This
fixes a partially attached IOMMU of the 3D module on Tegra30 and now GPU
works properly once again.

Fixes: 765a9d1d02 ("iommu/tegra-smmu: Fix mc errors on tegra124-nyan")
Signed-off-by: Dmitry Osipenko <digetx@gmail.com>
Tested-by: Nicolin Chen <nicoleotsuka@gmail.com>
Link: https://lore.kernel.org/r/20210312155439.18477-1-digetx@gmail.com
Signed-off-by: Joerg Roedel <jroedel@suse.de>
2021-03-18 11:31:12 +01:00
..
amd iommu/amd: Keep track of amd_iommu_irq_remap state 2021-03-18 10:46:49 +01:00
arm Merge branch 'for-joerg/mtk' into for-joerg/arm-smmu/updates 2021-02-01 12:59:28 +00:00
intel iommu/vt-d: Fix status code for Allocate/Free PASID command 2021-03-04 13:32:04 +01:00
Kconfig iommu/arm-smmu-v3: Implement iommu_sva_bind/unbind() 2020-11-23 14:16:55 +00:00
Makefile iommu/sva: Add PASID helpers 2020-11-23 14:16:55 +00:00
dma-iommu.c IOMMU Fixes for Linux v5.12-rc1 2021-03-05 12:26:24 -08:00
exynos-iommu.c
fsl_pamu.c
fsl_pamu.h
fsl_pamu_domain.c
fsl_pamu_domain.h
hyperv-iommu.c iommu/hyperv: setup an IO-APIC IRQ remapping domain for root partition 2021-02-11 08:47:07 +00:00
io-pgtable-arm-v7s.c iommu/io-pgtable-arm-v7s: Quad lvl1 pgtable for MediaTek 2021-02-01 11:31:17 +00:00
io-pgtable-arm.c IOMMU updates for 5.11 2020-12-16 13:58:47 -08:00
io-pgtable-arm.h
io-pgtable.c iommu/amd: Prepare for generic IO page table framework 2021-01-28 16:51:17 +01:00
ioasid.c iommu/ioasid: Add ioasid references 2020-11-23 14:16:55 +00:00
iommu-debugfs.c
iommu-sva-lib.c iommu/sva: Add PASID helpers 2020-11-23 14:16:55 +00:00
iommu-sva-lib.h iommu/sva: Add PASID helpers 2020-11-23 14:16:55 +00:00
iommu-sysfs.c
iommu-traces.c
iommu.c Merge branches 'arm/renesas', 'arm/smmu', 'x86/amd', 'x86/vt-d' and 'core' into next 2021-02-12 15:27:17 +01:00
iova.c iova: Stop exporting some more functions 2021-01-27 12:28:58 +01:00
ipmmu-vmsa.c iommu/ipmmu-vmsa: Allow SDHI devices 2021-01-29 09:27:21 +01:00
irq_remapping.c x86: Kill all traces of irq_remapping_get_irq_domain() 2020-10-28 20:26:28 +01:00
irq_remapping.h x86: Kill all traces of irq_remapping_get_irq_domain() 2020-10-28 20:26:28 +01:00
msm_iommu.c iommu/msm: Hook up iotlb_sync_map 2021-01-28 20:29:56 +00:00
msm_iommu.h
msm_iommu_hw-8xxx.h
mtk_iommu.c iommu/mediatek: Fix error code in probe() 2021-02-08 09:11:06 +01:00
mtk_iommu.h iommu/mediatek: Add mt8192 support 2021-02-01 11:31:19 +00:00
mtk_iommu_v1.c
of_iommu.c
omap-iommu-debug.c
omap-iommu.c
omap-iommu.h
omap-iopgtable.h
rockchip-iommu.c
s390-iommu.c
sun50i-iommu.c
tegra-gart.c iommu: Switch gather->end to the inclusive end 2021-01-27 12:32:27 +00:00
tegra-smmu.c iommu/tegra-smmu: Make tegra_smmu_probe_device() to handle all IOMMU phandles 2021-03-18 11:31:12 +01:00
virtio-iommu.c