[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20191027090904.14349-2-chunyan.zhang@unisoc.com>
Date: Sun, 27 Oct 2019 17:09:02 +0800
From: Chunyan Zhang <chunyan.zhang@...soc.com>
To: Rob Herring <robh+dt@...nel.org>,
Mark Rutland <mark.rutland@....com>
CC: <devicetree@...r.kernel.org>, <linux-kernel@...r.kernel.org>,
Orson Zhai <orsonzhai@...il.com>,
Baolin Wang <baolin.wang7@...il.com>,
Chunyan Zhang <zhang.lyra@...il.com>,
Chunyan Zhang <chunyan.zhang@...soc.com>
Subject: [PATCH 1/2] arm64: dts: Add SC9863A clock nodes
Add clock devicetree nodes for SC9863A.
Signed-off-by: Chunyan Zhang <chunyan.zhang@...soc.com>
---
arch/arm64/boot/dts/sprd/sc9863a.dtsi | 94 +++++++++++++++++++++++++++
arch/arm64/boot/dts/sprd/sharkl3.dtsi | 21 ++++++
2 files changed, 115 insertions(+)
diff --git a/arch/arm64/boot/dts/sprd/sc9863a.dtsi b/arch/arm64/boot/dts/sprd/sc9863a.dtsi
index 578d71a932d9..ceecf551fd01 100644
--- a/arch/arm64/boot/dts/sprd/sc9863a.dtsi
+++ b/arch/arm64/boot/dts/sprd/sc9863a.dtsi
@@ -6,6 +6,7 @@
*/
#include <dt-bindings/interrupt-controller/arm-gic.h>
+#include <dt-bindings/clock/sprd,sc9863a-clk.h>
#include "sharkl3.dtsi"
/ {
@@ -168,6 +169,99 @@
};
soc {
+ apahb_gate: apahb-gate {
+ compatible = "sprd,sc9863a-apahb-gate";
+ sprd,syscon = <&ap_ahb_regs>; /* 0x20e00000 */
+ clocks = <&aon_clk CLK_AP_AXI>;
+ #clock-cells = <1>;
+ };
+
+ ap_clk: clock-controller@...00000 {
+ compatible = "sprd,sc9863a-ap-clk";
+ reg = <0 0x21500000 0 0x1000>;
+ clocks = <&ext_32k>, <&ext_26m>,
+ <&pll 0>, <&rpll 0>;
+ #clock-cells = <1>;
+ };
+
+ pmu_gate: pmu-gate {
+ compatible = "sprd,sc9863a-pmu-gate";
+ sprd,syscon = <&pmu_regs>; /* 0x402b0000 */
+ clocks = <&ext_26m>;
+ #clock-cells = <1>;
+ };
+
+ aon_clk: clock-controller@...d0000 {
+ compatible = "sprd,sc9863a-aon-clk";
+ reg = <0 0x402d0000 0 0x1000>;
+ clocks = <&ext_26m>, <&pll 0>,
+ <&rpll 0>, <&dpll 0>;
+ #clock-cells = <1>;
+ };
+
+ aonapb_gate: aonapb-gate {
+ compatible = "sprd,sc9863a-aonapb-gate";
+ sprd,syscon = <&aon_apb_regs>; /* 0x402e0000 */
+ clocks = <&aon_clk CLK_AON_APB>;
+ #clock-cells = <1>;
+ };
+
+ pll: pll {
+ compatible = "sprd,sc9863a-pll";
+ sprd,syscon = <&anlg_phy_g2_regs>; /* 0x40353000 */
+ clocks = <&pmu_gate 0>;
+ #clock-cells = <1>;
+ };
+
+ mpll: mpll {
+ compatible = "sprd,sc9863a-mpll";
+ sprd,syscon = <&anlg_phy_g4_regs>; /* 0x40359000 */
+ clocks = <&pmu_gate 0>;
+ #clock-cells = <1>;
+ };
+
+ rpll: rpll {
+ compatible = "sprd,sc9863a-rpll";
+ sprd,syscon = <&anlg_phy_g5_regs>; /* 0x4035c000 */
+ clocks = <&pmu_gate 0>;
+ #clock-cells = <1>;
+ };
+
+ dpll: dpll {
+ compatible = "sprd,sc9863a-dpll";
+ sprd,syscon = <&anlg_phy_g7_regs>; /* 0x40363000 */
+ clocks = <&pmu_gate 0>;
+ #clock-cells = <1>;
+ };
+
+ mm_gate: mm-gate {
+ compatible = "sprd,sc9863a-mm-gate";
+ sprd,syscon = <&mm_ahb_regs>; /* 0x60800000 */
+ clocks = <&aon_clk CLK_MM_AHB>;
+ #clock-cells = <1>;
+ };
+
+ mm_clk: clock-controller@...00000 {
+ compatible = "sprd,sc9863a-mm-clk";
+ reg = <0 0x60900000 0 0x1000>; /* 0x60900000 */
+ clocks = <&aon_clk CLK_MM_AHB>;
+ #clock-cells = <1>;
+ };
+
+ vspahb_gate: vspahb-gate {
+ compatible = "sprd,sc9863a-vspahb-gate";
+ sprd,syscon = <&mm_vsp_ahb_regs>; /* 0x62000000 */
+ clocks = <&aon_clk CLK_MM_AHB>;
+ #clock-cells = <1>;
+ };
+
+ apapb_gate: apapb-gate {
+ compatible = "sprd,sc9863a-apapb-gate";
+ sprd,syscon = <&ap_apb_regs>; /* 0x71300000 */
+ clocks = <&ext_26m>;
+ #clock-cells = <1>;
+ };
+
funnel@...01000 {
compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
reg = <0 0x10001000 0 0x1000>;
diff --git a/arch/arm64/boot/dts/sprd/sharkl3.dtsi b/arch/arm64/boot/dts/sprd/sharkl3.dtsi
index 3ef233f70dc4..938cd62e6636 100644
--- a/arch/arm64/boot/dts/sprd/sharkl3.dtsi
+++ b/arch/arm64/boot/dts/sprd/sharkl3.dtsi
@@ -185,4 +185,25 @@
clock-frequency = <26000000>;
clock-output-names = "ext-26m";
};
+
+ ext_32k: ext-32k {
+ compatible = "fixed-clock";
+ #clock-cells = <0>;
+ clock-frequency = <32768>;
+ clock-output-names = "ext_32k";
+ };
+
+ ext_4m: ext-4m {
+ compatible = "fixed-clock";
+ #clock-cells = <0>;
+ clock-frequency = <4000000>;
+ clock-output-names = "ext-4m";
+ };
+
+ rco_100m: rco-100m {
+ compatible = "fixed-clock";
+ #clock-cells = <0>;
+ clock-frequency = <100000000>;
+ clock-output-names = "rco-100m";
+ };
};
--
2.20.1
Powered by blists - more mailing lists