Re: [PATCH v2 3/9] arm64: dts: bcmbca: update BCM4908 board dts files

Krzysztof Kozlowski
2022-07-27T12:13:26Z

On 27/07/2022 12:39, Rafał Miłecki wrote:
> On 2022-07-26 03:09, William Zhang wrote:
>> On 07/25/2022 04:32 PM, Rob Herring wrote:
>>> On Sun, Jul 24, 2022 at 10:53:56PM -0700, William Zhang wrote:
>>>> Append "brcm,bcmbca" to compatible strings based on the new bcmbca
>>>> binding rule for BCM4908 family based boards. This will break drivers
>>>> that use the old compatible string for binding. Fortunately there is
>>>> no
>>>> such usage in linux and u-boot.
>>>
>>> How does adding an additional compatible break things?
>>> In theory when some crazy code tries to match the entire string. But
>>> not
>> in linux, u-boot code and hopefully not in other bootloader and Os
>> does that. But this does change an existing compatible string so
>> Krzysztof suggested to add comment about the breakage in the commit
>> message. I can remove this and send v3 if you guys think it is
>> necessary.
>
> Krzysztof commented on ABI breakage [1] when you tried removing
> "brcm,bcm4908" from the "compatible" list in your patch
> [RFC PATCH 3/3] arm64: dts: bcmbca: update bcm4808 board dts file [2]
>
> In this version of your patch you don't remove "brcm,bcm4908" anymore so
> this change doesn't break anything. Adding a new "compatible" string
> doesn't break things. You can remove that info from the commit message.

Thanks... It is second thing (after not existing Reviewed-by) attributed
to me by William, although here probably by misunderstanding... So for
clarity (obvious stuff is not always obvious to everyone):
1. Removal of compatible is an ABI break.
2. Add of compatible is not an ABI break.

See also:
https://elixir.bootlin.com/linux/v5.19-rc8/source/Documentation/devicetree/bindings/ABI.rst#L26

Best regards,
Krzysztof