[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <3c96ee6b-dca7-1a0a-792b-f8c165ec997d@manjaro.org>
Date: Wed, 19 Nov 2025 07:47:20 +0100
From: "Dragan Simic" <dsimic@...jaro.org>
To: "Michael Opdenacker" <michael.opdenacker@...tcommit.com>
Cc: robh@...nel.org, krzk+dt@...nel.org, conor+dt@...nel.org, heiko@...ech.de, devicetree@...r.kernel.org, linux-arm-kernel@...ts.infradead.org, linux-rockchip@...ts.infradead.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v2 1/2] dt-bindings: arm: rockchip: Add Asus Tinker Board 3 and 3S
Hello Michael,
On Tuesday, November 18, 2025 06:27 CET, Michael Opdenacker <michael.opdenacker@...tcommit.com> wrote:
> On 11/15/25 01:52, Dragan Simic wrote:
> > I'm sorry again for not mentioning it in my earlier responses,
> > but shouldn't this addition be specified like below:
> >
> > - description: Asus Tinker Board 3/3S
> > items:
> > - enum:
> > - asus,rk3566-tinker-board-3
> > - asus,rk3566-tinker-board-3s
> > - const: rockchip,rk3566
> >
> > ... because the introduced .dts files define the actual board DTs,
> > by descending from the common .dtsi file, while they're compatible
> > in the sense of the 3S board variant extending the 3 variant.
>
> Actually, "make dtbs_check" fails if rk3566-tinker-board-3s.dts has:
> compatible = "asus,rk3566-tinker-board-3s",
> "asus,rk3566-tinker-board-3", "rockchip,rk3566";
>
> The failure is:
> arch/arm64/boot/dts/rockchip/rk3566-tinker-board-3s.dtb: /
> (asus,rk3566-tinker-board-3s): compatible: 'oneOf' conditional failed,
> one must be fixed:
> ['asus,rk3566-tinker-board-3s', 'asus,rk3566-tinker-board-3',
> 'rockchip,rk3566'] is too long
> ['asus,rk3566-tinker-board-3s', 'asus,rk3566-tinker-board-3',
> 'rockchip,rk3566'] is too short
Oh, I missed that completely, thanks for running the checks.
> If I understand correctly, to keep the rk3566-tinker-board-3s.dts file
> as it is, you need Asus Tinker Board 3 and 3S to have two different
> descriptions as in V2:
>
> - description: Asus Tinker Board 3 items: - const:
> asus,rk3566-tinker-board-3 - const: rockchip,rk3566 - description: Asus
> Tinker Board 3S items: - const: asus,rk3566-tinker-board-3s - const:
> asus,rk3566-tinker-board-3 - const: rockchip,rk3566
>
> The other solution is to remove the "asus,rk3566-tinker-board-3"
> compatible from rk3566-tinker-board-3s.dts, which is not a big deal in
> my opinion. In addition, if some code turns out to work only on 3 but
> not on 3S, though that's not expected if 3S is indeed a superset of 3,
> we won't be stuck.
>
> I can submit a V3 along these lines.
This should let us keep the "asus,rk3566-tinker-board-3" compatible
in the new rk3566-tinker-board-3s.dts board dts while satisfying the
validation properly:
- description: Asus Tinker Board 3/3S
items:
- enum:
- asus,rk3566-tinker-board-3s
- const: asus,rk3566-tinker-board-3
- const: rockchip,rk3566
I'm quite busy at the moment, hence my delayed response, and I also
apologize for not running the checks on the above-proposed solution,
but I think it should work as expected.
Powered by blists - more mailing lists