Re: [PATCH net-next RFC 0/3] net: dsa: realtek: drop custom slave MII
From: Luiz Angelo Daros de Luca <hidden>
Date: 2022-06-29 16:44:00
This RFC patch series cleans realtek-smi custom slave mii bus. Since fe7324b932, dsa generic code provides everything needed for realtek-smi driver. For extra caution, this series should be applied in two steps: the first 2 patches introduce the new code path that uses dsa generic code. It will show a warning message if the tree contains deprecated references. It will still fall back to the old code path if an "mdio" is not found.
The last patch cleans all the deprecated code while keeping the kernel
messages. However, if there is no "mdio" node but there is a node with
the old compatible stings "realtek,smi-mdio", it will show an error. It
should still work but it will use polling instead of interruptions.
My idea, if accepted, is to submit patches 1 and 2 now. After a
reasonable period, submit patch 3.
I don't have an SMI-connected device and I'm asking for testers. It
would be nice to test the first 2 patches with:
1) "mdio" without a compatible string. It should work without warnings.
2) "mdio" with a compatible string. It should work with a warning asking
to remove the compatible string
3) "xxx" node with compatible string. It should work with a warning
asking to rename "xxx" to "mdio" and remove the compatible string
In all those cases, the switch should still keep using interruptions.
After that, the last patch can be applied. The same tests can be
performed:
1) "mdio" without a compatible string. It should work without warnings.
2) "mdio" with a compatible string. It should work with a warning asking
to remove the compatible string
3) "xxx" node with compatible string. It should work with an error
asking to rename "xxx" to "mdio" and remove the compatible string. The
switch will use polling instead of interruptions.
This series might inspire other drivers as well. Currently, most dsa
driver implements a custom slave mii, normally only defining a
phy_{read,write} and loading properties from an "mdio" OF node. Since
fe7324b932, dsa generic code can do all that if the mdio node is named
"mdio". I believe most drivers could simply drop their slave mii
implementations and add phy_{read,write} to the dsa_switch_ops. For
drivers that look for an "mdio-like" node using a compatible string, it
might need some type of transition to let vendors update their OF tree.
Regards,
LuizI might have forgotten to add a new line after the subject. It ate the first paragraph. I'm top-posting it. Regards, Luiz