]> www.infradead.org Git - linux.git/commitdiff
arm64: dts: meson: a1: introduce PLL and Peripherals clk controllers
authorDmitry Rokosov <ddrokosov@sberdevices.ru>
Wed, 23 Aug 2023 21:36:20 +0000 (00:36 +0300)
committerNeil Armstrong <neil.armstrong@linaro.org>
Mon, 11 Sep 2023 09:42:52 +0000 (11:42 +0200)
This patch adds clkc and clkc_pll dts nodes to A1 SoC main dtsi. The
first one is responsible for all SoC peripherals clocks excluding audio
clocks. The second one is used by A1 SoC PLLs. Actually, there are two
different APB heads, so we have two different drivers.

Signed-off-by: Dmitry Rokosov <ddrokosov@sberdevices.ru>
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Link: https://lore.kernel.org/r/20230823213630.12936-6-ddrokosov@sberdevices.ru
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
arch/arm64/boot/dts/amlogic/meson-a1.dtsi

index 13c7e14f3b22669d46e07b36d5aade4415eb1410..9aca885013c127b93f5e1340c847a1723355b0f5 100644 (file)
@@ -3,6 +3,8 @@
  * Copyright (c) 2019 Amlogic, Inc. All rights reserved.
  */
 
+#include <dt-bindings/clock/amlogic,a1-pll-clkc.h>
+#include <dt-bindings/clock/amlogic,a1-peripherals-clkc.h>
 #include <dt-bindings/gpio/meson-a1-gpio.h>
 #include <dt-bindings/interrupt-controller/arm-gic.h>
 #include <dt-bindings/interrupt-controller/irq.h>
                                        <49 50 51 52 53 54 55 56>;
                        };
 
+                       clkc_periphs: clock-controller@800 {
+                               compatible = "amlogic,a1-peripherals-clkc";
+                               reg = <0 0x800 0 0x104>;
+                               #clock-cells = <1>;
+                               clocks = <&clkc_pll CLKID_FCLK_DIV2>,
+                                        <&clkc_pll CLKID_FCLK_DIV3>,
+                                        <&clkc_pll CLKID_FCLK_DIV5>,
+                                        <&clkc_pll CLKID_FCLK_DIV7>,
+                                        <&clkc_pll CLKID_HIFI_PLL>,
+                                        <&xtal>;
+                               clock-names = "fclk_div2", "fclk_div3",
+                                             "fclk_div5", "fclk_div7",
+                                             "hifi_pll", "xtal";
+                       };
+
                        uart_AO: serial@1c00 {
                                compatible = "amlogic,meson-a1-uart",
                                             "amlogic,meson-ao-uart";
                                clock-names = "xtal", "pclk", "baud";
                                status = "disabled";
                        };
+
+                       clkc_pll: pll-clock-controller@7c80 {
+                               compatible = "amlogic,a1-pll-clkc";
+                               reg = <0 0x7c80 0 0x18c>;
+                               #clock-cells = <1>;
+                               clocks = <&clkc_periphs CLKID_FIXPLL_IN>,
+                                        <&clkc_periphs CLKID_HIFIPLL_IN>;
+                               clock-names = "fixpll_in", "hifipll_in";
+                       };
                };
 
                gic: interrupt-controller@ff901000 {