Add fix for Tegra GPU display with IOMMU, Add QCom IOMMU for Dragonboard display

This commit is contained in:
Peter Robinson 2017-07-18 19:37:53 +01:00
parent 3ca7c65713
commit b7ab4072a1
9 changed files with 2023 additions and 7 deletions

View File

@ -0,0 +1,39 @@
From patchwork Sun Jul 9 16:36:14 2017
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Subject: ARM: tegra: Register host1x node with iommu binding on tegra124
From: Paul Kocialkowski <contact@paulk.fr>
X-Patchwork-Id: 9831825
Message-Id: <20170709163614.6746-1-contact@paulk.fr>
To: linux-arm-kernel@lists.infradead.org, linux-tegra@vger.kernel.org,
linux-kernel@vger.kernel.org
Cc: Thierry Reding <thierry.reding@gmail.com>,
Stephen Warren <swarren@wwwdotorg.org>,
Mikko Perttunen <mperttunen@nvidia.com>,
Paul Kocialkowski <contact@paulk.fr>,
Jonathan Hunter <jonathanh@nvidia.com>
Date: Sun, 9 Jul 2017 19:36:14 +0300
This registers the host1x node with the SMMU (as HC swgroup) to allow
the host1x code to attach to it. It avoid failing the probe sequence,
which resulted in the tegra drm driver not probing and thus nothing
being displayed on-screen.
Signed-off-by: Paul Kocialkowski <contact@paulk.fr>
---
arch/arm/boot/dts/tegra124.dtsi | 1 +
1 file changed, 1 insertion(+)
diff --git a/arch/arm/boot/dts/tegra124.dtsi b/arch/arm/boot/dts/tegra124.dtsi
index 187a36c6d0fc..b3b89befffeb 100644
--- a/arch/arm/boot/dts/tegra124.dtsi
+++ b/arch/arm/boot/dts/tegra124.dtsi
@@ -85,6 +85,7 @@
clocks = <&tegra_car TEGRA124_CLK_HOST1X>;
resets = <&tegra_car 28>;
reset-names = "host1x";
+ iommus = <&mc TEGRA_SWGROUP_HC>;
#address-cells = <2>;
#size-cells = <2>;

View File

@ -0,0 +1 @@
CONFIG_QCOM_IOMMU=y

View File

@ -0,0 +1 @@
CONFIG_QCOM_IOMMU=y

View File

@ -4200,6 +4200,7 @@ CONFIG_QCOM_FALKOR_ERRATUM_1009=y
CONFIG_QCOM_GSBI=y CONFIG_QCOM_GSBI=y
CONFIG_QCOM_HIDMA=m CONFIG_QCOM_HIDMA=m
CONFIG_QCOM_HIDMA_MGMT=m CONFIG_QCOM_HIDMA_MGMT=m
CONFIG_QCOM_IOMMU=y
CONFIG_QCOM_IRQ_COMBINER=y CONFIG_QCOM_IRQ_COMBINER=y
CONFIG_QCOM_L2_PMU=y CONFIG_QCOM_L2_PMU=y
CONFIG_QCOM_L3_PMU=y CONFIG_QCOM_L3_PMU=y

View File

@ -4178,6 +4178,7 @@ CONFIG_QCOM_FALKOR_ERRATUM_1009=y
CONFIG_QCOM_GSBI=y CONFIG_QCOM_GSBI=y
CONFIG_QCOM_HIDMA=m CONFIG_QCOM_HIDMA=m
CONFIG_QCOM_HIDMA_MGMT=m CONFIG_QCOM_HIDMA_MGMT=m
CONFIG_QCOM_IOMMU=y
CONFIG_QCOM_IRQ_COMBINER=y CONFIG_QCOM_IRQ_COMBINER=y
CONFIG_QCOM_L2_PMU=y CONFIG_QCOM_L2_PMU=y
CONFIG_QCOM_L3_PMU=y CONFIG_QCOM_L3_PMU=y

View File

@ -4520,6 +4520,7 @@ CONFIG_QCOM_COINCELL=m
CONFIG_QCOM_GSBI=m CONFIG_QCOM_GSBI=m
# CONFIG_QCOM_HIDMA is not set # CONFIG_QCOM_HIDMA is not set
# CONFIG_QCOM_HIDMA_MGMT is not set # CONFIG_QCOM_HIDMA_MGMT is not set
CONFIG_QCOM_IOMMU=y
CONFIG_QCOM_PM8XXX_XOADC=m CONFIG_QCOM_PM8XXX_XOADC=m
CONFIG_QCOM_PM=y CONFIG_QCOM_PM=y
CONFIG_QCOM_Q6V5_PIL=m CONFIG_QCOM_Q6V5_PIL=m

View File

@ -4498,6 +4498,7 @@ CONFIG_QCOM_COINCELL=m
CONFIG_QCOM_GSBI=m CONFIG_QCOM_GSBI=m
# CONFIG_QCOM_HIDMA is not set # CONFIG_QCOM_HIDMA is not set
# CONFIG_QCOM_HIDMA_MGMT is not set # CONFIG_QCOM_HIDMA_MGMT is not set
CONFIG_QCOM_IOMMU=y
CONFIG_QCOM_PM8XXX_XOADC=m CONFIG_QCOM_PM8XXX_XOADC=m
CONFIG_QCOM_PM=y CONFIG_QCOM_PM=y
CONFIG_QCOM_Q6V5_PIL=m CONFIG_QCOM_Q6V5_PIL=m

View File

@ -585,21 +585,21 @@ Patch302: usb-phy-tegra-Add-38.4MHz-clock-table-entry.patch
Patch303: arm-revert-mmc-omap_hsmmc-Use-dma_request_chan-for-reque.patch Patch303: arm-revert-mmc-omap_hsmmc-Use-dma_request_chan-for-reque.patch
# http://patchwork.ozlabs.org/patch/587554/ # http://patchwork.ozlabs.org/patch/587554/
Patch305: ARM-tegra-usb-no-reset.patch Patch304: ARM-tegra-usb-no-reset.patch
Patch306: AllWinner-net-emac.patch Patch305: AllWinner-net-emac.patch
# http://www.spinics.net/lists/dri-devel/msg132235.html # http://www.spinics.net/lists/dri-devel/msg132235.html
Patch309: drm-vc4-Fix-OOPSes-from-trying-to-cache-a-partially-constructed-BO..patch Patch306: drm-vc4-Fix-OOPSes-from-trying-to-cache-a-partially-constructed-BO..patch
# https://www.spinics.net/lists/arm-kernel/msg554183.html # https://www.spinics.net/lists/arm-kernel/msg554183.html
Patch311: arm-imx6-hummingboard2.patch Patch307: arm-imx6-hummingboard2.patch
Patch312: arm64-Add-option-of-13-for-FORCE_MAX_ZONEORDER.patch Patch308: arm64-Add-option-of-13-for-FORCE_MAX_ZONEORDER.patch
# https://patchwork.freedesktop.org/patch/163300/ # https://patchwork.freedesktop.org/patch/163300/
# https://patchwork.freedesktop.org/patch/161978/ # https://patchwork.freedesktop.org/patch/161978/
Patch315: bcm283x-vc4-fix-vblank.patch Patch309: bcm283x-vc4-fix-vblank.patch
# https://patchwork.kernel.org/patch/9815555/ # https://patchwork.kernel.org/patch/9815555/
# https://patchwork.kernel.org/patch/9815651/ # https://patchwork.kernel.org/patch/9815651/
@ -607,7 +607,14 @@ Patch315: bcm283x-vc4-fix-vblank.patch
# https://patchwork.kernel.org/patch/9820417/ # https://patchwork.kernel.org/patch/9820417/
# https://patchwork.kernel.org/patch/9821151/ # https://patchwork.kernel.org/patch/9821151/
# https://patchwork.kernel.org/patch/9821157/ # https://patchwork.kernel.org/patch/9821157/
Patch316: qcom-msm89xx-fixes.patch Patch310: qcom-msm89xx-fixes.patch
# https://patchwork.kernel.org/patch/9831825/
# https://patchwork.kernel.org/patch/9833721/
Patch311: arm-tegra-fix-gpu-iommu.patch
# https://www.spinics.net/lists/linux-arm-msm/msg28203.html
Patch312: qcom-display-iommu.patch
# 400 - IBM (ppc/s390x) patches # 400 - IBM (ppc/s390x) patches
@ -2180,6 +2187,10 @@ fi
# #
# #
%changelog %changelog
* Tue Jul 18 2017 Peter Robinson <pbrobinson@fedoraproject.org>
- Add fix for Tegra GPU display with IOMMU
- Add QCom IOMMU for Dragonboard display
* Tue Jul 18 2017 Laura Abbott <labbott@fedoraproject.org> - 4.13.0-0.rc1.git1.1 * Tue Jul 18 2017 Laura Abbott <labbott@fedoraproject.org> - 4.13.0-0.rc1.git1.1
- Linux v4.13-rc1-24-gcb8c65ccff7f - Linux v4.13-rc1-24-gcb8c65ccff7f

1960
qcom-display-iommu.patch Normal file

File diff suppressed because it is too large Load Diff