Linux-mediatek Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Allen-KH Cheng <allen-kh.cheng@mediatek.com>
To: Matthias Brugger <matthias.bgg@gmail.com>,
	Rob Herring <robh+dt@kernel.org>,
	--to=Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Cc: <Project_Global_Chrome_Upstream_Group@mediatek.com>,
	<devicetree@vger.kernel.org>,
	<linux-arm-kernel@lists.infradead.org>,
	<linux-kernel@vger.kernel.org>,
	<linux-mediatek@lists.infradead.org>,
	Chen-Yu Tsai <wenst@chromium.org>,
	Ryder Lee <ryder.lee@kernel.org>,
	Allen-KH Cheng <allen-kh.cheng@mediatek.com>
Subject: [PATCH v2 01/23] arm64: dts: mt8192: Add power domains controller
Date: Fri, 18 Feb 2022 17:16:11 +0800	[thread overview]
Message-ID: <20220218091633.9368-2-allen-kh.cheng@mediatek.com> (raw)
In-Reply-To: <20220218091633.9368-1-allen-kh.cheng@mediatek.com>

Add power domains controller node for SoC mt8192.

Signed-off-by: Allen-KH Cheng <allen-kh.cheng@mediatek.com>
---
 arch/arm64/boot/dts/mediatek/mt8192.dtsi | 201 +++++++++++++++++++++++
 1 file changed, 201 insertions(+)

diff --git a/arch/arm64/boot/dts/mediatek/mt8192.dtsi b/arch/arm64/boot/dts/mediatek/mt8192.dtsi
index c1d4030e7e4b..f10a9c75b20c 100644
--- a/arch/arm64/boot/dts/mediatek/mt8192.dtsi
+++ b/arch/arm64/boot/dts/mediatek/mt8192.dtsi
@@ -9,6 +9,7 @@
 #include <dt-bindings/interrupt-controller/arm-gic.h>
 #include <dt-bindings/interrupt-controller/irq.h>
 #include <dt-bindings/pinctrl/mt8192-pinfunc.h>
+#include <dt-bindings/power/mt8192-power.h>
 
 / {
 	compatible = "mediatek,mt8192";
@@ -301,6 +302,206 @@
 			#interrupt-cells = <2>;
 		};
 
+		scpsys: syscon@10006000 {
+			compatible = "syscon", "simple-mfd";
+			reg = <0 0x10006000 0 0x1000>;
+			#power-domain-cells = <1>;
+
+			/* System Power Manager */
+			spm: power-controller {
+				compatible = "mediatek,mt8192-power-controller";
+				#address-cells = <1>;
+				#size-cells = <0>;
+				#power-domain-cells = <1>;
+
+				/* power domain of the SoC */
+				power-domain@MT8192_POWER_DOMAIN_AUDIO {
+					reg = <MT8192_POWER_DOMAIN_AUDIO>;
+					clocks = <&topckgen CLK_TOP_AUD_INTBUS_SEL>,
+						 <&infracfg CLK_INFRA_AUDIO_26M_B>,
+						 <&infracfg CLK_INFRA_AUDIO>;
+					clock-names = "audio", "audio1", "audio2";
+					mediatek,infracfg = <&infracfg>;
+					#power-domain-cells = <0>;
+				};
+
+				power-domain@MT8192_POWER_DOMAIN_CONN {
+					reg = <MT8192_POWER_DOMAIN_CONN>;
+					clocks = <&infracfg CLK_INFRA_PMIC_CONN>;
+					clock-names = "conn";
+					mediatek,infracfg = <&infracfg>;
+					#power-domain-cells = <0>;
+				};
+
+				mfg0: power-domain@MT8192_POWER_DOMAIN_MFG0 {
+					reg = <MT8192_POWER_DOMAIN_MFG0>;
+					clocks = <&topckgen CLK_TOP_MFG_PLL_SEL>;
+					clock-names = "mfg";
+					#address-cells = <1>;
+					#size-cells = <0>;
+					#power-domain-cells = <1>;
+
+					power-domain@MT8192_POWER_DOMAIN_MFG1 {
+						reg = <MT8192_POWER_DOMAIN_MFG1>;
+						mediatek,infracfg = <&infracfg>;
+						#address-cells = <1>;
+						#size-cells = <0>;
+						#power-domain-cells = <1>;
+
+						power-domain@MT8192_POWER_DOMAIN_MFG2 {
+							reg = <MT8192_POWER_DOMAIN_MFG2>;
+							#power-domain-cells = <0>;
+						};
+
+						power-domain@MT8192_POWER_DOMAIN_MFG3 {
+							reg = <MT8192_POWER_DOMAIN_MFG3>;
+							#power-domain-cells = <0>;
+						};
+
+						power-domain@MT8192_POWER_DOMAIN_MFG4 {
+							reg = <MT8192_POWER_DOMAIN_MFG4>;
+							#power-domain-cells = <0>;
+						};
+
+						power-domain@MT8192_POWER_DOMAIN_MFG5 {
+							reg = <MT8192_POWER_DOMAIN_MFG5>;
+							#power-domain-cells = <0>;
+						};
+
+						power-domain@MT8192_POWER_DOMAIN_MFG6 {
+							reg = <MT8192_POWER_DOMAIN_MFG6>;
+							#power-domain-cells = <0>;
+						};
+					};
+				};
+
+				power-domain@MT8192_POWER_DOMAIN_DISP {
+					reg = <MT8192_POWER_DOMAIN_DISP>;
+					clocks = <&topckgen CLK_TOP_DISP_SEL>,
+						 <&mmsys CLK_MM_SMI_INFRA>,
+						 <&mmsys CLK_MM_SMI_COMMON>,
+						 <&mmsys CLK_MM_SMI_GALS>,
+						 <&mmsys CLK_MM_SMI_IOMMU>;
+					clock-names = "disp", "disp-0", "disp-1", "disp-2",
+						      "disp-3";
+					mediatek,infracfg = <&infracfg>;
+					#address-cells = <1>;
+					#size-cells = <0>;
+					#power-domain-cells = <1>;
+
+					power-domain@MT8192_POWER_DOMAIN_IPE {
+						reg = <MT8192_POWER_DOMAIN_IPE>;
+						clocks = <&topckgen CLK_TOP_IPE_SEL>,
+							 <&ipesys CLK_IPE_LARB19>,
+							 <&ipesys CLK_IPE_LARB20>,
+							 <&ipesys CLK_IPE_SMI_SUBCOM>,
+							 <&ipesys CLK_IPE_GALS>;
+						clock-names = "ipe", "ipe-0", "ipe-1", "ipe-2",
+							      "ipe-3";
+						mediatek,infracfg = <&infracfg>;
+						#power-domain-cells = <0>;
+					};
+
+					power-domain@MT8192_POWER_DOMAIN_ISP {
+						reg = <MT8192_POWER_DOMAIN_ISP>;
+						clocks = <&topckgen CLK_TOP_IMG1_SEL>,
+							 <&imgsys CLK_IMG_LARB9>,
+							 <&imgsys CLK_IMG_GALS>;
+						clock-names = "isp", "isp-0", "isp-1";
+						mediatek,infracfg = <&infracfg>;
+						#power-domain-cells = <0>;
+					};
+
+					power-domain@MT8192_POWER_DOMAIN_ISP2 {
+						reg = <MT8192_POWER_DOMAIN_ISP2>;
+						clocks = <&topckgen CLK_TOP_IMG2_SEL>,
+							 <&imgsys2 CLK_IMG2_LARB11>,
+							 <&imgsys2 CLK_IMG2_GALS>;
+						clock-names = "isp2", "isp2-0", "isp2-1";
+						mediatek,infracfg = <&infracfg>;
+						#power-domain-cells = <0>;
+					};
+
+					power-domain@MT8192_POWER_DOMAIN_MDP {
+						reg = <MT8192_POWER_DOMAIN_MDP>;
+						clocks = <&topckgen CLK_TOP_MDP_SEL>,
+							 <&mdpsys CLK_MDP_SMI0>;
+						clock-names = "mdp", "mdp-0";
+						mediatek,infracfg = <&infracfg>;
+						#power-domain-cells = <0>;
+					};
+
+					power-domain@MT8192_POWER_DOMAIN_VENC {
+						reg = <MT8192_POWER_DOMAIN_VENC>;
+						clocks = <&topckgen CLK_TOP_VENC_SEL>,
+							 <&vencsys CLK_VENC_SET1_VENC>;
+						clock-names = "venc", "venc-0";
+						mediatek,infracfg = <&infracfg>;
+						#power-domain-cells = <0>;
+					};
+
+					power-domain@MT8192_POWER_DOMAIN_VDEC {
+						reg = <MT8192_POWER_DOMAIN_VDEC>;
+						clocks = <&topckgen CLK_TOP_VDEC_SEL>,
+							 <&vdecsys_soc CLK_VDEC_SOC_VDEC>,
+							 <&vdecsys_soc CLK_VDEC_SOC_LAT>,
+							 <&vdecsys_soc CLK_VDEC_SOC_LARB1>;
+						clock-names = "vdec", "vdec-0", "vdec-1", "vdec-2";
+						mediatek,infracfg = <&infracfg>;
+						#address-cells = <1>;
+						#size-cells = <0>;
+						#power-domain-cells = <1>;
+
+						power-domain@MT8192_POWER_DOMAIN_VDEC2 {
+							reg = <MT8192_POWER_DOMAIN_VDEC2>;
+							clocks = <&vdecsys CLK_VDEC_VDEC>,
+								 <&vdecsys CLK_VDEC_LAT>,
+								 <&vdecsys CLK_VDEC_LARB1>;
+							clock-names = "vdec2-0", "vdec2-1",
+								      "vdec2-2";
+							#power-domain-cells = <0>;
+						};
+					};
+
+					power-domain@MT8192_POWER_DOMAIN_CAM {
+						reg = <MT8192_POWER_DOMAIN_CAM>;
+						clocks = <&topckgen CLK_TOP_CAM_SEL>,
+							 <&camsys CLK_CAM_LARB13>,
+							 <&camsys CLK_CAM_LARB14>,
+							 <&camsys CLK_CAM_CCU_GALS>,
+							 <&camsys CLK_CAM_CAM2MM_GALS>;
+						clock-names = "cam", "cam-0", "cam-1", "cam-2",
+							      "cam-3";
+						mediatek,infracfg = <&infracfg>;
+						#address-cells = <1>;
+						#size-cells = <0>;
+						#power-domain-cells = <1>;
+
+						power-domain@MT8192_POWER_DOMAIN_CAM_RAWA {
+							reg = <MT8192_POWER_DOMAIN_CAM_RAWA>;
+							clocks = <&camsys_rawa CLK_CAM_RAWA_LARBX>;
+							clock-names = "cam_rawa-0";
+							#power-domain-cells = <0>;
+						};
+
+						power-domain@MT8192_POWER_DOMAIN_CAM_RAWB {
+							reg = <MT8192_POWER_DOMAIN_CAM_RAWB>;
+							clocks = <&camsys_rawb CLK_CAM_RAWB_LARBX>;
+							clock-names = "cam_rawb-0";
+							#power-domain-cells = <0>;
+						};
+
+						power-domain@MT8192_POWER_DOMAIN_CAM_RAWC {
+							reg = <MT8192_POWER_DOMAIN_CAM_RAWC>;
+							clocks = <&camsys_rawc CLK_CAM_RAWC_LARBX>;
+							clock-names = "cam_rawc-0";
+							#power-domain-cells = <0>;
+						};
+					};
+				};
+			};
+		};
+
 		watchdog: watchdog@10007000 {
 			compatible = "mediatek,mt8192-wdt";
 			reg = <0 0x10007000 0 0x100>;
-- 
2.18.0


_______________________________________________
Linux-mediatek mailing list
Linux-mediatek@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-mediatek

  reply	other threads:[~2022-02-18  9:28 UTC|newest]

Thread overview: 92+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-02-18  9:16 [PATCH v2 00/23] Add driver nodes for MT8192 SoC Allen-KH Cheng
2022-02-18  9:16 ` Allen-KH Cheng [this message]
2022-02-18 12:55   ` [PATCH v2 01/23] arm64: dts: mt8192: Add power domains controller AngeloGioacchino Del Regno
2022-02-22 19:18   ` Nícolas F. R. A. Prado
2022-02-18  9:16 ` [PATCH v2 02/23] arm64: dts: mt8192: Add pwrap node Allen-KH Cheng
2022-02-18 12:55   ` AngeloGioacchino Del Regno
2022-02-22 19:24   ` Nícolas F. R. A. Prado
2022-02-18  9:16 ` [PATCH v2 03/23] arm64: dts: mt8192: Add spmi node Allen-KH Cheng
2022-02-18 12:55   ` AngeloGioacchino Del Regno
2022-02-22 19:31   ` Nícolas F. R. A. Prado
2022-02-18  9:16 ` [PATCH v2 04/23] arm64: dts: mt8192: Add gce node Allen-KH Cheng
2022-02-18 12:55   ` AngeloGioacchino Del Regno
2022-02-22 19:43   ` Nícolas F. R. A. Prado
2022-02-18  9:16 ` [PATCH v2 05/23] arm64: dts: mt8192: Add SCP node Allen-KH Cheng
2022-02-18 12:55   ` AngeloGioacchino Del Regno
2022-02-21 12:37     ` allen-kh.cheng
2022-02-18  9:16 ` [PATCH v2 06/23] arm64: dts: mt8192: Add usb-phy node Allen-KH Cheng
2022-02-18 12:55   ` AngeloGioacchino Del Regno
2022-02-21 13:00     ` allen-kh.cheng
2022-02-22 20:10   ` Nícolas F. R. A. Prado
2022-02-23 13:24     ` allen-kh.cheng
2022-02-23 15:11       ` Nícolas F. R. A. Prado
2022-02-18  9:16 ` [PATCH v2 07/23] arm64: dts: mt8192: Add xhci node Allen-KH Cheng
2022-02-18 12:55   ` AngeloGioacchino Del Regno
2022-02-22 20:28   ` Nícolas F. R. A. Prado
2022-02-23 13:27     ` allen-kh.cheng
2022-02-18  9:16 ` [PATCH v2 08/23] arm64: dts: mt8192: Add audio-related nodes Allen-KH Cheng
2022-02-18 12:55   ` AngeloGioacchino Del Regno
2022-02-22 20:35   ` Nícolas F. R. A. Prado
2022-02-23 13:30     ` allen-kh.cheng
2022-02-18  9:16 ` [PATCH v2 09/23] arm64: dts: mt8192: Add infracfg_rst node Allen-KH Cheng
2022-02-18 12:55   ` AngeloGioacchino Del Regno
2022-02-21 13:05     ` allen-kh.cheng
2022-02-21 15:20       ` AngeloGioacchino Del Regno
2022-02-22  5:55         ` allen-kh.cheng
2022-02-18  9:16 ` [PATCH v2 10/23] arm64: dts: mt8192: Add PCIe node Allen-KH Cheng
2022-02-18  9:16 ` [PATCH v2 11/23] arm64: dts: mt8192: Correct nor_flash status of mt8192 Allen-KH Cheng
2022-02-18 12:55   ` AngeloGioacchino Del Regno
2022-02-21 12:49     ` allen-kh.cheng
2022-02-18  9:16 ` [PATCH v2 12/23] arm64: dts: mt8192: Add efuse node Allen-KH Cheng
2022-02-18 12:55   ` AngeloGioacchino Del Regno
2022-02-21 12:53     ` allen-kh.cheng
2022-02-18  9:16 ` [PATCH v2 13/23] arm64: dts: mt8192: Add mmc device nodes Allen-KH Cheng
2022-02-18 12:55   ` AngeloGioacchino Del Regno
2022-02-21 13:08     ` allen-kh.cheng
2022-02-18  9:16 ` [PATCH v2 14/23] arm64: dts: mt8192: Add mipi_tx node Allen-KH Cheng
2022-02-18 12:55   ` AngeloGioacchino Del Regno
2022-02-21 12:43     ` allen-kh.cheng
2022-02-22 21:26   ` Nícolas F. R. A. Prado
2022-02-23 13:32     ` allen-kh.cheng
2022-02-25 20:38     ` Nícolas F. R. A. Prado
2022-02-18  9:16 ` [PATCH v2 15/23] arm64: dts: mt8192: Add m4u and smi nodes Allen-KH Cheng
2022-02-18 12:56   ` AngeloGioacchino Del Regno
2022-02-22 21:48   ` Nícolas F. R. A. Prado
2022-02-23 13:34     ` allen-kh.cheng
2022-02-25 23:06   ` Nícolas F. R. A. Prado
2022-02-18  9:16 ` [PATCH v2 16/23] arm64: dts: mt8192: Add H264 venc device node Allen-KH Cheng
2022-02-18 12:56   ` AngeloGioacchino Del Regno
2022-02-22 22:13   ` Nícolas F. R. A. Prado
2022-02-23 13:36     ` allen-kh.cheng
2022-02-18  9:16 ` [PATCH v2 17/23] arm64: dts: mt8192: Add vcodec lat and core nodes Allen-KH Cheng
2022-02-18 12:56   ` AngeloGioacchino Del Regno
2022-02-21 13:10     ` allen-kh.cheng
2022-02-22 22:33   ` Nícolas F. R. A. Prado
2022-02-23 13:39     ` allen-kh.cheng
2022-02-18  9:16 ` [PATCH v2 18/23] arm64: dts: mt8192: Add dpi node Allen-KH Cheng
2022-02-18 12:56   ` AngeloGioacchino Del Regno
2022-02-21 13:13     ` allen-kh.cheng
2022-02-18  9:16 ` [PATCH v2 19/23] arm64: dts: mt8192: Add i2c aliases Allen-KH Cheng
2022-02-18 12:56   ` AngeloGioacchino Del Regno
2022-02-21  4:50   ` Chen-Yu Tsai
2022-02-21 13:22     ` allen-kh.cheng
2022-02-18  9:16 ` [PATCH v2 20/23] arm64: dts: mt8192: Add display nodes Allen-KH Cheng
2022-02-18 12:56   ` AngeloGioacchino Del Regno
2022-02-22 10:24   ` Chen-Yu Tsai
2022-02-23 15:35     ` Nícolas F. R. A. Prado
2022-02-18  9:16 ` [PATCH v2 21/23] arm64: dts: mt8192: Add dsi node Allen-KH Cheng
2022-02-18 12:56   ` AngeloGioacchino Del Regno
2022-02-21 13:14     ` allen-kh.cheng
2022-02-22 23:16   ` Nícolas F. R. A. Prado
2022-02-23 13:14     ` allen-kh.cheng
2022-02-18  9:16 ` [PATCH v2 22/23] arm64: dts: mt8192: Add gce info for display nodes Allen-KH Cheng
2022-02-18 12:56   ` AngeloGioacchino Del Regno
2022-02-21 13:16     ` allen-kh.cheng
2022-02-22 23:24   ` Nícolas F. R. A. Prado
2022-02-23 13:12     ` allen-kh.cheng
2022-02-23 15:20       ` Nícolas F. R. A. Prado
2022-02-18  9:16 ` [PATCH v2 23/23] arm64: dts: mt8192: Add pwm node Allen-KH Cheng
2022-02-18 12:56   ` AngeloGioacchino Del Regno
2022-02-21 13:17     ` allen-kh.cheng
2022-02-22  3:21 ` [PATCH v2 00/23] Add driver nodes for MT8192 SoC Chen-Yu Tsai
2022-02-23 13:21   ` allen-kh.cheng

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20220218091633.9368-2-allen-kh.cheng@mediatek.com \
    --to=allen-kh.cheng@mediatek.com \
    --cc=Project_Global_Chrome_Upstream_Group@mediatek.com \
    --cc=devicetree@vger.kernel.org \
    --cc=krzysztof.kozlowski@canonical.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mediatek@lists.infradead.org \
    --cc=matthias.bgg@gmail.com \
    --cc=robh+dt@kernel.org \
    --cc=ryder.lee@kernel.org \
    --cc=wenst@chromium.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox