Re: [PATCH 1/6] media: dt-bindings: Document SC8280XP/SM8350 Venus

From: Krzysztof Kozlowski
Date: Sat Aug 05 2023 - 15:29:24 EST


On 04/08/2023 22:09, Konrad Dybcio wrote:
> Both of these SoCs implement an IRIS2 block, with SC8280XP being able
> to clock it a bit higher.
>

...

> +
> + iommus:
> + maxItems: 1
> +
> + video-decoder:
> + type: object
> +
> + properties:
> + compatible:
> + const: venus-decoder

That's not how compatibles are constructed... missing vendor prefix, SoC
or IP block name.

> +
> + required:
> + - compatible
> +
> + additionalProperties: false

Why do you need this child node? Child nodes without properties are
usually useless.

> +
> + video-encoder:
> + type: object
> +
> + properties:
> + compatible:
> + const: venus-encoder
> +
> + required:
> + - compatible
> +
> + additionalProperties: false
> +
> +required:
> + - compatible
> + - power-domain-names
> + - iommus
> + - video-decoder
> + - video-encoder
> +
> +unevaluatedProperties: false
> +
> +examples:
> + - |
> + #include <dt-bindings/interrupt-controller/arm-gic.h>
> + #include <dt-bindings/clock/qcom,gcc-sm8350.h>
> + #include <dt-bindings/clock/qcom,sm8350-videocc.h>
> + #include <dt-bindings/interconnect/qcom,sm8350.h>
> + #include <dt-bindings/power/qcom-rpmpd.h>
> +
> + venus: video-codec@aa00000 {
> + compatible = "qcom,sm8350-venus";
> + reg = <0x0aa00000 0x100000>;
> + interrupts = <GIC_SPI 174 IRQ_TYPE_LEVEL_HIGH>;
> +
> + clocks = <&gcc GCC_VIDEO_AXI0_CLK>,
> + <&videocc VIDEO_CC_MVS0C_CLK>,
> + <&videocc VIDEO_CC_MVS0_CLK>;
> + clock-names = "iface",
> + "core",
> + "vcodec0_core";
> +
> + resets = <&gcc GCC_VIDEO_AXI0_CLK_ARES>;
> + reset-names = "core";
> +
> + power-domains = <&videocc MVS0C_GDSC>,
> + <&videocc MVS0_GDSC>,
> + <&rpmhpd SM8350_MX>;
> + power-domain-names = "venus",
> + "vcodec0",
> + "mx";
> +
> + interconnects = <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_VENUS_CFG 0>,
> + <&mmss_noc MASTER_VIDEO_P0 0 &mc_virt SLAVE_EBI1 0>,
> + <&mmss_noc MASTER_VIDEO_P0 0 &gem_noc SLAVE_LLCC 0>;
> + interconnect-names = "cpu-cfg",
> + "video-mem",
> + "video-llcc";
> +
> + operating-points-v2 = <&venus_opp_table>;
> + iommus = <&apps_smmu 0x2100 0x400>;
> + memory-region = <&pil_video_mem>;
> +
> + status = "disabled";

Drop status.

> +
> + video-decoder {

Best regards,
Krzysztof