Re: [PATCH v8 02/16] dt-bindings: net: mediatek,net: allow up to 8 IRQs

From: Frank Wunderlich
Date: Mon Jul 07 2025 - 06:43:57 EST


Hi Angelo,

Am 7. Juli 2025 12:06:02 MESZ schrieb AngeloGioacchino Del Regno <angelogioacchino.delregno@xxxxxxxxxxxxx>:
>Il 07/07/25 09:30, Frank Wunderlich ha scritto:
>> Am 7. Juli 2025 08:31:11 MESZ schrieb Krzysztof Kozlowski <krzk@xxxxxxxxxx>:
>>> On Sun, Jul 06, 2025 at 03:21:57PM +0200, Frank Wunderlich wrote:
>>>> From: Frank Wunderlich <frank-w@xxxxxxxxxxxxxxx>
>>>>
>>>> Increase the maximum IRQ count to 8 (4 FE + 4 RSS/LRO).
>>>
>>> Because? Hardware was updated? It was missing before?
>>
>> There is no RSS support in driver yet,so IRQs were not added to existing DTS yet.
>>
>
>That's the problem. It's the hardware that you should've described, not the driver.
>
>In short, you should've allowed the interrupts from the get-go, and you wouldn't
>be in this situation now :-)

I have not upstreamed MT7981 or MT7986. I also do not want to say anybody else did this wrong.
I'm happy that MT7986 is working in mainline. It was basicly not taken into account that these IRQs may be needed in future.

The technical documents are often not complete and we get some information step-by-step while testing.
Or it was not seen when documents are too large :) many reasons why it was "forgotten to add".
We use what we get from sdk and docs and try to make it compatible with mainline....no optimal process,but it is like it is.

We are all humans :)

>Again, it's not the driver but the hardware that you're describing.

Frame engine works with 4,but we wanted to do better than mt798[16] and add all known IRQs
for MT7988 and update the older SoCs in next step.

>As long as you are fixing the description of the hardware, even for all three,
>I am personally even fine with breaking the ABI, because the hardware description
>has been wrong for all that time.

As some patches now are applied i can add the missing IRQs for MT798[16] in next round and
maybe the sram too to not having the binding errors long time.

>Just don't send those as Fixes commits, but next time you upstream something you
>must keep in mind that in bindings/dts you're describing hardware - the driver is
>something that should not drive any decision in what you write in bindings.
>
>We're humans, so stuff like this happens - I'm not saying that you shall not make
>mistakes - but again please, for the next time, please please please keep in mind
>what I just said :-)
>
>Now the options are two:
> - Break the ABI; or
> - Allow 4 or 8 interrupts (not 5, not 6, not 7)
>
>and that - not just on MT7988 but also on 81 and 86 in one go.

I would add dts patches for MT798[16] in next version adding the RSS/LRO IRQs,
interrupt-names and the sram node and set the interrupt minItems to 8 for these.

>Not sure if the second one is feasible, and I'm considering the first option only
>because of that; if the second option can be done, act like I never ever considered
>the first.

Maybe the cleanest way is like i described above? Afaik second is not possible.

My intention is that RSS/LRO is ONLY working with interrupt-names so driver can handle also
old dtb (skip function if irqs are not found via name).

I hope this is a good way to go...

>Cheers,
>Angelo


regards Frank