[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <9b2a681e-1191-4cf7-8da7-14aa2c1fa455@arm.com>
Date: Tue, 19 Mar 2024 13:53:32 +0000
From: Robin Murphy <robin.murphy@....com>
To: Konrad Dybcio <konrad.dybcio@...aro.org>,
Bjorn Andersson <andersson@...nel.org>, Rob Herring <robh+dt@...nel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@...aro.org>,
Conor Dooley <conor+dt@...nel.org>, Will Deacon <will@...nel.org>,
Joerg Roedel <joro@...tes.org>, Rob Herring <robh@...nel.org>
Cc: Marijn Suijten <marijn.suijten@...ainline.org>,
linux-arm-msm@...r.kernel.org, devicetree@...r.kernel.org,
linux-kernel@...r.kernel.org, linux-arm-kernel@...ts.infradead.org,
iommu@...ts.linux.dev, Johan Hovold <johan+linaro@...nel.org>
Subject: Re: [PATCH v2 1/2] dt-bindings: iommu: arm,smmu-v3: Add SC8280XP
compatible
On 2024-03-09 1:31 pm, Konrad Dybcio wrote:
> The smmu-v3 binding currently doesn't differentiate the SoCs it's
> implemented on. This is a poor design choice that may bite in the future,
> should any quirks surface.
That doesn't seem entirely fair to say - the vast majority of bindings
don't have separate compatibles for every known integration of the same
implementation in different SoCs. And in this case we don't have
per-implementation compatibles for quirks and errata because the
implementation is architecturally discoverable from the SMMU_IIDR register.
We have the whole mess for QCom SMMUv2 because the effective
*implementation* is a mix of hardware and hypervisor, whose behaviour
does seem to vary on almost a per-SoC basis. I'm not at all keen to
start repeating that here without very good reason, and that of
"documenting" a device which we typically expect to not even be
accessible isn't really convincing me...
Thanks,
Robin.
>
> Add a compatible for the instance found on Qualcomm SC8280XP.
>
> Signed-off-by: Konrad Dybcio <konrad.dybcio@...aro.org>
> ---
> Documentation/devicetree/bindings/iommu/arm,smmu-v3.yaml | 6 +++++-
> 1 file changed, 5 insertions(+), 1 deletion(-)
>
> diff --git a/Documentation/devicetree/bindings/iommu/arm,smmu-v3.yaml b/Documentation/devicetree/bindings/iommu/arm,smmu-v3.yaml
> index 75fcf4cb52d9..f284f7b0c1d8 100644
> --- a/Documentation/devicetree/bindings/iommu/arm,smmu-v3.yaml
> +++ b/Documentation/devicetree/bindings/iommu/arm,smmu-v3.yaml
> @@ -20,7 +20,11 @@ properties:
> $nodename:
> pattern: "^iommu@[0-9a-f]*"
> compatible:
> - const: arm,smmu-v3
> + oneOf:
> + - items:
> + - const: qcom,sc8280xp-smmu-v3
> + - const: arm,smmu-v3
> + - const: arm,smmu-v3
>
> reg:
> maxItems: 1
>
Powered by blists - more mailing lists