Re: [PATCH net-next v2 0/7] Add an MDIO sub-node under MACB

From: Codrin.Ciubotariu
Date: Thu Jul 23 2020 - 09:18:29 EST


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@xxxxxxxxxxxxx>
>>> Acked-by: Claudiu Beznea <claudiu.beznea@xxxxxxxxxxxxx>
>>
>> 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(-)