Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d1129117 authored by Chinmay Sawarkar's avatar Chinmay Sawarkar
Browse files

ARM: dts: msm: Add kona video configuration



Interrupts, context banks, clocks & other
Bootup info.

CRs-Fixed: 2358497
Change-Id: Ic8d6fb282f5f5c3e9578f8d4fc7434b1fc481f01
Signed-off-by: default avatarChinmay Sawarkar <chinmays@codeaurora.org>
parent 1b0e6f8f
Loading
Loading
Loading
Loading
+91 −0
Original line number Diff line number Diff line
// SPDX-License-Identifier: GPL-2.0
/*
 * Copyright (c) 2016-2018, The Linux Foundation. All rights reserved.
 */

#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/msm/msm-bus-ids.h>
#include <dt-bindings/clock/qcom,videocc-kona.h>

&soc {
	msm_vidc: qcom,vidc@aa00000 {
		compatible = "qcom,msm-vidc";
		status = "disable";
		reg = <0xaa00000 0x100000>;
		interrupts = <GIC_SPI 174 IRQ_TYPE_LEVEL_HIGH>;

		/* Supply */
		iris-ctl-supply = <&mvs0c_gdsc>;
		vcodec-supply = <&mvs0_gdsc>;

		/* Clocks */
		clock-names =  "gcc_video_axic", "gcc_video_axi0",
			"core_clk", "vcodec_clk";
		clocks = <&clock_gcc GCC_VIDEO_AXIC_CLK>,
			<&clock_gcc GCC_VIDEO_AXI0_CLK>,
			<&clock_videocc VIDEO_CC_AHB_CLK>,
			<&clock_videocc VIDEO_CC_XO_CLK>,
			<&clock_videocc VIDEO_CC_MVS0C_CLK>,
			<&clock_videocc VIDEO_CC_MVS0_CLK>;
		qcom,proxy-clock-names = "gcc_video_axic",
			"gcc_video_axi0",
			"ahb_clk", "xo_clk",
			"core_clk", "vcodec_clk";

		qcom,clock-configs = <0x0 0x0 0x0 0x0 0x1 0x1>;
		qcom,allowed-clock-rates = <240000000 338000000 366000000
						444000000 553000000>;

		/* MMUs */
		/* Firmware region */
		dma-ranges = <0x0 0x0 0x00500000>

		/* "&soc{" - Default
		 **	address-cells = 1
		 *	size-cells = 1
		 *	qcom,iommu-pagetables = "LLC"
		 *	qcom,iommu-faults = "non-fatal"
		 */
		non_secure_cb {
			compatible = "qcom,msm-vidc,context-bank";
			label = "venus_ns";
			iommus = <&apps_smmu 0x2100 0x0400>;
			dma-ranges = <0x25800000 0x25800000 0xba800000>;
			buffer-types = <0xfff>;
			virtual-addr-pool = <0x25800000 0xba800000>;
		};

		secure_non_pixel_cb {
			compatible = "qcom,msm-vidc,context-bank";
			label = "venus_sec_non_pixel";
			iommus = <&apps_smmu 0x2104 0x0400>;
			dma-ranges = <0x1000000 0x1000000 0x24800000>;
			qcom,iommu-vmid = 0xB; /*VMID_CP_NON_PIXEL*/
			buffer-types = <0x480>;
			virtual-addr-pool = <0x1000000 0x24800000>;
			qcom,secure-context-bank;
		};

		secure_bitstream_cb {
			compatible = "qcom,msm-vidc,context-bank";
			label = "venus_sec_bitstream";
			iommus = <&apps_smmu 0x2101 0x0404>;
			dma-ranges = <0x0 0x0 0xe0000000>;
			qcom,iommu-vmid = 0x9; /*VMID_CP_BITSTREAM*/
			buffer-types = <0x241>;
			virtual-addr-pool = <0x0 0xe0000000>;
			qcom,secure-context-bank;
		};

		secure_pixel_cb {
			compatible = "qcom,msm-vidc,context-bank";
			label = "venus_sec_pixel";
			iommus = <&apps_smmu 0x2103 0x0400>;
			dma-ranges = <0x0 0x0 0xe0000000>;
			qcom,iommu-vmid = 0xA; /*VMID_CP_PIXEL*/
			buffer-types = <0x106>;
			virtual-addr-pool = <0x0 0xe0000000>;
			qcom,secure-context-bank;
		};
	};
};