Re: [RFC PATCH 07/16] dt-bindings: pinctrl: ralink: add new compatible strings

From: Arınç ÜNAL
Date: Wed Mar 01 2023 - 03:15:37 EST


On 1.03.2023 05:44, Rob Herring wrote:
On Tue, Feb 28, 2023 at 07:46:36PM +0300, Arınç ÜNAL wrote:
On 27/02/2023 20:33, Rob Herring wrote:
On Wed, Feb 22, 2023 at 09:39:23PM +0300, arinc9.unal@xxxxxxxxx wrote:
From: Arınç ÜNAL <arinc.unal@xxxxxxxxxx>

Add the ralink,rt2880-pinmux compatible string. It had been removed from
the driver which broke the ABI.

Add the mediatek compatible strings. Change the compatible string on the
examples with the mediatek compatible strings.

Signed-off-by: Arınç ÜNAL <arinc.unal@xxxxxxxxxx>
---
.../devicetree/bindings/pinctrl/ralink,mt7620-pinctrl.yaml | 7 +++++--
.../devicetree/bindings/pinctrl/ralink,mt7621-pinctrl.yaml | 7 +++++--
.../devicetree/bindings/pinctrl/ralink,rt2880-pinctrl.yaml | 7 +++++--
.../devicetree/bindings/pinctrl/ralink,rt305x-pinctrl.yaml | 7 +++++--
.../devicetree/bindings/pinctrl/ralink,rt3883-pinctrl.yaml | 7 +++++--
5 files changed, 25 insertions(+), 10 deletions(-)

diff --git a/Documentation/devicetree/bindings/pinctrl/ralink,mt7620-pinctrl.yaml b/Documentation/devicetree/bindings/pinctrl/ralink,mt7620-pinctrl.yaml
index 1e63ea34146a..531b5f616c3d 100644
--- a/Documentation/devicetree/bindings/pinctrl/ralink,mt7620-pinctrl.yaml
+++ b/Documentation/devicetree/bindings/pinctrl/ralink,mt7620-pinctrl.yaml
@@ -17,7 +17,10 @@ description:
properties:
compatible:
- const: ralink,mt7620-pinctrl
+ enum:
+ - mediatek,mt7620-pinctrl
+ - ralink,mt7620-pinctrl

We don't update compatible strings based on acquistions nor marketing
whims. If you want to use 'mediatek' for new things, then fine.

Understood. Only the SoCs with rtXXXX were rebranded, the mtXXXX SoCs share
the same architecture from Ralink, so they were incorrectly called Ralink
SoCs.

I can remove the new strings from Ralink SoCs and add them only for MediaTek
SoCs. Or you could make an exception for this one, regarding the situation.
Whatever you think is best.

I'm not in a position to make an exception as I know little about this
platform. Carrying both strings is a NAK. Either you (and everyone using
these platforms) care about the ABI and are stuck with the "wrong"
string. In the end, they are just unique identifiers. Or you don't care
and break the ABI and rename everything. If you do that, do just that in
your patches and make it crystal clear in the commit msg that is your
intention and why that is okay.

Ralink had their MIPS SoCs pre-acquisition, RT2880, etc. MediaTek introduced new SoCs post-acquisition, MT7620, MT7621, MT7628, and MT7688, utilising the same platform from Ralink, sharing the same architecture code, pinctrl core driver, etc.

I don't intend to break the ABI at all. On the contrary, I fix it where possible.

If I understand correctly, from this conversation and what Krzysztof said, all strings must be kept on the schemas so I can do what I said on the composed mail. Only match the pin muxing information on the strings that won't match multiple pin muxing information from other schemas.

This way we don't break the ABI, introduce new compatible strings while keeping the remaining ones, and make schemas match correctly.

Let me know if this is acceptable to you.

Arınç