Device tree is used at runtime on ARM devices to identify and load correct drivers with its configuration. But when I look into loaded DT at /proc/device-tree on my phone for example, there are many configurations unrelated to actuall platform. For example about 15 different display configurations that this specific device never used and never will. So far I thought only relevant DT gets included into the kernel and loaded but it seems all DTS from related /arch source folder are loaded. How does the kernel select the right one for the platform? Isn´t this a bit redundant?


I think it isn't because Kernel load all DTS. Actually, an ARM firmware image can contain more than one dts inside, but It loads only on dts when it is booting. You see redundant device int /proc/device-tree because your device tree defined them. Even your phone does not have these device, you still can define that device, of cause, these devices can not work and may break your kernel.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.