diff options
author | Will Deacon <will@kernel.org> | 2020-12-08 15:21:49 +0000 |
---|---|---|
committer | Will Deacon <will@kernel.org> | 2020-12-08 15:21:49 +0000 |
commit | c74009f5290d6679ecb865b5d795508df7ad599f (patch) | |
tree | 1c619442a83c776eddbb1cb4b722d8822cf670ec /drivers/iommu/arm/arm-smmu/arm-smmu-qcom.c | |
parent | 113eb4ce4fc33ef3deda1431497811d43342c0cc (diff) | |
parent | 4165bf015ba9454f45beaad621d16c516d5c5afe (diff) | |
download | linux-stable-c74009f5290d6679ecb865b5d795508df7ad599f.tar.gz linux-stable-c74009f5290d6679ecb865b5d795508df7ad599f.tar.bz2 linux-stable-c74009f5290d6679ecb865b5d795508df7ad599f.zip |
Merge branch 'for-next/iommu/fixes' into for-next/iommu/core
Merge in IOMMU fixes for 5.10 in order to resolve conflicts against the
queue for 5.11.
* for-next/iommu/fixes:
iommu/amd: Set DTE[IntTabLen] to represent 512 IRTEs
iommu/vt-d: Don't read VCCAP register unless it exists
x86/tboot: Don't disable swiotlb when iommu is forced on
iommu: Check return of __iommu_attach_device()
arm-smmu-qcom: Ensure the qcom_scm driver has finished probing
iommu/amd: Enforce 4k mapping for certain IOMMU data structures
MAINTAINERS: Temporarily add myself to the IOMMU entry
iommu/vt-d: Fix compile error with CONFIG_PCI_ATS not set
iommu/vt-d: Avoid panic if iommu init fails in tboot system
iommu/vt-d: Cure VF irqdomain hickup
x86/platform/uv: Fix copied UV5 output archtype
x86/platform/uv: Drop last traces of uv_flush_tlb_others
Diffstat (limited to 'drivers/iommu/arm/arm-smmu/arm-smmu-qcom.c')
-rw-r--r-- | drivers/iommu/arm/arm-smmu/arm-smmu-qcom.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/iommu/arm/arm-smmu/arm-smmu-qcom.c b/drivers/iommu/arm/arm-smmu/arm-smmu-qcom.c index add1859b2899..5dff7ffbef11 100644 --- a/drivers/iommu/arm/arm-smmu/arm-smmu-qcom.c +++ b/drivers/iommu/arm/arm-smmu/arm-smmu-qcom.c @@ -309,6 +309,10 @@ static struct arm_smmu_device *qcom_smmu_create(struct arm_smmu_device *smmu, { struct qcom_smmu *qsmmu; + /* Check to make sure qcom_scm has finished probing */ + if (!qcom_scm_is_available()) + return ERR_PTR(-EPROBE_DEFER); + qsmmu = devm_krealloc(smmu->dev, smmu, sizeof(*qsmmu), GFP_KERNEL); if (!qsmmu) return ERR_PTR(-ENOMEM); |