arm64: tegra: Fix insecure SMMU users for Tegra186

Commit 954a03be03 ("iommu/arm-smmu: Break insecure users by disabling
bypass by default") intentionally breaks all devices using the SMMU in
bypass mode. This is breaking various devices on Tegra186 which include
the ethernet, BPMP and HDA device. Fix this by populating the iommus
property for these devices with their stream ID.

Fixes: 954a03be03 ("iommu/arm-smmu: Break insecure users by disabling bypass by default")
Signed-off-by: Jonathan Hunter <jonathanh@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
This commit is contained in:
Jonathan Hunter 2019-05-02 14:27:21 +01:00 committed by Thierry Reding
parent 2f03e39b5b
commit dfdbf16c50
1 changed files with 3 additions and 0 deletions

View File

@ -60,6 +60,7 @@
clock-names = "master_bus", "slave_bus", "rx", "tx", "ptp_ref"; clock-names = "master_bus", "slave_bus", "rx", "tx", "ptp_ref";
resets = <&bpmp TEGRA186_RESET_EQOS>; resets = <&bpmp TEGRA186_RESET_EQOS>;
reset-names = "eqos"; reset-names = "eqos";
iommus = <&smmu TEGRA186_SID_EQOS>;
status = "disabled"; status = "disabled";
snps,write-requests = <1>; snps,write-requests = <1>;
@ -338,6 +339,7 @@
<&bpmp TEGRA186_RESET_HDA2CODEC_2X>; <&bpmp TEGRA186_RESET_HDA2CODEC_2X>;
reset-names = "hda", "hda2hdmi", "hda2codec_2x"; reset-names = "hda", "hda2hdmi", "hda2codec_2x";
power-domains = <&bpmp TEGRA186_POWER_DOMAIN_DISP>; power-domains = <&bpmp TEGRA186_POWER_DOMAIN_DISP>;
iommus = <&smmu TEGRA186_SID_HDA>;
status = "disabled"; status = "disabled";
}; };
@ -1158,6 +1160,7 @@
bpmp: bpmp { bpmp: bpmp {
compatible = "nvidia,tegra186-bpmp"; compatible = "nvidia,tegra186-bpmp";
iommus = <&smmu TEGRA186_SID_BPMP>;
mboxes = <&hsp_top0 TEGRA_HSP_MBOX_TYPE_DB mboxes = <&hsp_top0 TEGRA_HSP_MBOX_TYPE_DB
TEGRA_HSP_DB_MASTER_BPMP>; TEGRA_HSP_DB_MASTER_BPMP>;
shmem = <&cpu_bpmp_tx &cpu_bpmp_rx>; shmem = <&cpu_bpmp_tx &cpu_bpmp_rx>;