Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

[media] dt-bindings: Add a binding for Mediatek Video Encoder

Add a DT binding documentation of Video Encoder for the
MT8173 SoC from Mediatek.

Signed-off-by: Tiffany Lin <tiffany.lin@mediatek.com>
Acked-by: Rob Herring <robh@kernel.org>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>

authored by

Tiffany Lin and committed by
Mauro Carvalho Chehab
e6d28fd6 404b2819

+59
+59
Documentation/devicetree/bindings/media/mediatek-vcodec.txt
··· 1 + Mediatek Video Codec 2 + 3 + Mediatek Video Codec is the video codec hw present in Mediatek SoCs which 4 + supports high resolution encoding functionalities. 5 + 6 + Required properties: 7 + - compatible : "mediatek,mt8173-vcodec-enc" for encoder 8 + - reg : Physical base address of the video codec registers and length of 9 + memory mapped region. 10 + - interrupts : interrupt number to the cpu. 11 + - mediatek,larb : must contain the local arbiters in the current Socs. 12 + - clocks : list of clock specifiers, corresponding to entries in 13 + the clock-names property. 14 + - clock-names: encoder must contain "venc_sel_src", "venc_sel", 15 + - "venc_lt_sel_src", "venc_lt_sel". 16 + - iommus : should point to the respective IOMMU block with master port as 17 + argument, see Documentation/devicetree/bindings/iommu/mediatek,iommu.txt 18 + for details. 19 + - mediatek,vpu : the node of video processor unit 20 + 21 + Example: 22 + vcodec_enc: vcodec@0x18002000 { 23 + compatible = "mediatek,mt8173-vcodec-enc"; 24 + reg = <0 0x18002000 0 0x1000>, /*VENC_SYS*/ 25 + <0 0x19002000 0 0x1000>; /*VENC_LT_SYS*/ 26 + interrupts = <GIC_SPI 198 IRQ_TYPE_LEVEL_LOW>, 27 + <GIC_SPI 202 IRQ_TYPE_LEVEL_LOW>; 28 + mediatek,larb = <&larb3>, 29 + <&larb5>; 30 + iommus = <&iommu M4U_PORT_VENC_RCPU>, 31 + <&iommu M4U_PORT_VENC_REC>, 32 + <&iommu M4U_PORT_VENC_BSDMA>, 33 + <&iommu M4U_PORT_VENC_SV_COMV>, 34 + <&iommu M4U_PORT_VENC_RD_COMV>, 35 + <&iommu M4U_PORT_VENC_CUR_LUMA>, 36 + <&iommu M4U_PORT_VENC_CUR_CHROMA>, 37 + <&iommu M4U_PORT_VENC_REF_LUMA>, 38 + <&iommu M4U_PORT_VENC_REF_CHROMA>, 39 + <&iommu M4U_PORT_VENC_NBM_RDMA>, 40 + <&iommu M4U_PORT_VENC_NBM_WDMA>, 41 + <&iommu M4U_PORT_VENC_RCPU_SET2>, 42 + <&iommu M4U_PORT_VENC_REC_FRM_SET2>, 43 + <&iommu M4U_PORT_VENC_BSDMA_SET2>, 44 + <&iommu M4U_PORT_VENC_SV_COMA_SET2>, 45 + <&iommu M4U_PORT_VENC_RD_COMA_SET2>, 46 + <&iommu M4U_PORT_VENC_CUR_LUMA_SET2>, 47 + <&iommu M4U_PORT_VENC_CUR_CHROMA_SET2>, 48 + <&iommu M4U_PORT_VENC_REF_LUMA_SET2>, 49 + <&iommu M4U_PORT_VENC_REC_CHROMA_SET2>; 50 + mediatek,vpu = <&vpu>; 51 + clocks = <&topckgen CLK_TOP_VENCPLL_D2>, 52 + <&topckgen CLK_TOP_VENC_SEL>, 53 + <&topckgen CLK_TOP_UNIVPLL1_D2>, 54 + <&topckgen CLK_TOP_VENC_LT_SEL>; 55 + clock-names = "venc_sel_src", 56 + "venc_sel", 57 + "venc_lt_sel_src", 58 + "venc_lt_sel"; 59 + };