Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

dt-bindings: clock: add Amlogic T7 PLL clock controller

Add DT bindings for the PLL clock controller of the Amlogic T7 SoC family.

Signed-off-by: Jian Hu <jian.hu@amlogic.com>
Reviewed-by: Conor Dooley <conor.dooley@microchip.com>
Link: https://lore.kernel.org/r/20251212022619.3072132-2-jian.hu@amlogic.com
Signed-off-by: Jerome Brunet <jbrunet@baylibre.com>

authored by

Jian Hu and committed by
Jerome Brunet
54377537 8f0b4cce

+170
+114
Documentation/devicetree/bindings/clock/amlogic,t7-pll-clkc.yaml
··· 1 + # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2 + # Copyright (C) 2024-2025 Amlogic, Inc. All rights reserved 3 + %YAML 1.2 4 + --- 5 + $id: http://devicetree.org/schemas/clock/amlogic,t7-pll-clkc.yaml# 6 + $schema: http://devicetree.org/meta-schemas/core.yaml# 7 + 8 + title: Amlogic T7 PLL Clock Control Controller 9 + 10 + maintainers: 11 + - Neil Armstrong <neil.armstrong@linaro.org> 12 + - Jerome Brunet <jbrunet@baylibre.com> 13 + - Jian Hu <jian.hu@amlogic.com> 14 + - Xianwei Zhao <xianwei.zhao@amlogic.com> 15 + 16 + properties: 17 + compatible: 18 + enum: 19 + - amlogic,t7-gp0-pll 20 + - amlogic,t7-gp1-pll 21 + - amlogic,t7-hifi-pll 22 + - amlogic,t7-pcie-pll 23 + - amlogic,t7-mpll 24 + - amlogic,t7-hdmi-pll 25 + - amlogic,t7-mclk-pll 26 + 27 + reg: 28 + maxItems: 1 29 + 30 + '#clock-cells': 31 + const: 1 32 + 33 + clocks: 34 + items: 35 + - description: mclk pll input oscillator gate 36 + - description: oscillator input clock source for mclk_sel_0 37 + - description: fixed input clock source for mclk_sel_0 38 + minItems: 1 39 + 40 + clock-names: 41 + items: 42 + - const: in0 43 + - const: in1 44 + - const: in2 45 + minItems: 1 46 + 47 + required: 48 + - compatible 49 + - '#clock-cells' 50 + - reg 51 + - clocks 52 + - clock-names 53 + 54 + allOf: 55 + - if: 56 + properties: 57 + compatible: 58 + contains: 59 + const: amlogic,t7-mclk-pll 60 + 61 + then: 62 + properties: 63 + clocks: 64 + minItems: 3 65 + 66 + clock-names: 67 + minItems: 3 68 + 69 + - if: 70 + properties: 71 + compatible: 72 + contains: 73 + enum: 74 + - amlogic,t7-gp0-pll 75 + - amlogic,t7-gp1--pll 76 + - amlogic,t7-hifi-pll 77 + - amlogic,t7-pcie-pll 78 + - amlogic,t7-mpll 79 + - amlogic,t7-hdmi-pll 80 + 81 + then: 82 + properties: 83 + clocks: 84 + maxItems: 1 85 + 86 + clock-names: 87 + maxItems: 1 88 + 89 + additionalProperties: false 90 + 91 + examples: 92 + - | 93 + apb { 94 + #address-cells = <2>; 95 + #size-cells = <2>; 96 + 97 + clock-controller@8080 { 98 + compatible = "amlogic,t7-gp0-pll"; 99 + reg = <0 0x8080 0 0x20>; 100 + clocks = <&scmi_clk 2>; 101 + clock-names = "in0"; 102 + #clock-cells = <1>; 103 + }; 104 + 105 + clock-controller@8300 { 106 + compatible = "amlogic,t7-mclk-pll"; 107 + reg = <0 0x8300 0 0x18>; 108 + clocks = <&scmi_clk 2>, 109 + <&xtal>, 110 + <&scmi_clk 31>; 111 + clock-names = "in0", "in1", "in2"; 112 + #clock-cells = <1>; 113 + }; 114 + };
+56
include/dt-bindings/clock/amlogic,t7-pll-clkc.h
··· 1 + /* SPDX-License-Identifier: (GPL-2.0-only OR MIT) */ 2 + /* 3 + * Copyright (C) 2024-2025 Amlogic, Inc. All rights reserved 4 + */ 5 + 6 + #ifndef __T7_PLL_CLKC_H 7 + #define __T7_PLL_CLKC_H 8 + 9 + /* GP0 */ 10 + #define CLKID_GP0_PLL_DCO 0 11 + #define CLKID_GP0_PLL 1 12 + 13 + /* GP1 */ 14 + #define CLKID_GP1_PLL_DCO 0 15 + #define CLKID_GP1_PLL 1 16 + 17 + /* HIFI */ 18 + #define CLKID_HIFI_PLL_DCO 0 19 + #define CLKID_HIFI_PLL 1 20 + 21 + /* PCIE */ 22 + #define CLKID_PCIE_PLL_DCO 0 23 + #define CLKID_PCIE_PLL_DCO_DIV2 1 24 + #define CLKID_PCIE_PLL_OD 2 25 + #define CLKID_PCIE_PLL 3 26 + 27 + /* MPLL */ 28 + #define CLKID_MPLL_PREDIV 0 29 + #define CLKID_MPLL0_DIV 1 30 + #define CLKID_MPLL0 2 31 + #define CLKID_MPLL1_DIV 3 32 + #define CLKID_MPLL1 4 33 + #define CLKID_MPLL2_DIV 5 34 + #define CLKID_MPLL2 6 35 + #define CLKID_MPLL3_DIV 7 36 + #define CLKID_MPLL3 8 37 + 38 + /* HDMI */ 39 + #define CLKID_HDMI_PLL_DCO 0 40 + #define CLKID_HDMI_PLL_OD 1 41 + #define CLKID_HDMI_PLL 2 42 + 43 + /* MCLK */ 44 + #define CLKID_MCLK_PLL_DCO 0 45 + #define CLKID_MCLK_PRE 1 46 + #define CLKID_MCLK_PLL 2 47 + #define CLKID_MCLK_0_SEL 3 48 + #define CLKID_MCLK_0_DIV2 4 49 + #define CLKID_MCLK_0_PRE 5 50 + #define CLKID_MCLK_0 6 51 + #define CLKID_MCLK_1_SEL 7 52 + #define CLKID_MCLK_1_DIV2 8 53 + #define CLKID_MCLK_1_PRE 9 54 + #define CLKID_MCLK_1 10 55 + 56 + #endif /* __T7_PLL_CLKC_H */