[PATCH v2 1/2] dt-bindings: arm: rockchip: Add Asus Tinker Board 3 and 3S

Michael Opdenacker michael.opdenacker at rootcommit.com
Mon Nov 17 21:27:15 PST 2025


Hi Dragan

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

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.
Cheers
Michael.

-- 
Michael Opdenacker
Root Commit
Yocto Project and OpenEmbedded Training course - Learn by doing:
https://rootcommit.com/training/yocto/




More information about the linux-arm-kernel mailing list