devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/6] reset: bcm6345: add support for internal ephy resets on bcm63xx
@ 2025-07-09  2:47 Kyle Hendry
  2025-07-09  2:47 ` [PATCH 1/6] reset: bcm6345: add support for bcm63xx ephy control register Kyle Hendry
                   ` (6 more replies)
  0 siblings, 7 replies; 12+ messages in thread
From: Kyle Hendry @ 2025-07-09  2:47 UTC (permalink / raw)
  To: Philipp Zabel, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Fernández Rojas
  Cc: Kyle Hendry, devicetree, linux-kernel

bcm63xx SoCs have a register in the gpio controller that controls some
of the phy functionality. Some of the bits reset individual phys and 
need a driver to set. 

The other fields in the register configure phy power and will be set
by the network device driver. 

Kyle Hendry (6):
  reset: bcm6345: add support for bcm63xx ephy control register
  dt-bindings: reset: add compatible for bcm63xx ephy control
  dt-bindings: reset: add BCM63268 ephy reset definitions
  dt-bindings: reset: add BCM6318 ephy reset definitions
  dt-bindings: reset: add BCM6362 ephy reset definitions
  dt-bindings: reset: add BCM6328 ephy reset definitions

 .../devicetree/bindings/reset/brcm,bcm6345-reset.yaml        | 4 +++-
 drivers/reset/reset-bcm6345.c                                | 1 +
 include/dt-bindings/reset/bcm6318-reset.h                    | 5 +++++
 include/dt-bindings/reset/bcm63268-reset.h                   | 4 ++++
 include/dt-bindings/reset/bcm6328-reset.h                    | 5 +++++
 include/dt-bindings/reset/bcm6362-reset.h                    | 5 +++++
 6 files changed, 23 insertions(+), 1 deletion(-)

-- 
2.43.0


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [PATCH 1/6] reset: bcm6345: add support for bcm63xx ephy control register
  2025-07-09  2:47 [PATCH 0/6] reset: bcm6345: add support for internal ephy resets on bcm63xx Kyle Hendry
@ 2025-07-09  2:47 ` Kyle Hendry
  2025-08-14 11:12   ` Krzysztof Kozlowski
  2025-07-09  2:47 ` [PATCH 2/6] dt-bindings: reset: add compatible for bcm63xx ephy control Kyle Hendry
                   ` (5 subsequent siblings)
  6 siblings, 1 reply; 12+ messages in thread
From: Kyle Hendry @ 2025-07-09  2:47 UTC (permalink / raw)
  To: Philipp Zabel, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Fernández Rojas
  Cc: Kyle Hendry, devicetree, linux-kernel

The ephy control register on bcm63xx SoCs contain bits for
resetting individual internal phys. Use the existing bcm6345-reset
driver to set bits.

Signed-off-by: Kyle Hendry <kylehendrydev@gmail.com>
---
 drivers/reset/reset-bcm6345.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/reset/reset-bcm6345.c b/drivers/reset/reset-bcm6345.c
index aa9353439e70..56518f7bfbb3 100644
--- a/drivers/reset/reset-bcm6345.c
+++ b/drivers/reset/reset-bcm6345.c
@@ -119,6 +119,7 @@ static int bcm6345_reset_probe(struct platform_device *pdev)
 
 static const struct of_device_id bcm6345_reset_of_match[] = {
 	{ .compatible = "brcm,bcm6345-reset" },
+	{ .compatible = "brcm,bcm63xx-ephy-ctrl" },
 	{ /* sentinel */ },
 };
 
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [PATCH 2/6] dt-bindings: reset: add compatible for bcm63xx ephy control
  2025-07-09  2:47 [PATCH 0/6] reset: bcm6345: add support for internal ephy resets on bcm63xx Kyle Hendry
  2025-07-09  2:47 ` [PATCH 1/6] reset: bcm6345: add support for bcm63xx ephy control register Kyle Hendry
@ 2025-07-09  2:47 ` Kyle Hendry
  2025-07-10 21:53   ` Rob Herring (Arm)
  2025-08-14 11:13   ` Krzysztof Kozlowski
  2025-07-09  2:47 ` [PATCH 3/6] dt-bindings: reset: add BCM63268 ephy reset definitions Kyle Hendry
                   ` (4 subsequent siblings)
  6 siblings, 2 replies; 12+ messages in thread
From: Kyle Hendry @ 2025-07-09  2:47 UTC (permalink / raw)
  To: Philipp Zabel, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Fernández Rojas
  Cc: Kyle Hendry, devicetree, linux-kernel

Add compatible string for bcm63xx ephy control.

Signed-off-by: Kyle Hendry <kylehendrydev@gmail.com>
---
 .../devicetree/bindings/reset/brcm,bcm6345-reset.yaml         | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/Documentation/devicetree/bindings/reset/brcm,bcm6345-reset.yaml b/Documentation/devicetree/bindings/reset/brcm,bcm6345-reset.yaml
index 00150b93fca0..b8a320bb1776 100644
--- a/Documentation/devicetree/bindings/reset/brcm,bcm6345-reset.yaml
+++ b/Documentation/devicetree/bindings/reset/brcm,bcm6345-reset.yaml
@@ -13,7 +13,9 @@ maintainers:
 
 properties:
   compatible:
-    const: brcm,bcm6345-reset
+    enum:
+      - brcm,bcm6345-reset
+      - brcm,bcm63xx-ephy-ctrl
 
   reg:
     maxItems: 1
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [PATCH 3/6] dt-bindings: reset: add BCM63268 ephy reset definitions
  2025-07-09  2:47 [PATCH 0/6] reset: bcm6345: add support for internal ephy resets on bcm63xx Kyle Hendry
  2025-07-09  2:47 ` [PATCH 1/6] reset: bcm6345: add support for bcm63xx ephy control register Kyle Hendry
  2025-07-09  2:47 ` [PATCH 2/6] dt-bindings: reset: add compatible for bcm63xx ephy control Kyle Hendry
@ 2025-07-09  2:47 ` Kyle Hendry
  2025-07-10 21:54   ` Rob Herring
  2025-07-09  2:47 ` [PATCH 4/6] dt-bindings: reset: add BCM6318 " Kyle Hendry
                   ` (3 subsequent siblings)
  6 siblings, 1 reply; 12+ messages in thread
From: Kyle Hendry @ 2025-07-09  2:47 UTC (permalink / raw)
  To: Philipp Zabel, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Fernández Rojas
  Cc: Kyle Hendry, devicetree, linux-kernel

Add definitions for resets in the ephy control register.

Signed-off-by: Kyle Hendry <kylehendrydev@gmail.com>
---
 include/dt-bindings/reset/bcm63268-reset.h | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/include/dt-bindings/reset/bcm63268-reset.h b/include/dt-bindings/reset/bcm63268-reset.h
index d87a7882782a..676a62c9777b 100644
--- a/include/dt-bindings/reset/bcm63268-reset.h
+++ b/include/dt-bindings/reset/bcm63268-reset.h
@@ -27,4 +27,8 @@
 #define BCM63268_TRST_HW	30
 #define BCM63268_TRST_POR	31
 
+#define BCM63268_RST_EPHY1 0
+#define BCM63268_RST_EPHY2 1
+#define BCM63268_RST_EPHY3 2
+
 #endif /* __DT_BINDINGS_RESET_BCM63268_H */
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [PATCH 4/6] dt-bindings: reset: add BCM6318 ephy reset definitions
  2025-07-09  2:47 [PATCH 0/6] reset: bcm6345: add support for internal ephy resets on bcm63xx Kyle Hendry
                   ` (2 preceding siblings ...)
  2025-07-09  2:47 ` [PATCH 3/6] dt-bindings: reset: add BCM63268 ephy reset definitions Kyle Hendry
@ 2025-07-09  2:47 ` Kyle Hendry
  2025-07-09  2:47 ` [PATCH 5/6] dt-bindings: reset: add BCM6362 " Kyle Hendry
                   ` (2 subsequent siblings)
  6 siblings, 0 replies; 12+ messages in thread
From: Kyle Hendry @ 2025-07-09  2:47 UTC (permalink / raw)
  To: Philipp Zabel, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Fernández Rojas
  Cc: Kyle Hendry, devicetree, linux-kernel

Add definitions for resets in the ephy control register.

Signed-off-by: Kyle Hendry <kylehendrydev@gmail.com>
---
 include/dt-bindings/reset/bcm6318-reset.h | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/include/dt-bindings/reset/bcm6318-reset.h b/include/dt-bindings/reset/bcm6318-reset.h
index f882662505ea..33d06b45704f 100644
--- a/include/dt-bindings/reset/bcm6318-reset.h
+++ b/include/dt-bindings/reset/bcm6318-reset.h
@@ -17,4 +17,9 @@
 #define BCM6318_RST_PHYMIPS	11
 #define BCM6318_RST_HOSTMIPS	12
 
+#define BCM6318_RST_EPHY1 0
+#define BCM6318_RST_EPHY2 1
+#define BCM6318_RST_EPHY3 2
+#define BCM6318_RST_EPHY4 3
+
 #endif /* __DT_BINDINGS_RESET_BCM6318_H */
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [PATCH 5/6] dt-bindings: reset: add BCM6362 ephy reset definitions
  2025-07-09  2:47 [PATCH 0/6] reset: bcm6345: add support for internal ephy resets on bcm63xx Kyle Hendry
                   ` (3 preceding siblings ...)
  2025-07-09  2:47 ` [PATCH 4/6] dt-bindings: reset: add BCM6318 " Kyle Hendry
@ 2025-07-09  2:47 ` Kyle Hendry
  2025-07-09  2:47 ` [PATCH 6/6] dt-bindings: reset: add BCM6328 " Kyle Hendry
  2025-08-14 10:57 ` [PATCH 0/6] reset: bcm6345: add support for internal ephy resets on bcm63xx Philipp Zabel
  6 siblings, 0 replies; 12+ messages in thread
From: Kyle Hendry @ 2025-07-09  2:47 UTC (permalink / raw)
  To: Philipp Zabel, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Fernández Rojas
  Cc: Kyle Hendry, devicetree, linux-kernel

Add definitions for resets in the ephy control register.

Signed-off-by: Kyle Hendry <kylehendrydev@gmail.com>
---
 include/dt-bindings/reset/bcm6362-reset.h | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/include/dt-bindings/reset/bcm6362-reset.h b/include/dt-bindings/reset/bcm6362-reset.h
index 7ebb0546e0ab..503fd651eba7 100644
--- a/include/dt-bindings/reset/bcm6362-reset.h
+++ b/include/dt-bindings/reset/bcm6362-reset.h
@@ -19,4 +19,9 @@
 #define BCM6362_RST_FAP		13
 #define BCM6362_RST_WLAN_UBUS	14
 
+#define BCM6362_RST_EPHY1 0
+#define BCM6362_RST_EPHY2 1
+#define BCM6362_RST_EPHY3 2
+#define BCM6362_RST_EPHY4 3
+
 #endif /* __DT_BINDINGS_RESET_BCM6362_H */
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [PATCH 6/6] dt-bindings: reset: add BCM6328 ephy reset definitions
  2025-07-09  2:47 [PATCH 0/6] reset: bcm6345: add support for internal ephy resets on bcm63xx Kyle Hendry
                   ` (4 preceding siblings ...)
  2025-07-09  2:47 ` [PATCH 5/6] dt-bindings: reset: add BCM6362 " Kyle Hendry
@ 2025-07-09  2:47 ` Kyle Hendry
  2025-08-14 10:57 ` [PATCH 0/6] reset: bcm6345: add support for internal ephy resets on bcm63xx Philipp Zabel
  6 siblings, 0 replies; 12+ messages in thread
From: Kyle Hendry @ 2025-07-09  2:47 UTC (permalink / raw)
  To: Philipp Zabel, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Fernández Rojas
  Cc: Kyle Hendry, devicetree, linux-kernel

Add definitions for resets in the ephy control register.

Signed-off-by: Kyle Hendry <kylehendrydev@gmail.com>
---
 include/dt-bindings/reset/bcm6328-reset.h | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/include/dt-bindings/reset/bcm6328-reset.h b/include/dt-bindings/reset/bcm6328-reset.h
index 0f3df87d47af..f0a164af4105 100644
--- a/include/dt-bindings/reset/bcm6328-reset.h
+++ b/include/dt-bindings/reset/bcm6328-reset.h
@@ -15,4 +15,9 @@
 #define BCM6328_RST_PCIE_EXT	9
 #define BCM6328_RST_PCIE_HARD	10
 
+#define BCM6328_RST_EPHY1 0
+#define BCM6328_RST_EPHY2 1
+#define BCM6328_RST_EPHY3 2
+#define BCM6328_RST_EPHY4 3
+
 #endif /* __DT_BINDINGS_RESET_BCM6328_H */
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 12+ messages in thread

* Re: [PATCH 2/6] dt-bindings: reset: add compatible for bcm63xx ephy control
  2025-07-09  2:47 ` [PATCH 2/6] dt-bindings: reset: add compatible for bcm63xx ephy control Kyle Hendry
@ 2025-07-10 21:53   ` Rob Herring (Arm)
  2025-08-14 11:13   ` Krzysztof Kozlowski
  1 sibling, 0 replies; 12+ messages in thread
From: Rob Herring (Arm) @ 2025-07-10 21:53 UTC (permalink / raw)
  To: Kyle Hendry
  Cc: Krzysztof Kozlowski, Fernández Rojas, linux-kernel,
	Conor Dooley, devicetree, Philipp Zabel


On Tue, 08 Jul 2025 19:47:26 -0700, Kyle Hendry wrote:
> Add compatible string for bcm63xx ephy control.
> 
> Signed-off-by: Kyle Hendry <kylehendrydev@gmail.com>
> ---
>  .../devicetree/bindings/reset/brcm,bcm6345-reset.yaml         | 4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)
> 

Acked-by: Rob Herring (Arm) <robh@kernel.org>


^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH 3/6] dt-bindings: reset: add BCM63268 ephy reset definitions
  2025-07-09  2:47 ` [PATCH 3/6] dt-bindings: reset: add BCM63268 ephy reset definitions Kyle Hendry
@ 2025-07-10 21:54   ` Rob Herring
  0 siblings, 0 replies; 12+ messages in thread
From: Rob Herring @ 2025-07-10 21:54 UTC (permalink / raw)
  To: Kyle Hendry
  Cc: Philipp Zabel, Krzysztof Kozlowski, Conor Dooley,
	Fernández Rojas, devicetree, linux-kernel

On Tue, Jul 08, 2025 at 07:47:27PM -0700, Kyle Hendry wrote:
> Add definitions for resets in the ephy control register.
> 
> Signed-off-by: Kyle Hendry <kylehendrydev@gmail.com>
> ---
>  include/dt-bindings/reset/bcm63268-reset.h | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/include/dt-bindings/reset/bcm63268-reset.h b/include/dt-bindings/reset/bcm63268-reset.h
> index d87a7882782a..676a62c9777b 100644
> --- a/include/dt-bindings/reset/bcm63268-reset.h
> +++ b/include/dt-bindings/reset/bcm63268-reset.h
> @@ -27,4 +27,8 @@
>  #define BCM63268_TRST_HW	30
>  #define BCM63268_TRST_POR	31
>  
> +#define BCM63268_RST_EPHY1 0
> +#define BCM63268_RST_EPHY2 1
> +#define BCM63268_RST_EPHY3 2

These are kind of pointless IMO. The provider is only for the EPHYs and 
your number is just index+1.

Rob

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH 0/6] reset: bcm6345: add support for internal ephy resets on bcm63xx
  2025-07-09  2:47 [PATCH 0/6] reset: bcm6345: add support for internal ephy resets on bcm63xx Kyle Hendry
                   ` (5 preceding siblings ...)
  2025-07-09  2:47 ` [PATCH 6/6] dt-bindings: reset: add BCM6328 " Kyle Hendry
@ 2025-08-14 10:57 ` Philipp Zabel
  6 siblings, 0 replies; 12+ messages in thread
From: Philipp Zabel @ 2025-08-14 10:57 UTC (permalink / raw)
  To: Kyle Hendry, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Fernández Rojas
  Cc: devicetree, linux-kernel

On Di, 2025-07-08 at 19:47 -0700, Kyle Hendry wrote:
> bcm63xx SoCs have a register in the gpio controller that controls some
> of the phy functionality. Some of the bits reset individual phys and 
> need a driver to set. 
> 
> The other fields in the register configure phy power and will be set
> by the network device driver. 
> 
> Kyle Hendry (6):
>   reset: bcm6345: add support for bcm63xx ephy control register
>   dt-bindings: reset: add compatible for bcm63xx ephy control
[...]

Applied patches 1 and 2 to reset/next (in inverse order), thanks!

[2/6] dt-bindings: reset: add compatible for bcm63xx ephy control
      https://git.pengutronix.de/cgit/pza/linux/commit/?id=a341bcfbfa74
[1/6] reset: bcm6345: add support for bcm63xx ephy control register
      https://git.pengutronix.de/cgit/pza/linux/commit/?id=6e273caeacf0

Do you agree that patches 2-6 are not necessary?

regards
Philipp

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH 1/6] reset: bcm6345: add support for bcm63xx ephy control register
  2025-07-09  2:47 ` [PATCH 1/6] reset: bcm6345: add support for bcm63xx ephy control register Kyle Hendry
@ 2025-08-14 11:12   ` Krzysztof Kozlowski
  0 siblings, 0 replies; 12+ messages in thread
From: Krzysztof Kozlowski @ 2025-08-14 11:12 UTC (permalink / raw)
  To: Kyle Hendry, Philipp Zabel, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Fernández Rojas
  Cc: devicetree, linux-kernel

On 09/07/2025 04:47, Kyle Hendry wrote:
> The ephy control register on bcm63xx SoCs contain bits for
> resetting individual internal phys. Use the existing bcm6345-reset
> driver to set bits.
> 
> Signed-off-by: Kyle Hendry <kylehendrydev@gmail.com>
> ---
>  drivers/reset/reset-bcm6345.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/drivers/reset/reset-bcm6345.c b/drivers/reset/reset-bcm6345.c
> index aa9353439e70..56518f7bfbb3 100644
> --- a/drivers/reset/reset-bcm6345.c
> +++ b/drivers/reset/reset-bcm6345.c
> @@ -119,6 +119,7 @@ static int bcm6345_reset_probe(struct platform_device *pdev)
>  
>  static const struct of_device_id bcm6345_reset_of_match[] = {
>  	{ .compatible = "brcm,bcm6345-reset" },
> +	{ .compatible = "brcm,bcm63xx-ephy-ctrl" },
So devices are compatible?

Best regards,
Krzysztof

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH 2/6] dt-bindings: reset: add compatible for bcm63xx ephy control
  2025-07-09  2:47 ` [PATCH 2/6] dt-bindings: reset: add compatible for bcm63xx ephy control Kyle Hendry
  2025-07-10 21:53   ` Rob Herring (Arm)
@ 2025-08-14 11:13   ` Krzysztof Kozlowski
  1 sibling, 0 replies; 12+ messages in thread
From: Krzysztof Kozlowski @ 2025-08-14 11:13 UTC (permalink / raw)
  To: Kyle Hendry, Philipp Zabel, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Fernández Rojas
  Cc: devicetree, linux-kernel

On 09/07/2025 04:47, Kyle Hendry wrote:
> Add compatible string for bcm63xx ephy control.
> 
> Signed-off-by: Kyle Hendry <kylehendrydev@gmail.com>
> ---
>  .../devicetree/bindings/reset/brcm,bcm6345-reset.yaml         | 4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)
> 
> diff --git a/Documentation/devicetree/bindings/reset/brcm,bcm6345-reset.yaml b/Documentation/devicetree/bindings/reset/brcm,bcm6345-reset.yaml
> index 00150b93fca0..b8a320bb1776 100644
> --- a/Documentation/devicetree/bindings/reset/brcm,bcm6345-reset.yaml
> +++ b/Documentation/devicetree/bindings/reset/brcm,bcm6345-reset.yaml
> @@ -13,7 +13,9 @@ maintainers:
>  
>  properties:
>    compatible:
> -    const: brcm,bcm6345-reset
> +    enum:
> +      - brcm,bcm6345-reset
> +      - brcm,bcm63xx-ephy-ctrl

Don't use wildcards.

Best regards,
Krzysztof

^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2025-08-14 11:13 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-07-09  2:47 [PATCH 0/6] reset: bcm6345: add support for internal ephy resets on bcm63xx Kyle Hendry
2025-07-09  2:47 ` [PATCH 1/6] reset: bcm6345: add support for bcm63xx ephy control register Kyle Hendry
2025-08-14 11:12   ` Krzysztof Kozlowski
2025-07-09  2:47 ` [PATCH 2/6] dt-bindings: reset: add compatible for bcm63xx ephy control Kyle Hendry
2025-07-10 21:53   ` Rob Herring (Arm)
2025-08-14 11:13   ` Krzysztof Kozlowski
2025-07-09  2:47 ` [PATCH 3/6] dt-bindings: reset: add BCM63268 ephy reset definitions Kyle Hendry
2025-07-10 21:54   ` Rob Herring
2025-07-09  2:47 ` [PATCH 4/6] dt-bindings: reset: add BCM6318 " Kyle Hendry
2025-07-09  2:47 ` [PATCH 5/6] dt-bindings: reset: add BCM6362 " Kyle Hendry
2025-07-09  2:47 ` [PATCH 6/6] dt-bindings: reset: add BCM6328 " Kyle Hendry
2025-08-14 10:57 ` [PATCH 0/6] reset: bcm6345: add support for internal ephy resets on bcm63xx Philipp Zabel

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).