* [PATCH 0/4] Add watchdog support for bcm2712
@ 2025-09-17 6:32 Stanimir Varbanov
2025-09-17 6:32 ` [PATCH 1/4] pmdomain: bcm: bcm2835-power: Prepare to support BCM2712 Stanimir Varbanov
` (4 more replies)
0 siblings, 5 replies; 15+ messages in thread
From: Stanimir Varbanov @ 2025-09-17 6:32 UTC (permalink / raw)
To: linux-kernel, devicetree, linux-arm-kernel, linux-rpi-kernel,
Broadcom internal kernel review list, linux-pm
Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Florian Fainelli,
Ray Jui, Scott Branden, Lee Jones, Ulf Hansson, Willow Cunningham,
Stefan Wahren, Saenz Julienne, Andrea della Porta, Phil Elwell,
Jonathan Bell, Dave Stevenson, Stanimir Varbanov
Hello,
The following patch-set aims to:
* allow probe of bcm2835-wdt watchdog driver for bcm2712.
* prepare bcm2835-power driver for enabling of v3d for bcm2712.
- patch 1/4 is preparing bcm2835-power driver to be able to
control GRAFX_V3D pm-domain. This is a prerequisite for the follow-up
patch-set which will add a v3d DT node for bcm2712 (RPi5).
- patches 2/4 and 3/4 are adding bcm2712-pm compatible in MFD driver
and update the dt-bindings accordingly.
- patch 4/4 is adding a watchdog DT node for bcm2712.
Comments are welcome!
regards,
~Stan
Stanimir Varbanov (4):
pmdomain: bcm: bcm2835-power: Prepare to support BCM2712
dt-bindings: soc: bcm: Add bcm2712 compatible
mfd: bcm2835-pm: Add support for BCM2712
arm64: dts: broadcom: bcm2712: Add watchdog DT node
.../bindings/soc/bcm/brcm,bcm2835-pm.yaml | 28 +++++++++++++++----
arch/arm64/boot/dts/broadcom/bcm2712.dtsi | 9 ++++++
drivers/mfd/bcm2835-pm.c | 1 +
drivers/pmdomain/bcm/bcm2835-power.c | 17 ++++++++---
4 files changed, 46 insertions(+), 9 deletions(-)
--
2.47.0
^ permalink raw reply [flat|nested] 15+ messages in thread
* [PATCH 1/4] pmdomain: bcm: bcm2835-power: Prepare to support BCM2712
2025-09-17 6:32 [PATCH 0/4] Add watchdog support for bcm2712 Stanimir Varbanov
@ 2025-09-17 6:32 ` Stanimir Varbanov
2025-10-26 20:16 ` Florian Fainelli
2025-11-11 11:51 ` Andrea della Porta
2025-09-17 6:32 ` [PATCH 2/4] dt-bindings: soc: bcm: Add bcm2712 compatible Stanimir Varbanov
` (3 subsequent siblings)
4 siblings, 2 replies; 15+ messages in thread
From: Stanimir Varbanov @ 2025-09-17 6:32 UTC (permalink / raw)
To: linux-kernel, devicetree, linux-arm-kernel, linux-rpi-kernel,
Broadcom internal kernel review list, linux-pm
Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Florian Fainelli,
Ray Jui, Scott Branden, Lee Jones, Ulf Hansson, Willow Cunningham,
Stefan Wahren, Saenz Julienne, Andrea della Porta, Phil Elwell,
Jonathan Bell, Dave Stevenson, Stanimir Varbanov
BCM2712 has a PM block but lacks asb and rpivid_asb register
spaces. To avoid unwanted results add a check for asb existence
during probe and also add a new register offset for bcm2712 to
control grafx_v3d power domain. The decision to use the new
register is implicit - if asb register base is null then the
driver is probed for bcm2712 (the other supported SoCs have
asb register space).
Signed-off-by: Stanimir Varbanov <svarbanov@suse.de>
---
drivers/pmdomain/bcm/bcm2835-power.c | 17 +++++++++++++----
1 file changed, 13 insertions(+), 4 deletions(-)
diff --git a/drivers/pmdomain/bcm/bcm2835-power.c b/drivers/pmdomain/bcm/bcm2835-power.c
index f5289fd184d0..1d29addfe036 100644
--- a/drivers/pmdomain/bcm/bcm2835-power.c
+++ b/drivers/pmdomain/bcm/bcm2835-power.c
@@ -79,6 +79,7 @@
#define PM_IMAGE 0x108
#define PM_GRAFX 0x10c
#define PM_PROC 0x110
+#define PM_GRAFX_2712 0x304
#define PM_ENAB BIT(12)
#define PM_ISPRSTN BIT(8)
#define PM_H264RSTN BIT(7)
@@ -381,6 +382,9 @@ static int bcm2835_power_pd_power_on(struct generic_pm_domain *domain)
return bcm2835_power_power_on(pd, PM_GRAFX);
case BCM2835_POWER_DOMAIN_GRAFX_V3D:
+ if (!power->asb)
+ return bcm2835_asb_power_on(pd, PM_GRAFX_2712,
+ 0, 0, PM_V3DRSTN);
return bcm2835_asb_power_on(pd, PM_GRAFX,
ASB_V3D_M_CTRL, ASB_V3D_S_CTRL,
PM_V3DRSTN);
@@ -447,6 +451,9 @@ static int bcm2835_power_pd_power_off(struct generic_pm_domain *domain)
return bcm2835_power_power_off(pd, PM_GRAFX);
case BCM2835_POWER_DOMAIN_GRAFX_V3D:
+ if (!power->asb)
+ return bcm2835_asb_power_off(pd, PM_GRAFX_2712,
+ 0, 0, PM_V3DRSTN);
return bcm2835_asb_power_off(pd, PM_GRAFX,
ASB_V3D_M_CTRL, ASB_V3D_S_CTRL,
PM_V3DRSTN);
@@ -635,10 +642,12 @@ static int bcm2835_power_probe(struct platform_device *pdev)
power->asb = pm->asb;
power->rpivid_asb = pm->rpivid_asb;
- id = readl(power->asb + ASB_AXI_BRDG_ID);
- if (id != BCM2835_BRDG_ID /* "BRDG" */) {
- dev_err(dev, "ASB register ID returned 0x%08x\n", id);
- return -ENODEV;
+ if (power->asb) {
+ id = readl(power->asb + ASB_AXI_BRDG_ID);
+ if (id != BCM2835_BRDG_ID /* "BRDG" */) {
+ dev_err(dev, "ASB register ID returned 0x%08x\n", id);
+ return -ENODEV;
+ }
}
if (power->rpivid_asb) {
--
2.47.0
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [PATCH 2/4] dt-bindings: soc: bcm: Add bcm2712 compatible
2025-09-17 6:32 [PATCH 0/4] Add watchdog support for bcm2712 Stanimir Varbanov
2025-09-17 6:32 ` [PATCH 1/4] pmdomain: bcm: bcm2835-power: Prepare to support BCM2712 Stanimir Varbanov
@ 2025-09-17 6:32 ` Stanimir Varbanov
2025-09-17 19:31 ` Conor Dooley
2025-10-26 20:17 ` Florian Fainelli
2025-09-17 6:32 ` [PATCH 3/4] mfd: bcm2835-pm: Add support for BCM2712 Stanimir Varbanov
` (2 subsequent siblings)
4 siblings, 2 replies; 15+ messages in thread
From: Stanimir Varbanov @ 2025-09-17 6:32 UTC (permalink / raw)
To: linux-kernel, devicetree, linux-arm-kernel, linux-rpi-kernel,
Broadcom internal kernel review list, linux-pm
Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Florian Fainelli,
Ray Jui, Scott Branden, Lee Jones, Ulf Hansson, Willow Cunningham,
Stefan Wahren, Saenz Julienne, Andrea della Porta, Phil Elwell,
Jonathan Bell, Dave Stevenson, Stanimir Varbanov
Add bcm2712-pm compatible and update the bindings to satisfy it's
requirements. The PM hardware block inside bcm2712 lacks the "asb"
and "rpivid_asb" register ranges and also does not has clocks, update
the bindings accordingly.
Signed-off-by: Stanimir Varbanov <svarbanov@suse.de>
---
.../bindings/soc/bcm/brcm,bcm2835-pm.yaml | 28 +++++++++++++++----
1 file changed, 23 insertions(+), 5 deletions(-)
diff --git a/Documentation/devicetree/bindings/soc/bcm/brcm,bcm2835-pm.yaml b/Documentation/devicetree/bindings/soc/bcm/brcm,bcm2835-pm.yaml
index e28ef198a801..c8d3d6131a8d 100644
--- a/Documentation/devicetree/bindings/soc/bcm/brcm,bcm2835-pm.yaml
+++ b/Documentation/devicetree/bindings/soc/bcm/brcm,bcm2835-pm.yaml
@@ -13,8 +13,7 @@ description: |
maintainers:
- Nicolas Saenz Julienne <nsaenz@kernel.org>
-allOf:
- - $ref: /schemas/watchdog/watchdog.yaml#
+$ref: /schemas/watchdog/watchdog.yaml#
properties:
compatible:
@@ -22,14 +21,15 @@ properties:
- enum:
- brcm,bcm2835-pm
- brcm,bcm2711-pm
+ - brcm,bcm2712-pm
- const: brcm,bcm2835-pm-wdt
reg:
- minItems: 2
+ minItems: 1
maxItems: 3
reg-names:
- minItems: 2
+ minItems: 1
items:
- const: pm
- const: asb
@@ -62,7 +62,25 @@ required:
- reg
- "#power-domain-cells"
- "#reset-cells"
- - clocks
+
+allOf:
+ - if:
+ properties:
+ compatible:
+ contains:
+ enum:
+ - brcm,bcm2835-pm
+ - brcm,bcm2711-pm
+ then:
+ required:
+ - clocks
+
+ properties:
+ reg:
+ minItems: 2
+
+ reg-names:
+ minItems: 2
additionalProperties: false
--
2.47.0
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [PATCH 3/4] mfd: bcm2835-pm: Add support for BCM2712
2025-09-17 6:32 [PATCH 0/4] Add watchdog support for bcm2712 Stanimir Varbanov
2025-09-17 6:32 ` [PATCH 1/4] pmdomain: bcm: bcm2835-power: Prepare to support BCM2712 Stanimir Varbanov
2025-09-17 6:32 ` [PATCH 2/4] dt-bindings: soc: bcm: Add bcm2712 compatible Stanimir Varbanov
@ 2025-09-17 6:32 ` Stanimir Varbanov
2025-10-26 20:19 ` Florian Fainelli
2025-11-06 17:01 ` (subset) " Lee Jones
2025-09-17 6:32 ` [PATCH 4/4] arm64: dts: broadcom: bcm2712: Add watchdog DT node Stanimir Varbanov
2025-10-13 11:08 ` [PATCH 0/4] Add watchdog support for bcm2712 Ulf Hansson
4 siblings, 2 replies; 15+ messages in thread
From: Stanimir Varbanov @ 2025-09-17 6:32 UTC (permalink / raw)
To: linux-kernel, devicetree, linux-arm-kernel, linux-rpi-kernel,
Broadcom internal kernel review list, linux-pm
Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Florian Fainelli,
Ray Jui, Scott Branden, Lee Jones, Ulf Hansson, Willow Cunningham,
Stefan Wahren, Saenz Julienne, Andrea della Porta, Phil Elwell,
Jonathan Bell, Dave Stevenson, Stanimir Varbanov
The BCM2712 SoC has PM block but lacks the "asb" and "rpivid_asb"
register spaces, and doesn't need clock(s). Add a compatible
string for bcm2712 to allow probe of bcm2835-wdt and
bcm2835-power drivers.
Signed-off-by: Stanimir Varbanov <svarbanov@suse.de>
---
drivers/mfd/bcm2835-pm.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/mfd/bcm2835-pm.c b/drivers/mfd/bcm2835-pm.c
index 3cb2b9423121..8bed59816e82 100644
--- a/drivers/mfd/bcm2835-pm.c
+++ b/drivers/mfd/bcm2835-pm.c
@@ -108,6 +108,7 @@ static const struct of_device_id bcm2835_pm_of_match[] = {
{ .compatible = "brcm,bcm2835-pm-wdt", },
{ .compatible = "brcm,bcm2835-pm", },
{ .compatible = "brcm,bcm2711-pm", },
+ { .compatible = "brcm,bcm2712-pm", },
{},
};
MODULE_DEVICE_TABLE(of, bcm2835_pm_of_match);
--
2.47.0
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [PATCH 4/4] arm64: dts: broadcom: bcm2712: Add watchdog DT node
2025-09-17 6:32 [PATCH 0/4] Add watchdog support for bcm2712 Stanimir Varbanov
` (2 preceding siblings ...)
2025-09-17 6:32 ` [PATCH 3/4] mfd: bcm2835-pm: Add support for BCM2712 Stanimir Varbanov
@ 2025-09-17 6:32 ` Stanimir Varbanov
2025-10-26 20:21 ` Florian Fainelli
2025-10-13 11:08 ` [PATCH 0/4] Add watchdog support for bcm2712 Ulf Hansson
4 siblings, 1 reply; 15+ messages in thread
From: Stanimir Varbanov @ 2025-09-17 6:32 UTC (permalink / raw)
To: linux-kernel, devicetree, linux-arm-kernel, linux-rpi-kernel,
Broadcom internal kernel review list, linux-pm
Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Florian Fainelli,
Ray Jui, Scott Branden, Lee Jones, Ulf Hansson, Willow Cunningham,
Stefan Wahren, Saenz Julienne, Andrea della Porta, Phil Elwell,
Jonathan Bell, Dave Stevenson, Stanimir Varbanov
Add watchdog device-tree node for bcm2712 SoC.
Signed-off-by: Stanimir Varbanov <svarbanov@suse.de>
---
arch/arm64/boot/dts/broadcom/bcm2712.dtsi | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/arch/arm64/boot/dts/broadcom/bcm2712.dtsi b/arch/arm64/boot/dts/broadcom/bcm2712.dtsi
index 0a9212d3106f..3094a8e69f35 100644
--- a/arch/arm64/boot/dts/broadcom/bcm2712.dtsi
+++ b/arch/arm64/boot/dts/broadcom/bcm2712.dtsi
@@ -243,6 +243,15 @@ uart10: serial@7d001000 {
status = "disabled";
};
+ pm: watchdog@7d200000 {
+ compatible = "brcm,bcm2712-pm", "brcm,bcm2835-pm-wdt";
+ reg = <0x7d200000 0x308>;
+ reg-names = "pm";
+ #power-domain-cells = <1>;
+ #reset-cells = <1>;
+ system-power-controller;
+ };
+
interrupt-controller@7d517000 {
compatible = "brcm,bcm7271-l2-intc";
reg = <0x7d517000 0x10>;
--
2.47.0
^ permalink raw reply related [flat|nested] 15+ messages in thread
* Re: [PATCH 2/4] dt-bindings: soc: bcm: Add bcm2712 compatible
2025-09-17 6:32 ` [PATCH 2/4] dt-bindings: soc: bcm: Add bcm2712 compatible Stanimir Varbanov
@ 2025-09-17 19:31 ` Conor Dooley
2025-10-26 20:17 ` Florian Fainelli
1 sibling, 0 replies; 15+ messages in thread
From: Conor Dooley @ 2025-09-17 19:31 UTC (permalink / raw)
To: Stanimir Varbanov
Cc: linux-kernel, devicetree, linux-arm-kernel, linux-rpi-kernel,
Broadcom internal kernel review list, linux-pm, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Florian Fainelli, Ray Jui,
Scott Branden, Lee Jones, Ulf Hansson, Willow Cunningham,
Stefan Wahren, Saenz Julienne, Andrea della Porta, Phil Elwell,
Jonathan Bell, Dave Stevenson
[-- Attachment #1: Type: text/plain, Size: 2176 bytes --]
On Wed, Sep 17, 2025 at 09:32:31AM +0300, Stanimir Varbanov wrote:
> Add bcm2712-pm compatible and update the bindings to satisfy it's
> requirements. The PM hardware block inside bcm2712 lacks the "asb"
> and "rpivid_asb" register ranges and also does not has clocks, update
> the bindings accordingly.
>
> Signed-off-by: Stanimir Varbanov <svarbanov@suse.de>
> ---
> .../bindings/soc/bcm/brcm,bcm2835-pm.yaml | 28 +++++++++++++++----
> 1 file changed, 23 insertions(+), 5 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/soc/bcm/brcm,bcm2835-pm.yaml b/Documentation/devicetree/bindings/soc/bcm/brcm,bcm2835-pm.yaml
> index e28ef198a801..c8d3d6131a8d 100644
> --- a/Documentation/devicetree/bindings/soc/bcm/brcm,bcm2835-pm.yaml
> +++ b/Documentation/devicetree/bindings/soc/bcm/brcm,bcm2835-pm.yaml
> @@ -13,8 +13,7 @@ description: |
> maintainers:
> - Nicolas Saenz Julienne <nsaenz@kernel.org>
>
> -allOf:
> - - $ref: /schemas/watchdog/watchdog.yaml#
> +$ref: /schemas/watchdog/watchdog.yaml#
Please move this down with the allof.
>
> properties:
> compatible:
> @@ -22,14 +21,15 @@ properties:
> - enum:
> - brcm,bcm2835-pm
> - brcm,bcm2711-pm
> + - brcm,bcm2712-pm
> - const: brcm,bcm2835-pm-wdt
>
> reg:
> - minItems: 2
> + minItems: 1
> maxItems: 3
>
> reg-names:
> - minItems: 2
> + minItems: 1
> items:
> - const: pm
> - const: asb
> @@ -62,7 +62,25 @@ required:
> - reg
> - "#power-domain-cells"
> - "#reset-cells"
> - - clocks
> +
> +allOf:
> + - if:
> + properties:
> + compatible:
> + contains:
> + enum:
> + - brcm,bcm2835-pm
> + - brcm,bcm2711-pm
> + then:
> + required:
> + - clocks
> +
> + properties:
> + reg:
> + minItems: 2
> +
> + reg-names:
> + minItems: 2
If the new device doesn't have clocks or the extra reg ranges, please
add an else clause that enforces it.
>
> additionalProperties: false
>
> --
> 2.47.0
>
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 0/4] Add watchdog support for bcm2712
2025-09-17 6:32 [PATCH 0/4] Add watchdog support for bcm2712 Stanimir Varbanov
` (3 preceding siblings ...)
2025-09-17 6:32 ` [PATCH 4/4] arm64: dts: broadcom: bcm2712: Add watchdog DT node Stanimir Varbanov
@ 2025-10-13 11:08 ` Ulf Hansson
2025-10-26 20:22 ` Florian Fainelli
4 siblings, 1 reply; 15+ messages in thread
From: Ulf Hansson @ 2025-10-13 11:08 UTC (permalink / raw)
To: Stanimir Varbanov
Cc: linux-kernel, devicetree, linux-arm-kernel, linux-rpi-kernel,
Broadcom internal kernel review list, linux-pm, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Florian Fainelli, Ray Jui,
Scott Branden, Lee Jones, Willow Cunningham, Stefan Wahren,
Saenz Julienne, Andrea della Porta, Phil Elwell, Jonathan Bell,
Dave Stevenson
On Wed, 17 Sept 2025 at 08:33, Stanimir Varbanov <svarbanov@suse.de> wrote:
>
> Hello,
>
> The following patch-set aims to:
>
> * allow probe of bcm2835-wdt watchdog driver for bcm2712.
> * prepare bcm2835-power driver for enabling of v3d for bcm2712.
>
> - patch 1/4 is preparing bcm2835-power driver to be able to
> control GRAFX_V3D pm-domain. This is a prerequisite for the follow-up
> patch-set which will add a v3d DT node for bcm2712 (RPi5).
>
> - patches 2/4 and 3/4 are adding bcm2712-pm compatible in MFD driver
> and update the dt-bindings accordingly.
>
> - patch 4/4 is adding a watchdog DT node for bcm2712.
>
> Comments are welcome!
This looks good to me!
Kind regards
Uffe
>
> regards,
> ~Stan
>
> Stanimir Varbanov (4):
> pmdomain: bcm: bcm2835-power: Prepare to support BCM2712
> dt-bindings: soc: bcm: Add bcm2712 compatible
> mfd: bcm2835-pm: Add support for BCM2712
> arm64: dts: broadcom: bcm2712: Add watchdog DT node
>
> .../bindings/soc/bcm/brcm,bcm2835-pm.yaml | 28 +++++++++++++++----
> arch/arm64/boot/dts/broadcom/bcm2712.dtsi | 9 ++++++
> drivers/mfd/bcm2835-pm.c | 1 +
> drivers/pmdomain/bcm/bcm2835-power.c | 17 ++++++++---
> 4 files changed, 46 insertions(+), 9 deletions(-)
>
> --
> 2.47.0
>
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 1/4] pmdomain: bcm: bcm2835-power: Prepare to support BCM2712
2025-09-17 6:32 ` [PATCH 1/4] pmdomain: bcm: bcm2835-power: Prepare to support BCM2712 Stanimir Varbanov
@ 2025-10-26 20:16 ` Florian Fainelli
2025-11-11 11:51 ` Andrea della Porta
1 sibling, 0 replies; 15+ messages in thread
From: Florian Fainelli @ 2025-10-26 20:16 UTC (permalink / raw)
To: Stanimir Varbanov, linux-kernel, devicetree, linux-arm-kernel,
linux-rpi-kernel, Broadcom internal kernel review list, linux-pm
Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Ray Jui,
Scott Branden, Lee Jones, Ulf Hansson, Willow Cunningham,
Stefan Wahren, Saenz Julienne, Andrea della Porta, Phil Elwell,
Jonathan Bell, Dave Stevenson
On 9/16/2025 11:32 PM, Stanimir Varbanov wrote:
> BCM2712 has a PM block but lacks asb and rpivid_asb register
> spaces. To avoid unwanted results add a check for asb existence
> during probe and also add a new register offset for bcm2712 to
> control grafx_v3d power domain. The decision to use the new
> register is implicit - if asb register base is null then the
> driver is probed for bcm2712 (the other supported SoCs have
> asb register space).
>
> Signed-off-by: Stanimir Varbanov <svarbanov@suse.de>
Reviewed-by: Florian Fainelli <florian.fainelli@broadcom.com>
--
Florian
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 2/4] dt-bindings: soc: bcm: Add bcm2712 compatible
2025-09-17 6:32 ` [PATCH 2/4] dt-bindings: soc: bcm: Add bcm2712 compatible Stanimir Varbanov
2025-09-17 19:31 ` Conor Dooley
@ 2025-10-26 20:17 ` Florian Fainelli
1 sibling, 0 replies; 15+ messages in thread
From: Florian Fainelli @ 2025-10-26 20:17 UTC (permalink / raw)
To: Stanimir Varbanov, linux-kernel, devicetree, linux-arm-kernel,
linux-rpi-kernel, Broadcom internal kernel review list, linux-pm
Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Ray Jui,
Scott Branden, Lee Jones, Ulf Hansson, Willow Cunningham,
Stefan Wahren, Saenz Julienne, Andrea della Porta, Phil Elwell,
Jonathan Bell, Dave Stevenson
On 9/16/2025 11:32 PM, Stanimir Varbanov wrote:
> Add bcm2712-pm compatible and update the bindings to satisfy it's
> requirements. The PM hardware block inside bcm2712 lacks the "asb"
> and "rpivid_asb" register ranges and also does not has clocks, update
> the bindings accordingly.
s/does not has/does not have/
With Conor's feedback addressed:
Reviewed-by: Florian Fainelli <florian.fainelli@broadcom.com>
--
Florian
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 3/4] mfd: bcm2835-pm: Add support for BCM2712
2025-09-17 6:32 ` [PATCH 3/4] mfd: bcm2835-pm: Add support for BCM2712 Stanimir Varbanov
@ 2025-10-26 20:19 ` Florian Fainelli
2025-11-06 17:01 ` (subset) " Lee Jones
1 sibling, 0 replies; 15+ messages in thread
From: Florian Fainelli @ 2025-10-26 20:19 UTC (permalink / raw)
To: Stanimir Varbanov, linux-kernel, devicetree, linux-arm-kernel,
linux-rpi-kernel, Broadcom internal kernel review list, linux-pm
Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Ray Jui,
Scott Branden, Lee Jones, Ulf Hansson, Willow Cunningham,
Stefan Wahren, Saenz Julienne, Andrea della Porta, Phil Elwell,
Jonathan Bell, Dave Stevenson
On 9/16/2025 11:32 PM, Stanimir Varbanov wrote:
> The BCM2712 SoC has PM block but lacks the "asb" and "rpivid_asb"
> register spaces, and doesn't need clock(s). Add a compatible
> string for bcm2712 to allow probe of bcm2835-wdt and
> bcm2835-power drivers.
>
> Signed-off-by: Stanimir Varbanov <svarbanov@suse.de>
Reviewed-by: Florian Fainelli <florian.fainelli@broadcom.com>
--
Florian
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 4/4] arm64: dts: broadcom: bcm2712: Add watchdog DT node
2025-09-17 6:32 ` [PATCH 4/4] arm64: dts: broadcom: bcm2712: Add watchdog DT node Stanimir Varbanov
@ 2025-10-26 20:21 ` Florian Fainelli
0 siblings, 0 replies; 15+ messages in thread
From: Florian Fainelli @ 2025-10-26 20:21 UTC (permalink / raw)
To: Stanimir Varbanov, linux-kernel, devicetree, linux-arm-kernel,
linux-rpi-kernel, Broadcom internal kernel review list, linux-pm
Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Ray Jui,
Scott Branden, Lee Jones, Ulf Hansson, Willow Cunningham,
Stefan Wahren, Saenz Julienne, Andrea della Porta, Phil Elwell,
Jonathan Bell, Dave Stevenson
On 9/16/2025 11:32 PM, Stanimir Varbanov wrote:
> Add watchdog device-tree node for bcm2712 SoC.
>
> Signed-off-by: Stanimir Varbanov <svarbanov@suse.de>
> ---
> arch/arm64/boot/dts/broadcom/bcm2712.dtsi | 9 +++++++++
> 1 file changed, 9 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/broadcom/bcm2712.dtsi b/arch/arm64/boot/dts/broadcom/bcm2712.dtsi
> index 0a9212d3106f..3094a8e69f35 100644
> --- a/arch/arm64/boot/dts/broadcom/bcm2712.dtsi
> +++ b/arch/arm64/boot/dts/broadcom/bcm2712.dtsi
> @@ -243,6 +243,15 @@ uart10: serial@7d001000 {
> status = "disabled";
> };
>
> + pm: watchdog@7d200000 {
> + compatible = "brcm,bcm2712-pm", "brcm,bcm2835-pm-wdt";
> + reg = <0x7d200000 0x308>;
The register actually spans up to offset 0x600, so the register size
would be 0x604 here.
--
Florian
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 0/4] Add watchdog support for bcm2712
2025-10-13 11:08 ` [PATCH 0/4] Add watchdog support for bcm2712 Ulf Hansson
@ 2025-10-26 20:22 ` Florian Fainelli
2025-10-30 15:27 ` Ulf Hansson
0 siblings, 1 reply; 15+ messages in thread
From: Florian Fainelli @ 2025-10-26 20:22 UTC (permalink / raw)
To: Ulf Hansson, Stanimir Varbanov
Cc: linux-kernel, devicetree, linux-arm-kernel, linux-rpi-kernel,
Broadcom internal kernel review list, linux-pm, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Ray Jui, Scott Branden,
Lee Jones, Willow Cunningham, Stefan Wahren, Saenz Julienne,
Andrea della Porta, Phil Elwell, Jonathan Bell, Dave Stevenson
On 10/13/2025 4:08 AM, Ulf Hansson wrote:
> On Wed, 17 Sept 2025 at 08:33, Stanimir Varbanov <svarbanov@suse.de> wrote:
>>
>> Hello,
>>
>> The following patch-set aims to:
>>
>> * allow probe of bcm2835-wdt watchdog driver for bcm2712.
>> * prepare bcm2835-power driver for enabling of v3d for bcm2712.
>>
>> - patch 1/4 is preparing bcm2835-power driver to be able to
>> control GRAFX_V3D pm-domain. This is a prerequisite for the follow-up
>> patch-set which will add a v3d DT node for bcm2712 (RPi5).
>>
>> - patches 2/4 and 3/4 are adding bcm2712-pm compatible in MFD driver
>> and update the dt-bindings accordingly.
>>
>> - patch 4/4 is adding a watchdog DT node for bcm2712.
>>
>> Comments are welcome!
>
> This looks good to me!
How do you want to proceed with merging those patches? I would assume
you would take patches 1-3 and I would take patch 4.
Thanks!
--
Florian
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 0/4] Add watchdog support for bcm2712
2025-10-26 20:22 ` Florian Fainelli
@ 2025-10-30 15:27 ` Ulf Hansson
0 siblings, 0 replies; 15+ messages in thread
From: Ulf Hansson @ 2025-10-30 15:27 UTC (permalink / raw)
To: Florian Fainelli
Cc: Stanimir Varbanov, linux-kernel, devicetree, linux-arm-kernel,
linux-rpi-kernel, Broadcom internal kernel review list, linux-pm,
Rob Herring, Krzysztof Kozlowski, Conor Dooley, Ray Jui,
Scott Branden, Lee Jones, Willow Cunningham, Stefan Wahren,
Saenz Julienne, Andrea della Porta, Phil Elwell, Jonathan Bell,
Dave Stevenson
On Sun, 26 Oct 2025 at 21:23, Florian Fainelli
<florian.fainelli@broadcom.com> wrote:
>
>
>
> On 10/13/2025 4:08 AM, Ulf Hansson wrote:
> > On Wed, 17 Sept 2025 at 08:33, Stanimir Varbanov <svarbanov@suse.de> wrote:
> >>
> >> Hello,
> >>
> >> The following patch-set aims to:
> >>
> >> * allow probe of bcm2835-wdt watchdog driver for bcm2712.
> >> * prepare bcm2835-power driver for enabling of v3d for bcm2712.
> >>
> >> - patch 1/4 is preparing bcm2835-power driver to be able to
> >> control GRAFX_V3D pm-domain. This is a prerequisite for the follow-up
> >> patch-set which will add a v3d DT node for bcm2712 (RPi5).
> >>
> >> - patches 2/4 and 3/4 are adding bcm2712-pm compatible in MFD driver
> >> and update the dt-bindings accordingly.
> >>
> >> - patch 4/4 is adding a watchdog DT node for bcm2712.
> >>
> >> Comments are welcome!
> >
> > This looks good to me!
>
> How do you want to proceed with merging those patches? I would assume
> you would take patches 1-3 and I would take patch 4.
Yep, that works for me. Awaiting a new version of the series to get
the comments on DT patch addressed.
Kind regards
Uffe
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: (subset) [PATCH 3/4] mfd: bcm2835-pm: Add support for BCM2712
2025-09-17 6:32 ` [PATCH 3/4] mfd: bcm2835-pm: Add support for BCM2712 Stanimir Varbanov
2025-10-26 20:19 ` Florian Fainelli
@ 2025-11-06 17:01 ` Lee Jones
1 sibling, 0 replies; 15+ messages in thread
From: Lee Jones @ 2025-11-06 17:01 UTC (permalink / raw)
To: linux-kernel, devicetree, linux-arm-kernel, linux-rpi-kernel,
Broadcom internal kernel review list, linux-pm, Stanimir Varbanov
Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Florian Fainelli,
Ray Jui, Scott Branden, Lee Jones, Ulf Hansson, Willow Cunningham,
Stefan Wahren, Saenz Julienne, Andrea della Porta, Phil Elwell,
Jonathan Bell, Dave Stevenson
On Wed, 17 Sep 2025 09:32:32 +0300, Stanimir Varbanov wrote:
> The BCM2712 SoC has PM block but lacks the "asb" and "rpivid_asb"
> register spaces, and doesn't need clock(s). Add a compatible
> string for bcm2712 to allow probe of bcm2835-wdt and
> bcm2835-power drivers.
>
>
Applied, thanks!
[3/4] mfd: bcm2835-pm: Add support for BCM2712
commit: 30ed024fb0768e9353f21d1d9e6960b7028acdfa
--
Lee Jones [李琼斯]
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 1/4] pmdomain: bcm: bcm2835-power: Prepare to support BCM2712
2025-09-17 6:32 ` [PATCH 1/4] pmdomain: bcm: bcm2835-power: Prepare to support BCM2712 Stanimir Varbanov
2025-10-26 20:16 ` Florian Fainelli
@ 2025-11-11 11:51 ` Andrea della Porta
1 sibling, 0 replies; 15+ messages in thread
From: Andrea della Porta @ 2025-11-11 11:51 UTC (permalink / raw)
To: Stanimir Varbanov
Cc: linux-kernel, devicetree, linux-arm-kernel, linux-rpi-kernel,
Broadcom internal kernel review list, linux-pm, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Florian Fainelli, Ray Jui,
Scott Branden, Lee Jones, Ulf Hansson, Willow Cunningham,
Stefan Wahren, Saenz Julienne, Andrea della Porta, Phil Elwell,
Jonathan Bell, Dave Stevenson
Hi Stan,
On 09:32 Wed 17 Sep , Stanimir Varbanov wrote:
> BCM2712 has a PM block but lacks asb and rpivid_asb register
> spaces. To avoid unwanted results add a check for asb existence
> during probe and also add a new register offset for bcm2712 to
> control grafx_v3d power domain. The decision to use the new
> register is implicit - if asb register base is null then the
> driver is probed for bcm2712 (the other supported SoCs have
> asb register space).
>
> Signed-off-by: Stanimir Varbanov <svarbanov@suse.de>
> ---
> drivers/pmdomain/bcm/bcm2835-power.c | 17 +++++++++++++----
> 1 file changed, 13 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/pmdomain/bcm/bcm2835-power.c b/drivers/pmdomain/bcm/bcm2835-power.c
> index f5289fd184d0..1d29addfe036 100644
> --- a/drivers/pmdomain/bcm/bcm2835-power.c
> +++ b/drivers/pmdomain/bcm/bcm2835-power.c
> @@ -79,6 +79,7 @@
> #define PM_IMAGE 0x108
> #define PM_GRAFX 0x10c
> #define PM_PROC 0x110
> +#define PM_GRAFX_2712 0x304
> #define PM_ENAB BIT(12)
> #define PM_ISPRSTN BIT(8)
> #define PM_H264RSTN BIT(7)
> @@ -381,6 +382,9 @@ static int bcm2835_power_pd_power_on(struct generic_pm_domain *domain)
> return bcm2835_power_power_on(pd, PM_GRAFX);
>
> case BCM2835_POWER_DOMAIN_GRAFX_V3D:
> + if (!power->asb)
> + return bcm2835_asb_power_on(pd, PM_GRAFX_2712,
> + 0, 0, PM_V3DRSTN);
> return bcm2835_asb_power_on(pd, PM_GRAFX,
> ASB_V3D_M_CTRL, ASB_V3D_S_CTRL,
> PM_V3DRSTN);
> @@ -447,6 +451,9 @@ static int bcm2835_power_pd_power_off(struct generic_pm_domain *domain)
> return bcm2835_power_power_off(pd, PM_GRAFX);
>
> case BCM2835_POWER_DOMAIN_GRAFX_V3D:
> + if (!power->asb)
> + return bcm2835_asb_power_off(pd, PM_GRAFX_2712,
> + 0, 0, PM_V3DRSTN);
> return bcm2835_asb_power_off(pd, PM_GRAFX,
> ASB_V3D_M_CTRL, ASB_V3D_S_CTRL,
> PM_V3DRSTN);
> @@ -635,10 +642,12 @@ static int bcm2835_power_probe(struct platform_device *pdev)
> power->asb = pm->asb;
> power->rpivid_asb = pm->rpivid_asb;
>
> - id = readl(power->asb + ASB_AXI_BRDG_ID);
> - if (id != BCM2835_BRDG_ID /* "BRDG" */) {
> - dev_err(dev, "ASB register ID returned 0x%08x\n", id);
> - return -ENODEV;
> + if (power->asb) {
> + id = readl(power->asb + ASB_AXI_BRDG_ID);
> + if (id != BCM2835_BRDG_ID /* "BRDG" */) {
> + dev_err(dev, "ASB register ID returned 0x%08x\n", id);
> + return -ENODEV;
> + }
> }
>
> if (power->rpivid_asb) {
> --
> 2.47.0
>
Tested-by: Andrea della Porta <andrea.porta@suse.com>
Cheers,
Andrea
^ permalink raw reply [flat|nested] 15+ messages in thread
end of thread, other threads:[~2025-11-11 11:49 UTC | newest]
Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-09-17 6:32 [PATCH 0/4] Add watchdog support for bcm2712 Stanimir Varbanov
2025-09-17 6:32 ` [PATCH 1/4] pmdomain: bcm: bcm2835-power: Prepare to support BCM2712 Stanimir Varbanov
2025-10-26 20:16 ` Florian Fainelli
2025-11-11 11:51 ` Andrea della Porta
2025-09-17 6:32 ` [PATCH 2/4] dt-bindings: soc: bcm: Add bcm2712 compatible Stanimir Varbanov
2025-09-17 19:31 ` Conor Dooley
2025-10-26 20:17 ` Florian Fainelli
2025-09-17 6:32 ` [PATCH 3/4] mfd: bcm2835-pm: Add support for BCM2712 Stanimir Varbanov
2025-10-26 20:19 ` Florian Fainelli
2025-11-06 17:01 ` (subset) " Lee Jones
2025-09-17 6:32 ` [PATCH 4/4] arm64: dts: broadcom: bcm2712: Add watchdog DT node Stanimir Varbanov
2025-10-26 20:21 ` Florian Fainelli
2025-10-13 11:08 ` [PATCH 0/4] Add watchdog support for bcm2712 Ulf Hansson
2025-10-26 20:22 ` Florian Fainelli
2025-10-30 15:27 ` Ulf Hansson
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).