public inbox for devicetree@vger.kernel.org
 help / color / mirror / Atom feed
From: "Arınç ÜNAL" <arinc.unal@arinc9.com>
To: AngeloGioacchino Del Regno
	<angelogioacchino.delregno@collabora.com>,
	Thorsten Leemhuis <regressions@leemhuis.info>,
	Rob Herring <robh@kernel.org>, Conor Dooley <conor+dt@kernel.org>,
	Krzysztof Kozlowski <krzk+dt@kernel.org>,
	Matthias Brugger <matthias.bgg@gmail.com>
Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org,
	linux-mediatek@lists.infradead.org,
	Daniel Golle <daniel@makrotopia.org>,
	frank-w@public-files.de,
	Linux regressions mailing list <regressions@lists.linux.dev>,
	Frank Wunderlich <linux@fw-web.de>,
	Paolo Abeni <pabeni@redhat.com>
Subject: Re: [PATCH] arm64: dts: mt7622: fix switch probe on bananapi-r64
Date: Tue, 11 Jun 2024 21:15:48 +0300	[thread overview]
Message-ID: <4416ef22-78cc-4ce5-b61d-69ff0903811e@arinc9.com> (raw)
In-Reply-To: <5e87d31c-b059-4f9a-93f7-dc87465ed14a@collabora.com>

On 11/06/2024 16:03, AngeloGioacchino Del Regno wrote:
> Il 11/06/24 14:56, Arınç ÜNAL ha scritto:
>> On 11/06/2024 15:28, AngeloGioacchino Del Regno wrote:
>>> Il 11/06/24 13:38, Arınç ÜNAL ha scritto:
>>>> On 11/06/2024 14:30, Thorsten Leemhuis wrote:
>>>>> On 07.06.24 16:15, Thorsten Leemhuis wrote:
>>>>>> On 07.06.24 16:03, Paolo Abeni wrote:
>>>>>>> On Thu, 2024-06-06 at 10:26 +0200, Thorsten Leemhuis wrote:
>>>>>>>> On 31.05.24 08:10, Arınç ÜNAL wrote:
>>>>>>>>> On 31/05/2024 08.40, Thorsten Leemhuis wrote:
>>>>>>>>>> [adding Paolo, who committed the culprit]
>>>>>>>> 
>>>>>>>> /me slowly wonders if the culprit should be reverted for now (see below)
>>>>>>>> and should be reapplied later together with the matching changes from
>>>>>>>> Arınç ÜNAL.
>>>>>>> 
>>>>>>> FWIS I think a revert should be avoided, given that a fix is available
>>>>>>> and nicely small.
>>>>>> 
>>>>>> Yeah, on one hand I agree; but on the other it seems that the
>>>>>> maintainers that would have to take care of the dt changes to fix this
>>>>>> until now remained silent in this thread, apart from Rob who sent the
>>>>>> mail regarding the warnings.
>>>>>> 
>>>>>> I put those maintainers in the To: field of this mail, maybe that might
>>>>>> lead to some reaction.
>>>>> 
>>>>> Still no reply from the DRS folks or any other progress I noticed. Guess
>>>>> that means I will soon have no other choice than to get Linus involved,
>>>>> as this looks stuck. :-( #sigh
>>>> 
>>>> Does it have to be Linus that needs to apply "[PATCH 0/2] Set PHY address
>>>> of MT7531 switch to 0x1f on MediaTek arm64 boards"? Aren't there any other
>>>> ARM maintainers that can apply the fix to their tree?
>>>> 
>>>> Arınç
>>> 
>>> You have feedback from two people on the series that you mentioned, and noone
>>> is going to apply something that needs to be fixed.
>>> 
>>> I'm giving you the possibility of addressing the comments in your patch, but
>>> I don't want to see any mention of the driver previously ignoring this or that
>>> as this is irrelevant for a hardware description. Devicetree only describes HW.
>>> 
>>> Adding up, in commit 868ff5f4944a ("net: dsa: mt7530-mdio: read PHY address of switch from device tree"),
>>> you have created a regression.
>>> 
>>> Regressions should be fixed - as in - if the driver did work before with the old
>>> devicetrees, it shall still work. You can't break ABI. Any changes that you do
>>> to your driver must not break functionality with old devicetrees.
>>> 
>>> So...
>>> 
>>> ------> Fix the driver that you broke <------
>> 
>> The device tree ABI before the change on the driver:
>> 
>> The reg value represents the PHY address of the switch.
>> 
>> The device tree ABI after the change on the driver:
>> 
>> The reg value represents the PHY address of the switch.
>> 
>> I see no device tree ABI breakage. What I see instead is the driver
>> starting enforcing the device tree ABI. No change had been made on the
>> device tree ABI so any non-Linux driver that controls this switch continues
>> to work.
>> 
>> These old device tree source files in question did not abide by the device
>> tree ABI in the first place, which is why they don't work anymore as the
>> Linux driver now enforces the ABI. Device tree source files not conforming
>> to the ABI is not something to maintain but to fix. The patch series that
>> fixes them are already submitted.
> 
> As I said, the devicetree MUST describe the hardware correctly, and on that I do
> agree, and I, again, said that I want to take the devicetree fix.
> 
> However, the driver regressed, and this broke functionality with old device trees.
> Old device trees might have been wrong (and they are, yes), but functionality was
> there and the switch was working.
> 
> I repeat, driver changes MUST be retro-compatible with older device trees, and your
> driver changes ARE NOT; otherwise, this wouldn't be called *regression*.

I'm going to argue that what caused the regression is the broken device
tree. The recent change on the driver only worked towards exposing the
broken device tree. The device tree files hosted on the Linux repository is
not only for use with the Linux drivers. Other projects use these device
tree files as well, as hardware description is not supposed to differ by
project. And for any non-Linux driver that would use this broken device
tree, there would be a regression.

So I don't understand why you demand a change on a Linux driver to be made
before applying the fix for a broken device tree.

That said, I don't understand the old device tree sentiment here. The
driver, after the change, still does support old device trees. Never in the
existence of this switch bindings, the PHY address was supposed to be
described a value other than the PHY address the switch listens on. Yes,
the driver now doesn't work with old and broken device trees. Which is why
we're fixing the said device trees. I don't see why it is necessary to make
the driver support broken device trees just because they used to work for a
certain range of time. This isn't about preserving ABI.

Arınç

  reply	other threads:[~2024-06-11 18:15 UTC|newest]

Thread overview: 43+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-05-16 20:48 [PATCH] arm64: dts: mt7622: fix switch probe on bananapi-r64 Frank Wunderlich
2024-05-17  2:17 ` Arınç ÜNAL
2024-05-17  6:27   ` Frank Wunderlich
2024-05-23 10:44     ` Linux regression tracking (Thorsten Leemhuis)
2024-05-31  5:40       ` Thorsten Leemhuis
2024-05-31  6:10         ` Arınç ÜNAL
2024-06-06  8:26           ` Thorsten Leemhuis
2024-06-06  9:01             ` Arınç ÜNAL
2024-06-06  9:34               ` Thorsten Leemhuis
2024-06-07 14:03             ` Paolo Abeni
2024-06-07 14:15               ` Thorsten Leemhuis
2024-06-11 11:30                 ` Thorsten Leemhuis
2024-06-11 11:38                   ` Arınç ÜNAL
2024-06-11 12:28                     ` AngeloGioacchino Del Regno
2024-06-11 12:56                       ` Arınç ÜNAL
2024-06-11 13:03                         ` AngeloGioacchino Del Regno
2024-06-11 18:15                           ` Arınç ÜNAL [this message]
2024-06-17  8:33                             ` Linux regression tracking (Thorsten Leemhuis)
2024-06-17 11:08                               ` Arınç ÜNAL
2024-06-25  5:56                                 ` Linux regression tracking (Thorsten Leemhuis)
2024-06-25  6:17                                   ` Arınç ÜNAL
2024-06-25  6:57                                     ` Linux regression tracking (Thorsten Leemhuis)
2024-06-25  8:17                                       ` Arınç ÜNAL
2024-06-25  8:49                                         ` AngeloGioacchino Del Regno
2024-06-26  3:07                                           ` Arınç ÜNAL
2024-06-25  8:51                                   ` AngeloGioacchino Del Regno
2024-07-01  6:16                                     ` Linux regression tracking (Thorsten Leemhuis)
2024-07-01  7:02                                       ` Aw: " Frank Wunderlich
2024-07-01  7:44                                       ` Arınç ÜNAL
2024-07-01  8:04                                         ` Linux regression tracking (Thorsten Leemhuis)
2024-07-01  8:15                                           ` Arınç ÜNAL
2024-07-30  9:41                                             ` AngeloGioacchino Del Regno
2024-07-30 11:22                                               ` arinc.unal
2024-07-30 11:38                                                 ` arinc.unal
2024-07-30 16:04                                                 ` Krzysztof Kozlowski
2024-07-30 16:22                                                   ` Daniel Golle
2024-07-30 16:38                                                   ` Arınç ÜNAL
2024-07-31  5:29                                                     ` Krzysztof Kozlowski
2024-07-31  7:55                                                       ` Arınç ÜNAL
2024-05-31  6:12     ` Arınç ÜNAL
2024-05-31  6:18       ` Frank Wunderlich
2024-05-31  6:27         ` Arınç ÜNAL
2024-05-17 13:17 ` Rob Herring (Arm)

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4416ef22-78cc-4ce5-b61d-69ff0903811e@arinc9.com \
    --to=arinc.unal@arinc9.com \
    --cc=angelogioacchino.delregno@collabora.com \
    --cc=conor+dt@kernel.org \
    --cc=daniel@makrotopia.org \
    --cc=devicetree@vger.kernel.org \
    --cc=frank-w@public-files.de \
    --cc=krzk+dt@kernel.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mediatek@lists.infradead.org \
    --cc=linux@fw-web.de \
    --cc=matthias.bgg@gmail.com \
    --cc=pabeni@redhat.com \
    --cc=regressions@leemhuis.info \
    --cc=regressions@lists.linux.dev \
    --cc=robh@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox