
Hi,
On Tue, Dec 12, 2023 at 4:52 PM Andrew Davis afd@ti.com wrote:
On 12/12/23 8:05 AM, Simon Glass wrote:
The devicetree files for a board can be quite large, perhaps around 60KB. To boot on any supported board, many of them need to be provided, typically hundreds.
All boards for a particular SoC share common parts. It would be helpful to use overlays for common pieces, to reduce the overall size.
For this to save much size we would need to have the SoC split from each board that uses it. We don't have that in DT today. There are some efforts in progress to help on this but until then we will not get much here.
Indeed.
E.g. The Kingfisher board[1] is an extension for (various) ULCB boards[2], but we cannot use an overlay for the former, as the combinations need to have different top-level compatible (and model) values. Hence currently we use a .dtsi file and lots of extra .dts files[3].
The other issue is the need for parameterization, due to slight differences in pins/signals on various base boards, or because the same connector is present multiple times (e.g. for multi-camera setups[4][5]).
[1] arch/arm64/boot/dts/renesas/ulcb-kf.dtsi [2] arch/arm64/boot/dts/renesas/*-ulcb.dts [3] arch/arm64/boot/dts/renesas/*-ulcb-kf.dts [4] arch/arm/boot/dts/renesas/r8a7742-iwg21d-q7-dbcm-ov5640-single.dtsi [5] arch/arm/boot/dts/renesas/r8a7742-iwg21d-q7-dbcm-ov7725-single.dtsi
Gr{oetje,eeting}s,
Geert