]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
dt-bindings: clock: ipq5424-apss-clk: Add ipq5424 apss clock controller
authorSricharan Ramabadhran <quic_srichara@quicinc.com>
Mon, 11 Aug 2025 09:09:51 +0000 (14:39 +0530)
committerBjorn Andersson <andersson@kernel.org>
Mon, 11 Aug 2025 15:05:20 +0000 (10:05 -0500)
The CPU core in ipq5424 is clocked by a huayra PLL with RCG support.
The RCG and PLL have a separate register space from the GCC.
Also the L3 cache has a separate pll and needs to be scaled along
with the CPU.

Co-developed-by: Md Sadre Alam <quic_mdalam@quicinc.com>
Signed-off-by: Md Sadre Alam <quic_mdalam@quicinc.com>
Signed-off-by: Sricharan Ramabadhran <quic_srichara@quicinc.com>
[ Added interconnect related changes ]
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Varadarajan Narayanan <quic_varada@quicinc.com>
Link: https://lore.kernel.org/r/20250811090954.2854440-2-quic_varada@quicinc.com
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
Documentation/devicetree/bindings/clock/qcom,ipq5424-apss-clk.yaml [new file with mode: 0644]
include/dt-bindings/clock/qcom,apss-ipq.h
include/dt-bindings/interconnect/qcom,ipq5424.h

diff --git a/Documentation/devicetree/bindings/clock/qcom,ipq5424-apss-clk.yaml b/Documentation/devicetree/bindings/clock/qcom,ipq5424-apss-clk.yaml
new file mode 100644 (file)
index 0000000..def739f
--- /dev/null
@@ -0,0 +1,55 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/clock/qcom,ipq5424-apss-clk.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Qualcomm APSS IPQ5424 Clock Controller
+
+maintainers:
+  - Varadarajan Narayanan <quic_varada@quicinc.com>
+
+description:
+  The CPU core in ipq5424 is clocked by a huayra PLL with RCG support.
+  The RCG and PLL have a separate register space from the GCC.
+
+properties:
+  compatible:
+    enum:
+      - qcom,ipq5424-apss-clk
+
+  reg:
+    maxItems: 1
+
+  clocks:
+    items:
+      - description: Reference to the XO clock.
+      - description: Reference to the GPLL0 clock.
+
+  '#clock-cells':
+    const: 1
+
+  '#interconnect-cells':
+    const: 1
+
+required:
+  - compatible
+  - reg
+  - clocks
+  - '#clock-cells'
+  - '#interconnect-cells'
+
+additionalProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/clock/qcom,ipq5424-gcc.h>
+
+    apss_clk: clock-controller@fa80000 {
+      compatible = "qcom,ipq5424-apss-clk";
+      reg = <0x0fa80000 0x20000>;
+      clocks = <&xo_board>,
+               <&gcc GPLL0>;
+      #clock-cells = <1>;
+      #interconnect-cells = <1>;
+    };
index 77b6e05492e24c5e092316c14cac4dce9b3b0242..0bb41e5efdefb11e9e7e3885daa802f0090ff8f9 100644 (file)
@@ -8,5 +8,11 @@
 
 #define APCS_ALIAS0_CLK_SRC                    0
 #define APCS_ALIAS0_CORE_CLK                   1
+#define APSS_PLL_EARLY                         2
+#define APSS_SILVER_CLK_SRC                    3
+#define APSS_SILVER_CORE_CLK                   4
+#define L3_PLL                                 5
+#define L3_CLK_SRC                             6
+#define L3_CORE_CLK                            7
 
 #endif
index a770356112eedd65b97e40d066417d9b33ea3544..afd7e0683a249fca2ce43d3e4d8141eb29cddddd 100644 (file)
@@ -21,4 +21,7 @@
 #define MASTER_CNOC_USB                        16
 #define SLAVE_CNOC_USB                 17
 
+#define MASTER_CPU                     0
+#define SLAVE_L3                       1
+
 #endif /* INTERCONNECT_QCOM_IPQ5424_H */