2024-02-09 23:20:17 +00:00
|
|
|
From 78cddd6de764caacd120df44fc5cb6939e684628 Mon Sep 17 00:00:00 2001
|
|
|
|
From: Alicja Michalska <ahplka19@gmail.com>
|
|
|
|
Date: Sun, 26 Nov 2023 18:24:44 +0100
|
|
|
|
Subject: [PATCH] arm64: dts: mediatek: mt8183: Add video encoder/decoder
|
2023-05-18 11:40:30 +00:00
|
|
|
|
2024-02-09 23:20:17 +00:00
|
|
|
Clock names should be set correctly according to documentation in
|
|
|
|
Linux's dt-bindings, although they differ from ChromeOS.
|
2023-05-18 11:40:30 +00:00
|
|
|
|
2024-02-09 23:20:17 +00:00
|
|
|
This should enable hardware video encoders and decoders to work.
|
2023-05-18 11:40:30 +00:00
|
|
|
|
2024-02-09 23:20:17 +00:00
|
|
|
Signed-off-by: Alicja Michalska <ahplka19@gmail.com>
|
2023-05-18 11:40:30 +00:00
|
|
|
---
|
2024-02-09 23:20:17 +00:00
|
|
|
arch/arm64/boot/dts/mediatek/mt8183.dtsi | 48 ++++++++++++++++++++++++
|
|
|
|
1 file changed, 48 insertions(+)
|
2023-05-18 11:40:30 +00:00
|
|
|
|
|
|
|
diff --git a/arch/arm64/boot/dts/mediatek/mt8183.dtsi b/arch/arm64/boot/dts/mediatek/mt8183.dtsi
|
2024-02-09 23:20:17 +00:00
|
|
|
index 6caf5a619379..f80e0378a0d2 100644
|
2023-05-18 11:40:30 +00:00
|
|
|
--- a/arch/arm64/boot/dts/mediatek/mt8183.dtsi
|
|
|
|
+++ b/arch/arm64/boot/dts/mediatek/mt8183.dtsi
|
2024-02-09 23:20:17 +00:00
|
|
|
@@ -2121,6 +2121,35 @@ vdecsys: syscon@16000000 {
|
2023-05-18 11:40:30 +00:00
|
|
|
#clock-cells = <1>;
|
|
|
|
};
|
|
|
|
|
|
|
|
+ vcodec_dec: vcodec@16000000 {
|
|
|
|
+ compatible = "mediatek,mt8183-vcodec-dec";
|
|
|
|
+ reg = <0 0x16000000 0 0x1000>, /* VDEC_SYS */
|
|
|
|
+ <0 0x16020000 0 0x1000>, /* VDEC_MISC */
|
|
|
|
+ <0 0x16021000 0 0x800>, /* VDEC_VLD */
|
|
|
|
+ <0 0x16021800 0 0x800>, /* VDEC_TOP */
|
|
|
|
+ <0 0x16022000 0 0x1000>, /* VDEC_MC */
|
|
|
|
+ <0 0x16023000 0 0x1000>, /* VDEC_AVCVLD */
|
|
|
|
+ <0 0x16024000 0 0x1000>, /* VDEC_AVCMV */
|
|
|
|
+ <0 0x16025000 0 0x1000>, /* VDEC_PP */
|
|
|
|
+ <0 0x16026800 0 0x800>, /* VP8_VD */
|
|
|
|
+ <0 0x16027000 0 0x800>, /* VP6_VD */
|
|
|
|
+ <0 0x16027800 0 0x800>, /* VP8_VL */
|
|
|
|
+ <0 0x16028400 0 0x400>; /* VP9_VD */
|
|
|
|
+ interrupts = <GIC_SPI 250 IRQ_TYPE_LEVEL_LOW>;
|
|
|
|
+ mediatek,larb = <&larb1>;
|
|
|
|
+ iommus = <&iommu M4U_PORT_HW_VDEC_MC_EXT>,
|
|
|
|
+ <&iommu M4U_PORT_HW_VDEC_PP_EXT>,
|
|
|
|
+ <&iommu M4U_PORT_HW_VDEC_VLD_EXT>,
|
|
|
|
+ <&iommu M4U_PORT_HW_VDEC_AVC_MV_EXT>,
|
|
|
|
+ <&iommu M4U_PORT_HW_VDEC_PRED_RD_EXT>,
|
|
|
|
+ <&iommu M4U_PORT_HW_VDEC_PRED_WR_EXT>,
|
|
|
|
+ <&iommu M4U_PORT_HW_VDEC_PPWRAP_EXT>;
|
|
|
|
+ mediatek,scp = <&scp>;
|
|
|
|
+ power-domains = <&spm MT8183_POWER_DOMAIN_VDEC>;
|
|
|
|
+ clocks = <&vdecsys CLK_VDEC_VDEC>;
|
2024-02-09 23:20:17 +00:00
|
|
|
+ clock-names = "vdec";
|
2023-05-18 11:40:30 +00:00
|
|
|
+ };
|
|
|
|
+
|
|
|
|
larb1: larb@16010000 {
|
|
|
|
compatible = "mediatek,mt8183-smi-larb";
|
|
|
|
reg = <0 0x16010000 0 0x1000>;
|
2024-02-09 23:20:17 +00:00
|
|
|
@@ -2157,6 +2186,25 @@ venc_jpg: venc_jpg@17030000 {
|
2023-05-18 11:40:30 +00:00
|
|
|
clock-names = "jpgenc";
|
|
|
|
};
|
|
|
|
|
|
|
|
+ vcodec_enc: vcodec@17020000 {
|
|
|
|
+ compatible = "mediatek,mt8183-vcodec-enc";
|
|
|
|
+ reg = <0 0x17020000 0 0x1000>,
|
2024-02-09 23:20:17 +00:00
|
|
|
+ <0 0x17000000 0 0x1000>; /* Dummy?! */
|
2023-05-18 11:40:30 +00:00
|
|
|
+ interrupts = <GIC_SPI 247 IRQ_TYPE_LEVEL_LOW>;
|
|
|
|
+ mediatek,larb = <&larb4>;
|
|
|
|
+ iommus = <&iommu M4U_PORT_VENC_REC>,
|
|
|
|
+ <&iommu M4U_PORT_VENC_BSDMA>,
|
|
|
|
+ <&iommu M4U_PORT_VENC_RD_COMV>,
|
|
|
|
+ <&iommu M4U_PORT_VENC_CUR_LUMA>,
|
|
|
|
+ <&iommu M4U_PORT_VENC_CUR_CHROMA>,
|
|
|
|
+ <&iommu M4U_PORT_VENC_REF_LUMA>,
|
|
|
|
+ <&iommu M4U_PORT_VENC_REF_CHROMA>;
|
|
|
|
+ mediatek,scp = <&scp>;
|
|
|
|
+ power-domains = <&spm MT8183_POWER_DOMAIN_VENC>;
|
|
|
|
+ clocks = <&vencsys CLK_VENC_VENC>;
|
2024-02-09 23:20:17 +00:00
|
|
|
+ clock-names = "venc";
|
2023-05-18 11:40:30 +00:00
|
|
|
+ };
|
|
|
|
+
|
|
|
|
ipu_conn: syscon@19000000 {
|
|
|
|
compatible = "mediatek,mt8183-ipu_conn", "syscon";
|
2024-02-09 23:20:17 +00:00
|
|
|
reg = <0 0x19000000 0 0x1000>;
|
|
|
|
--
|
|
|
|
2.43.0
|
|
|
|
|