Commit d3d753f2 authored by Konrad Dybcio's avatar Konrad Dybcio Committed by Yassine Oudjana
Browse files

arm-smmu: implement qcom,no-smr-check

Some SMMUs happen to crash the entire platform when the SMRs are checked.
To avoid that behaviour, introduce a property to skip the checking.

This is required on at least one platform (sdm630) for the multimedia
SMMU to function properly.
Signed-off-by: Konrad Dybcio's avatarKonrad Dybcio <>
parent 092f8ee1
......@@ -119,6 +119,12 @@ properties:
access to SMMU configuration registers. In this case non-secure aliases of
secure registers have to be used during SMMU configuration.
description: |
As the name suggests, this property skips checking of SMRs.
This is required for some SMMUs to function properly, mostly
concerning ones associated with the multimedia subsystem.
$ref: /schemas/types.yaml#/definitions/uint32
description: |
......@@ -946,8 +946,15 @@ static void arm_smmu_test_smr_masks(struct arm_smmu_device *smmu)
u32 smr;
int i;
if (!smmu->smrs)
if (!smmu->smrs && !(of_find_property(smmu->dev->of_node, "qcom,no-smr-check", NULL)))
if (of_find_property(smmu->dev->of_node, "qcom,no-smr-check", NULL)) {
smmu->streamid_mask = 0x7FFF;
smmu->smr_mask_mask = 0x7FFF;
* If we've had to accommodate firmware memory regions, we may
* have live SMRs by now; tread carefully...
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment