[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20251013-kona-bus-clock-v7-3-8f473d99ae19@gmail.com>
Date: Mon, 13 Oct 2025 15:41:50 +0200
From: Artur Weber <aweber.kernel@...il.com>
To: Michael Turquette <mturquette@...libre.com>,
Stephen Boyd <sboyd@...nel.org>,
Florian Fainelli <florian.fainelli@...adcom.com>,
Ray Jui <rjui@...adcom.com>, Scott Branden <sbranden@...adcom.com>,
Broadcom internal kernel review list <bcm-kernel-feedback-list@...adcom.com>,
Rob Herring <robh@...nel.org>, Krzysztof Kozlowski <krzk+dt@...nel.org>,
Conor Dooley <conor+dt@...nel.org>
Cc: Alex Elder <elder@...nel.org>,
Stanislav Jakubek <stano.jakubek@...il.com>, linux-clk@...r.kernel.org,
linux-kernel@...r.kernel.org, devicetree@...r.kernel.org,
~postmarketos/upstreaming@...ts.sr.ht, linux-arm-kernel@...ts.infradead.org,
phone-devel@...r.kernel.org, Artur Weber <aweber.kernel@...il.com>,
Krzysztof Kozlowski <krzysztof.kozlowski@...aro.org>
Subject: [PATCH v7 3/7] dt-bindings: clock: brcm,kona-ccu: Add BCM21664 and
BCM281xx bus clocks
Add bus clocks corresponding to peripheral clocks currently supported
by the BCM21664 and BCM281xx clock drivers and add the relevant clock
IDs to the dt-bindings headers (bcm21664.h, bcm281xx.h).
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@...aro.org>
Reviewed-by: Florian Fainelli <florian.fainelli@...adcom.com>
Signed-off-by: Artur Weber <aweber.kernel@...il.com>
---
Changes in v4:
- Squash BCM21664 and BCM281xx bus clock bindings commits
---
.../devicetree/bindings/clock/brcm,kona-ccu.yaml | 49 ++++++++++++++++++++--
include/dt-bindings/clock/bcm21664.h | 13 ++++++
include/dt-bindings/clock/bcm281xx.h | 19 +++++++++
3 files changed, 78 insertions(+), 3 deletions(-)
diff --git a/Documentation/devicetree/bindings/clock/brcm,kona-ccu.yaml b/Documentation/devicetree/bindings/clock/brcm,kona-ccu.yaml
index e5656950b3bd..d00dcf916b45 100644
--- a/Documentation/devicetree/bindings/clock/brcm,kona-ccu.yaml
+++ b/Documentation/devicetree/bindings/clock/brcm,kona-ccu.yaml
@@ -40,7 +40,7 @@ properties:
clock-output-names:
minItems: 1
- maxItems: 10
+ maxItems: 20
required:
- compatible
@@ -61,6 +61,8 @@ allOf:
- const: hub_timer
- const: pmu_bsc
- const: pmu_bsc_var
+ - const: hub_timer_apb
+ - const: pmu_bsc_apb
- if:
properties:
compatible:
@@ -86,6 +88,13 @@ allOf:
- const: usb_ic
- const: hsic2_48m
- const: hsic2_12m
+ - const: sdio1_ahb
+ - const: sdio2_ahb
+ - const: sdio3_ahb
+ - const: sdio4_ahb
+ - const: usb_ic_ahb
+ - const: hsic2_ahb
+ - const: usb_otg_ahb
- if:
properties:
compatible:
@@ -116,6 +125,16 @@ allOf:
- const: bsc2
- const: bsc3
- const: pwm
+ - const: uartb_apb
+ - const: uartb2_apb
+ - const: uartb3_apb
+ - const: uartb4_apb
+ - const: ssp0_apb
+ - const: ssp2_apb
+ - const: bsc1_apb
+ - const: bsc2_apb
+ - const: bsc3_apb
+ - const: pwm_apb
- if:
properties:
compatible:
@@ -124,7 +143,9 @@ allOf:
then:
properties:
clock-output-names:
- const: hub_timer
+ items:
+ - const: hub_timer
+ - const: hub_timer_apb
- if:
properties:
compatible:
@@ -142,6 +163,11 @@ allOf:
- const: sdio2_sleep
- const: sdio3_sleep
- const: sdio4_sleep
+ - const: sdio1_ahb
+ - const: sdio2_ahb
+ - const: sdio3_ahb
+ - const: sdio4_ahb
+ - const: usb_otg_ahb
- if:
properties:
compatible:
@@ -158,6 +184,13 @@ allOf:
- const: bsc2
- const: bsc3
- const: bsc4
+ - const: uartb_apb
+ - const: uartb2_apb
+ - const: uartb3_apb
+ - const: bsc1_apb
+ - const: bsc2_apb
+ - const: bsc3_apb
+ - const: bsc4_apb
additionalProperties: false
@@ -176,6 +209,16 @@ examples:
"bsc1",
"bsc2",
"bsc3",
- "pwm";
+ "pwm",
+ "uartb_apb",
+ "uartb2_apb",
+ "uartb3_apb",
+ "uartb4_apb",
+ "ssp0_apb",
+ "ssp2_apb",
+ "bsc1_apb",
+ "bsc2_apb",
+ "bsc3_apb",
+ "pwm_apb";
};
...
diff --git a/include/dt-bindings/clock/bcm21664.h b/include/dt-bindings/clock/bcm21664.h
index 7a380a51848c..9f3614eb9036 100644
--- a/include/dt-bindings/clock/bcm21664.h
+++ b/include/dt-bindings/clock/bcm21664.h
@@ -25,6 +25,7 @@
/* aon CCU clock ids */
#define BCM21664_AON_CCU_HUB_TIMER 0
+#define BCM21664_AON_CCU_HUB_TIMER_APB 1
/* master CCU clock ids */
@@ -36,6 +37,11 @@
#define BCM21664_MASTER_CCU_SDIO2_SLEEP 5
#define BCM21664_MASTER_CCU_SDIO3_SLEEP 6
#define BCM21664_MASTER_CCU_SDIO4_SLEEP 7
+#define BCM21664_MASTER_CCU_SDIO1_AHB 8
+#define BCM21664_MASTER_CCU_SDIO2_AHB 9
+#define BCM21664_MASTER_CCU_SDIO3_AHB 10
+#define BCM21664_MASTER_CCU_SDIO4_AHB 11
+#define BCM21664_MASTER_CCU_USB_OTG_AHB 12
/* slave CCU clock ids */
@@ -46,5 +52,12 @@
#define BCM21664_SLAVE_CCU_BSC2 4
#define BCM21664_SLAVE_CCU_BSC3 5
#define BCM21664_SLAVE_CCU_BSC4 6
+#define BCM21664_SLAVE_CCU_UARTB_APB 7
+#define BCM21664_SLAVE_CCU_UARTB2_APB 8
+#define BCM21664_SLAVE_CCU_UARTB3_APB 9
+#define BCM21664_SLAVE_CCU_BSC1_APB 10
+#define BCM21664_SLAVE_CCU_BSC2_APB 11
+#define BCM21664_SLAVE_CCU_BSC3_APB 12
+#define BCM21664_SLAVE_CCU_BSC4_APB 13
#endif /* _CLOCK_BCM21664_H */
diff --git a/include/dt-bindings/clock/bcm281xx.h b/include/dt-bindings/clock/bcm281xx.h
index 0c7a7e10cb42..8e3ac4ab3e16 100644
--- a/include/dt-bindings/clock/bcm281xx.h
+++ b/include/dt-bindings/clock/bcm281xx.h
@@ -33,6 +33,8 @@
#define BCM281XX_AON_CCU_HUB_TIMER 0
#define BCM281XX_AON_CCU_PMU_BSC 1
#define BCM281XX_AON_CCU_PMU_BSC_VAR 2
+#define BCM281XX_AON_CCU_HUB_TIMER_APB 3
+#define BCM281XX_AON_CCU_PMU_BSC_APB 4
/* hub CCU clock ids */
@@ -47,6 +49,13 @@
#define BCM281XX_MASTER_CCU_USB_IC 4
#define BCM281XX_MASTER_CCU_HSIC2_48M 5
#define BCM281XX_MASTER_CCU_HSIC2_12M 6
+#define BCM281XX_MASTER_CCU_SDIO1_AHB 7
+#define BCM281XX_MASTER_CCU_SDIO2_AHB 8
+#define BCM281XX_MASTER_CCU_SDIO3_AHB 9
+#define BCM281XX_MASTER_CCU_SDIO4_AHB 10
+#define BCM281XX_MASTER_CCU_USB_IC_AHB 11
+#define BCM281XX_MASTER_CCU_HSIC2_AHB 12
+#define BCM281XX_MASTER_CCU_USB_OTG_AHB 13
/* slave CCU clock ids */
@@ -60,5 +69,15 @@
#define BCM281XX_SLAVE_CCU_BSC2 7
#define BCM281XX_SLAVE_CCU_BSC3 8
#define BCM281XX_SLAVE_CCU_PWM 9
+#define BCM281XX_SLAVE_CCU_UARTB_APB 10
+#define BCM281XX_SLAVE_CCU_UARTB2_APB 11
+#define BCM281XX_SLAVE_CCU_UARTB3_APB 12
+#define BCM281XX_SLAVE_CCU_UARTB4_APB 13
+#define BCM281XX_SLAVE_CCU_SSP0_APB 14
+#define BCM281XX_SLAVE_CCU_SSP2_APB 15
+#define BCM281XX_SLAVE_CCU_BSC1_APB 16
+#define BCM281XX_SLAVE_CCU_BSC2_APB 17
+#define BCM281XX_SLAVE_CCU_BSC3_APB 18
+#define BCM281XX_SLAVE_CCU_PWM_APB 19
#endif /* _CLOCK_BCM281XX_H */
--
2.51.0
Powered by blists - more mailing lists