2022-10-18 09:26:25

by Siddharth Vadapalli

[permalink] [raw]
Subject: [PATCH v2 0/3] Add support for QSGMII mode for J721e CPSW9G to am65-cpsw driver

Add compatible to am65-cpsw driver for J721e CPSW9G, which contains 8
external ports and 1 internal host port.

Add support to power on and power off the SERDES PHY which is used by the
CPSW MAC.

=========
Changelog
=========
v1 -> v2:
1. Drop all patches corresponding to SGMII mode. This is done since I do
not have a method to test SGMII in the standard mode which uses an
SGMII PHY. The previous series used SGMII in a fixed-link mode,
bypassing the SGMII PHY. I will post the SGMII patches in a future
series after testing them.
2. Drop all patches corresponding to fixed-link in the am65-cpsw driver.
This is done since PHYLINK takes care of fixed-link automatically and
there is no need to deal with fixed-link in a custom fashion.
3. Fix indentation errors in k3-am65-cpsw-nuss.yaml.
4. Remove the stale code which tries to power on and power off the CPSW
MAC's phy, since the CPSW MAC's phy driver does not support it.
5. Rename the function "am65_cpsw_init_phy()" to
"am65_cpsw_init_serdes_phy()", to indicate that the phy corresponds to
the SERDES.
6. Invoke "am65_cpsw_disable_serdes_phy()" as a part of the cleanup that
is associated with the "am65_cpsw_nuss_remove()" function.

v1:
https://lore.kernel.org/r/[email protected]/

Siddharth Vadapalli (3):
dt-bindings: net: ti: k3-am654-cpsw-nuss: Update bindings for J721e
CPSW9G
net: ethernet: ti: am65-cpsw: Enable QSGMII mode for J721e CPSW9G
net: ethernet: ti: am65-cpsw: Add support for SERDES configuration

.../bindings/net/ti,k3-am654-cpsw-nuss.yaml | 23 +++++-
drivers/net/ethernet/ti/am65-cpsw-nuss.c | 73 +++++++++++++++++++
2 files changed, 94 insertions(+), 2 deletions(-)

--
2.25.1


2022-10-18 09:39:47

by Siddharth Vadapalli

[permalink] [raw]
Subject: [PATCH v2 1/3] dt-bindings: net: ti: k3-am654-cpsw-nuss: Update bindings for J721e CPSW9G

Update bindings for TI K3 J721e SoC which contains 9 ports (8 external
ports) CPSW9G module and add compatible for it.

Changes made:
- Add new compatible ti,j721e-cpswxg-nuss for CPSW9G.
- Extend pattern properties for new compatible.
- Change maximum number of CPSW ports to 8 for new compatible.

Signed-off-by: Siddharth Vadapalli <[email protected]>
---
.../bindings/net/ti,k3-am654-cpsw-nuss.yaml | 23 +++++++++++++++++--
1 file changed, 21 insertions(+), 2 deletions(-)

diff --git a/Documentation/devicetree/bindings/net/ti,k3-am654-cpsw-nuss.yaml b/Documentation/devicetree/bindings/net/ti,k3-am654-cpsw-nuss.yaml
index 821974815dec..ec4b57e43e88 100644
--- a/Documentation/devicetree/bindings/net/ti,k3-am654-cpsw-nuss.yaml
+++ b/Documentation/devicetree/bindings/net/ti,k3-am654-cpsw-nuss.yaml
@@ -57,6 +57,7 @@ properties:
- ti,am654-cpsw-nuss
- ti,j7200-cpswxg-nuss
- ti,j721e-cpsw-nuss
+ - ti,j721e-cpswxg-nuss
- ti,am642-cpsw-nuss

reg:
@@ -111,7 +112,7 @@ properties:
const: 0

patternProperties:
- "^port@[1-4]$":
+ "^port@[1-8]$":
type: object
description: CPSWxG NUSS external ports

@@ -121,7 +122,7 @@ properties:
properties:
reg:
minimum: 1
- maximum: 4
+ maximum: 8
description: CPSW port number

phys:
@@ -181,6 +182,21 @@ required:
- '#size-cells'

allOf:
+ - if:
+ not:
+ properties:
+ compatible:
+ contains:
+ const: ti,j721e-cpswxg-nuss
+ then:
+ properties:
+ ethernet-ports:
+ patternProperties:
+ "^port@[5-8]$": false
+ properties:
+ reg:
+ maximum: 4
+
- if:
not:
properties:
@@ -192,6 +208,9 @@ allOf:
ethernet-ports:
patternProperties:
"^port@[3-4]$": false
+ properties:
+ reg:
+ maximum: 2

additionalProperties: false

--
2.25.1

2022-10-18 13:40:52

by Rob Herring (Arm)

[permalink] [raw]
Subject: Re: [PATCH v2 1/3] dt-bindings: net: ti: k3-am654-cpsw-nuss: Update bindings for J721e CPSW9G

On Tue, 18 Oct 2022 14:28:08 +0530, Siddharth Vadapalli wrote:
> Update bindings for TI K3 J721e SoC which contains 9 ports (8 external
> ports) CPSW9G module and add compatible for it.
>
> Changes made:
> - Add new compatible ti,j721e-cpswxg-nuss for CPSW9G.
> - Extend pattern properties for new compatible.
> - Change maximum number of CPSW ports to 8 for new compatible.
>
> Signed-off-by: Siddharth Vadapalli <[email protected]>
> ---
> .../bindings/net/ti,k3-am654-cpsw-nuss.yaml | 23 +++++++++++++++++--
> 1 file changed, 21 insertions(+), 2 deletions(-)
>

My bot found errors running 'make DT_CHECKER_FLAGS=-m dt_binding_check'
on your patch (DT_CHECKER_FLAGS is new in v5.13):

yamllint warnings/errors:
./Documentation/devicetree/bindings/net/ti,k3-am654-cpsw-nuss.yaml:196:25: [error] syntax error: mapping values are not allowed here (syntax)

dtschema/dtc warnings/errors:
make[1]: *** Deleting file 'Documentation/devicetree/bindings/net/ti,k3-am654-cpsw-nuss.example.dts'
Documentation/devicetree/bindings/net/ti,k3-am654-cpsw-nuss.yaml:196:25: mapping values are not allowed in this context
make[1]: *** [Documentation/devicetree/bindings/Makefile:26: Documentation/devicetree/bindings/net/ti,k3-am654-cpsw-nuss.example.dts] Error 1
make[1]: *** Waiting for unfinished jobs....
./Documentation/devicetree/bindings/net/ti,k3-am654-cpsw-nuss.yaml:196:25: mapping values are not allowed in this context
/builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/net/ti,k3-am654-cpsw-nuss.yaml: ignoring, error parsing file
make: *** [Makefile:1492: dt_binding_check] Error 2

doc reference errors (make refcheckdocs):

See https://patchwork.ozlabs.org/patch/

This check can fail if there are any dependencies. The base for a patch
series is generally the most recent rc1.

If you already ran 'make dt_binding_check' and didn't see the above
error(s), then make sure 'yamllint' is installed and dt-schema is up to
date:

pip3 install dtschema --upgrade

Please check and re-submit.

2022-10-19 04:48:58

by Siddharth Vadapalli

[permalink] [raw]
Subject: Re: [PATCH v2 1/3] dt-bindings: net: ti: k3-am654-cpsw-nuss: Update bindings for J721e CPSW9G

Hello Rob,

On 18/10/22 19:02, Rob Herring wrote:
> On Tue, 18 Oct 2022 14:28:08 +0530, Siddharth Vadapalli wrote:
>> Update bindings for TI K3 J721e SoC which contains 9 ports (8 external
>> ports) CPSW9G module and add compatible for it.
>>
>> Changes made:
>> - Add new compatible ti,j721e-cpswxg-nuss for CPSW9G.
>> - Extend pattern properties for new compatible.
>> - Change maximum number of CPSW ports to 8 for new compatible.
>>
>> Signed-off-by: Siddharth Vadapalli <[email protected]>
>> ---
>> .../bindings/net/ti,k3-am654-cpsw-nuss.yaml | 23 +++++++++++++++++--
>> 1 file changed, 21 insertions(+), 2 deletions(-)
>>
>
> My bot found errors running 'make DT_CHECKER_FLAGS=-m dt_binding_check'
> on your patch (DT_CHECKER_FLAGS is new in v5.13):
>
> yamllint warnings/errors:
> ./Documentation/devicetree/bindings/net/ti,k3-am654-cpsw-nuss.yaml:196:25: [error] syntax error: mapping values are not allowed here (syntax)

I will fix the errors in the v3 series and ensure that there are no
errors or warnings with dt_binding_check, using the updated dt-schema
and yamllint.

Regards,
Siddharth.