summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVikash Garodia <vikash.garodia@oss.qualcomm.com>2026-07-22 19:11:19 +0530
committerBryan O'Donoghue <bod@kernel.org>2026-09-29 12:05:40 +0100
commitfe12ccf5a98fe11f43f2db9dcb45147a11104301 (patch)
tree28af6e3bbe6d3a1315f56210273b5f4151bd6e31
parentfecab9ef2b91edbdcfb0e6a1dc50fe3e246f28be (diff)
dt-bindings: media: qcom,qcm2290-venus: document shikra venus compatible
Document the venus video accelerator used on shikra platforms by adding the qcom,shikra-venus compatible. Although QCM2290 and shikra share the same video hardware and overall integration, their SMMU programming differs. QCM2290 exposes separate stream IDs for the video hardware and the Xtensa path, requiring two explicit IOMMU entries, whereas shikra uses a masked SMR to collapse equivalent stream IDs into a single mapping. Due to QCM2290's SID layout and Xtensa isolation requirements, such SMR masking is not applicable on QCM2290 platforms. Since shikra uses the same video hardware as QCM2290 and shares the same programming model and capabilities, it is added as a fallback compatible to qcom,qcm2290-venus, with conditional handling to allow either one or two IOMMU entries. Reviewed-by: Vishnu Reddy <busanna.reddy@oss.qualcomm.com> Signed-off-by: Vikash Garodia <vikash.garodia@oss.qualcomm.com> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com> Signed-off-by: Bryan O'Donoghue <bod@kernel.org>
-rw-r--r--Documentation/devicetree/bindings/media/qcom,qcm2290-venus.yaml26
1 files changed, 19 insertions, 7 deletions
diff --git a/Documentation/devicetree/bindings/media/qcom,qcm2290-venus.yaml b/Documentation/devicetree/bindings/media/qcom,qcm2290-venus.yaml
index 5977e7d0a71b..b27899ebf164 100644
--- a/Documentation/devicetree/bindings/media/qcom,qcm2290-venus.yaml
+++ b/Documentation/devicetree/bindings/media/qcom,qcm2290-venus.yaml
@@ -13,14 +13,13 @@ description:
The Venus AR50_LITE IP is a video encode and decode accelerator present
on Qualcomm platforms.
-allOf:
- - $ref: qcom,venus-common.yaml#
-
properties:
compatible:
oneOf:
- items:
- - const: qcom,sm6115-venus
+ - enum:
+ - qcom,shikra-venus
+ - qcom,sm6115-venus
- const: qcom,qcm2290-venus
- const: qcom,qcm2290-venus
@@ -45,9 +44,6 @@ properties:
- const: vcodec0_core
- const: vcodec0_bus
- iommus:
- maxItems: 2
-
interconnects:
maxItems: 2
@@ -65,6 +61,22 @@ required:
- power-domain-names
- iommus
+allOf:
+ - $ref: qcom,venus-common.yaml#
+ - if:
+ properties:
+ compatible:
+ contains:
+ const: qcom,shikra-venus
+ then:
+ properties:
+ iommus:
+ maxItems: 1
+ else:
+ properties:
+ iommus:
+ maxItems: 2
+
unevaluatedProperties: false
examples: