Message ID | 20200721171316.1427582-1-codrin.ciubotariu@microchip.com (mailing list archive) |
---|---|
Headers | show |
Series | Add an MDIO sub-node under MACB | expand |
On 21.07.2020 20:13, Codrin Ciubotariu wrote: > Adding the PHY nodes directly under the Ethernet node became deprecated, > so the aim of this patch series is to make MACB use an MDIO node as > container for MDIO devices. > This patch series starts with a small patch to use the device-managed > devm_mdiobus_alloc(). In the next two patches we update the bindings and > adapt macb driver to parse the device-tree PHY nodes from under an MDIO > node. The last patches add the MDIO node in the device-trees of sama5d2, > sama5d3, samad4 and sam9x60 boards. > Tested this series on sama5d2_xplained in the following scenarios: 1/ PHY bindings from patch 4/7: mdio { #address-cells = <1>; #size-cells = <0>; ethernet-phy@1 { reg = <0x1>; interrupt-parent = <&pioA>; interrupts = <PIN_PC9 IRQ_TYPE_LEVEL_LOW>; }; 2/ PHY bindings before this series: ethernet-phy@1 { reg = <0x1>; interrupt-parent = <&pioA>; interrupts = <PIN_PC9 IRQ_TYPE_LEVEL_LOW>; }; 3/ No PHY bindings at all. All 3 cases went OK. You can add: Tested-by: Claudiu Beznea <claudiu.beznea@microchip.com> Acked-by: Claudiu Beznea <claudiu.beznea@microchip.com> Thank you, Claudiu Beznea > Changes in v2: > - renamed patch 2/7 from "macb: bindings doc: use an MDIO node as a > container for PHY nodes" to "dt-bindings: net: macb: use an MDIO > node as a container for PHY nodes" > - added back a newline removed by mistake in patch 3/7 > > Codrin Ciubotariu (7): > net: macb: use device-managed devm_mdiobus_alloc() > dt-bindings: net: macb: use an MDIO node as a container for PHY nodes > net: macb: parse PHY nodes found under an MDIO node > ARM: dts: at91: sama5d2: add an mdio sub-node to macb > ARM: dts: at91: sama5d3: add an mdio sub-node to macb > ARM: dts: at91: sama5d4: add an mdio sub-node to macb > ARM: dts: at91: sam9x60: add an mdio sub-node to macb > > Documentation/devicetree/bindings/net/macb.txt | 15 ++++++++++++--- > arch/arm/boot/dts/at91-sam9x60ek.dts | 8 ++++++-- > arch/arm/boot/dts/at91-sama5d27_som1.dtsi | 16 ++++++++++------ > arch/arm/boot/dts/at91-sama5d27_wlsom1.dtsi | 17 ++++++++++------- > arch/arm/boot/dts/at91-sama5d2_ptc_ek.dts | 13 ++++++++----- > arch/arm/boot/dts/at91-sama5d2_xplained.dts | 12 ++++++++---- > arch/arm/boot/dts/at91-sama5d3_xplained.dts | 16 ++++++++++++---- > arch/arm/boot/dts/at91-sama5d4_xplained.dts | 12 ++++++++---- > drivers/net/ethernet/cadence/macb_main.c | 18 ++++++++++++------ > 9 files changed, 86 insertions(+), 41 deletions(-) >
On 22.07.2020 13:32, Claudiu Beznea - M18063 wrote: > > > On 21.07.2020 20:13, Codrin Ciubotariu wrote: >> Adding the PHY nodes directly under the Ethernet node became deprecated, >> so the aim of this patch series is to make MACB use an MDIO node as >> container for MDIO devices. >> This patch series starts with a small patch to use the device-managed >> devm_mdiobus_alloc(). In the next two patches we update the bindings and >> adapt macb driver to parse the device-tree PHY nodes from under an MDIO >> node. The last patches add the MDIO node in the device-trees of sama5d2, >> sama5d3, samad4 and sam9x60 boards. >> > > Tested this series on sama5d2_xplained in the following scenarios: > > 1/ PHY bindings from patch 4/7: > mdio { > #address-cells = <1>; > #size-cells = <0>; > ethernet-phy@1 { > reg = <0x1>; > interrupt-parent = <&pioA>; > interrupts = <PIN_PC9 IRQ_TYPE_LEVEL_LOW>; > }; > > 2/ PHY bindings before this series: > ethernet-phy@1 { > reg = <0x1>; > interrupt-parent = <&pioA>; > interrupts = <PIN_PC9 IRQ_TYPE_LEVEL_LOW>; > }; > > 3/ No PHY bindings at all. > > All 3 cases went OK. > > You can add: > Tested-by: Claudiu Beznea <claudiu.beznea@microchip.com> > Acked-by: Claudiu Beznea <claudiu.beznea@microchip.com> Thank you very much Claudiu! There is still one more case in my mind. macb could be a fixed-link with an MDIO DSA switch. While the macb would have a fixed connection with a port from the DSA switch, the switch could be configured using macb's MDIO. The dt would be something like: macb { fixed-link { ... }; mdio { switch@0 { ... }; }; }; To support this, in patch 3/7 I should first check for the mdio node to return of_mdiobus_register() and then check if it's a fixed-link to return simple mdiobus_register(). I will address this in v3... Thanks and best regards, Codrin > > Thank you, > Claudiu Beznea > >> Changes in v2: >> - renamed patch 2/7 from "macb: bindings doc: use an MDIO node as a >> container for PHY nodes" to "dt-bindings: net: macb: use an MDIO >> node as a container for PHY nodes" >> - added back a newline removed by mistake in patch 3/7 >> >> Codrin Ciubotariu (7): >> net: macb: use device-managed devm_mdiobus_alloc() >> dt-bindings: net: macb: use an MDIO node as a container for PHY nodes >> net: macb: parse PHY nodes found under an MDIO node >> ARM: dts: at91: sama5d2: add an mdio sub-node to macb >> ARM: dts: at91: sama5d3: add an mdio sub-node to macb >> ARM: dts: at91: sama5d4: add an mdio sub-node to macb >> ARM: dts: at91: sam9x60: add an mdio sub-node to macb >> >> Documentation/devicetree/bindings/net/macb.txt | 15 ++++++++++++--- >> arch/arm/boot/dts/at91-sam9x60ek.dts | 8 ++++++-- >> arch/arm/boot/dts/at91-sama5d27_som1.dtsi | 16 ++++++++++------ >> arch/arm/boot/dts/at91-sama5d27_wlsom1.dtsi | 17 ++++++++++------- >> arch/arm/boot/dts/at91-sama5d2_ptc_ek.dts | 13 ++++++++----- >> arch/arm/boot/dts/at91-sama5d2_xplained.dts | 12 ++++++++---- >> arch/arm/boot/dts/at91-sama5d3_xplained.dts | 16 ++++++++++++---- >> arch/arm/boot/dts/at91-sama5d4_xplained.dts | 12 ++++++++---- >> drivers/net/ethernet/cadence/macb_main.c | 18 ++++++++++++------ >> 9 files changed, 86 insertions(+), 41 deletions(-)
On 22.07.2020 14:38, Codrin Ciubotariu - M19940 wrote: > On 22.07.2020 13:32, Claudiu Beznea - M18063 wrote: >> >> >> On 21.07.2020 20:13, Codrin Ciubotariu wrote: >>> Adding the PHY nodes directly under the Ethernet node became deprecated, >>> so the aim of this patch series is to make MACB use an MDIO node as >>> container for MDIO devices. >>> This patch series starts with a small patch to use the device-managed >>> devm_mdiobus_alloc(). In the next two patches we update the bindings and >>> adapt macb driver to parse the device-tree PHY nodes from under an MDIO >>> node. The last patches add the MDIO node in the device-trees of sama5d2, >>> sama5d3, samad4 and sam9x60 boards. >>> >> >> Tested this series on sama5d2_xplained in the following scenarios: >> >> 1/ PHY bindings from patch 4/7: >> mdio { >> #address-cells = <1>; >> #size-cells = <0>; >> ethernet-phy@1 { >> reg = <0x1>; >> interrupt-parent = <&pioA>; >> interrupts = <PIN_PC9 IRQ_TYPE_LEVEL_LOW>; >> }; >> >> 2/ PHY bindings before this series: >> ethernet-phy@1 { >> reg = <0x1>; >> interrupt-parent = <&pioA>; >> interrupts = <PIN_PC9 IRQ_TYPE_LEVEL_LOW>; >> }; >> >> 3/ No PHY bindings at all. >> >> All 3 cases went OK. >> >> You can add: >> Tested-by: Claudiu Beznea <claudiu.beznea@microchip.com> >> Acked-by: Claudiu Beznea <claudiu.beznea@microchip.com> > > Thank you very much Claudiu! > There is still one more case in my mind. macb could be a fixed-link with > an MDIO DSA switch. While the macb would have a fixed connection with a > port from the DSA switch, the switch could be configured using macb's > MDIO. The dt would be something like: > > macb { > fixed-link { > ... > }; > mdio { > switch@0 { > ... > }; > }; > }; Do you have a setup for testing this? At the moment I don't know a configuration like this that macb is working with. > > To support this, in patch 3/7 I should first check for the mdio node to > return of_mdiobus_register() and then check if it's a fixed-link to > return simple mdiobus_register(). I will address this in v3...> > Thanks and best regards, > Codrin > >> >> Thank you, >> Claudiu Beznea >> >>> Changes in v2: >>> - renamed patch 2/7 from "macb: bindings doc: use an MDIO node as a >>> container for PHY nodes" to "dt-bindings: net: macb: use an MDIO >>> node as a container for PHY nodes" >>> - added back a newline removed by mistake in patch 3/7 >>> >>> Codrin Ciubotariu (7): >>> net: macb: use device-managed devm_mdiobus_alloc() >>> dt-bindings: net: macb: use an MDIO node as a container for PHY nodes >>> net: macb: parse PHY nodes found under an MDIO node >>> ARM: dts: at91: sama5d2: add an mdio sub-node to macb >>> ARM: dts: at91: sama5d3: add an mdio sub-node to macb >>> ARM: dts: at91: sama5d4: add an mdio sub-node to macb >>> ARM: dts: at91: sam9x60: add an mdio sub-node to macb >>> >>> Documentation/devicetree/bindings/net/macb.txt | 15 ++++++++++++--- >>> arch/arm/boot/dts/at91-sam9x60ek.dts | 8 ++++++-- >>> arch/arm/boot/dts/at91-sama5d27_som1.dtsi | 16 ++++++++++------ >>> arch/arm/boot/dts/at91-sama5d27_wlsom1.dtsi | 17 ++++++++++------- >>> arch/arm/boot/dts/at91-sama5d2_ptc_ek.dts | 13 ++++++++----- >>> arch/arm/boot/dts/at91-sama5d2_xplained.dts | 12 ++++++++---- >>> arch/arm/boot/dts/at91-sama5d3_xplained.dts | 16 ++++++++++++---- >>> arch/arm/boot/dts/at91-sama5d4_xplained.dts | 12 ++++++++---- >>> drivers/net/ethernet/cadence/macb_main.c | 18 ++++++++++++------ >>> 9 files changed, 86 insertions(+), 41 deletions(-) >
On 23.07.2020 10:51, Claudiu Beznea - M18063 wrote: > > > On 22.07.2020 14:38, Codrin Ciubotariu - M19940 wrote: >> On 22.07.2020 13:32, Claudiu Beznea - M18063 wrote: >>> >>> >>> On 21.07.2020 20:13, Codrin Ciubotariu wrote: >>>> Adding the PHY nodes directly under the Ethernet node became deprecated, >>>> so the aim of this patch series is to make MACB use an MDIO node as >>>> container for MDIO devices. >>>> This patch series starts with a small patch to use the device-managed >>>> devm_mdiobus_alloc(). In the next two patches we update the bindings and >>>> adapt macb driver to parse the device-tree PHY nodes from under an MDIO >>>> node. The last patches add the MDIO node in the device-trees of sama5d2, >>>> sama5d3, samad4 and sam9x60 boards. >>>> >>> >>> Tested this series on sama5d2_xplained in the following scenarios: >>> >>> 1/ PHY bindings from patch 4/7: >>> mdio { >>> #address-cells = <1>; >>> #size-cells = <0>; >>> ethernet-phy@1 { >>> reg = <0x1>; >>> interrupt-parent = <&pioA>; >>> interrupts = <PIN_PC9 IRQ_TYPE_LEVEL_LOW>; >>> }; >>> >>> 2/ PHY bindings before this series: >>> ethernet-phy@1 { >>> reg = <0x1>; >>> interrupt-parent = <&pioA>; >>> interrupts = <PIN_PC9 IRQ_TYPE_LEVEL_LOW>; >>> }; >>> >>> 3/ No PHY bindings at all. >>> >>> All 3 cases went OK. >>> >>> You can add: >>> Tested-by: Claudiu Beznea <claudiu.beznea@microchip.com> >>> Acked-by: Claudiu Beznea <claudiu.beznea@microchip.com> >> >> Thank you very much Claudiu! >> There is still one more case in my mind. macb could be a fixed-link with >> an MDIO DSA switch. While the macb would have a fixed connection with a >> port from the DSA switch, the switch could be configured using macb's >> MDIO. The dt would be something like: >> >> macb { >> fixed-link { >> ... >> }; >> mdio { >> switch@0 { >> ... >> }; >> }; >> }; > > Do you have a setup for testing this? At the moment I don't know a > configuration like this that macb is working with. There isn't one that I am aware of, but we should address it. > >> >> To support this, in patch 3/7 I should first check for the mdio node to >> return of_mdiobus_register() and then check if it's a fixed-link to >> return simple mdiobus_register(). I will address this in v3...> >> Thanks and best regards, >> Codrin >> >>> >>> Thank you, >>> Claudiu Beznea >>> >>>> Changes in v2: >>>> - renamed patch 2/7 from "macb: bindings doc: use an MDIO node as a >>>> container for PHY nodes" to "dt-bindings: net: macb: use an MDIO >>>> node as a container for PHY nodes" >>>> - added back a newline removed by mistake in patch 3/7 >>>> >>>> Codrin Ciubotariu (7): >>>> net: macb: use device-managed devm_mdiobus_alloc() >>>> dt-bindings: net: macb: use an MDIO node as a container for PHY nodes >>>> net: macb: parse PHY nodes found under an MDIO node >>>> ARM: dts: at91: sama5d2: add an mdio sub-node to macb >>>> ARM: dts: at91: sama5d3: add an mdio sub-node to macb >>>> ARM: dts: at91: sama5d4: add an mdio sub-node to macb >>>> ARM: dts: at91: sam9x60: add an mdio sub-node to macb >>>> >>>> Documentation/devicetree/bindings/net/macb.txt | 15 ++++++++++++--- >>>> arch/arm/boot/dts/at91-sam9x60ek.dts | 8 ++++++-- >>>> arch/arm/boot/dts/at91-sama5d27_som1.dtsi | 16 ++++++++++------ >>>> arch/arm/boot/dts/at91-sama5d27_wlsom1.dtsi | 17 ++++++++++------- >>>> arch/arm/boot/dts/at91-sama5d2_ptc_ek.dts | 13 ++++++++----- >>>> arch/arm/boot/dts/at91-sama5d2_xplained.dts | 12 ++++++++---- >>>> arch/arm/boot/dts/at91-sama5d3_xplained.dts | 16 ++++++++++++---- >>>> arch/arm/boot/dts/at91-sama5d4_xplained.dts | 12 ++++++++---- >>>> drivers/net/ethernet/cadence/macb_main.c | 18 ++++++++++++------ >>>> 9 files changed, 86 insertions(+), 41 deletions(-)