DevicetreeΒΆ

To tell the kernel which hardware is available and where to find it, you need to write a Device Tree Structure (.dts file). You use the interface from the SoC manufacturer (.dtsi file) as a base class that defines specific connectors, so the DTS represents the rest of the board.

They are localted in arch/arm64/boot/dts/ and you can build them with make:

make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- \
                     arch/arm64/boot/dts/arm/corstone1000.dtsi

Developers should keep their device trees in-kernel, maintaining their own fork of the kernel. Only the SoC manufacturers actually upstream their device trees as they represent the fully-featured description of their hardware.