我问自己,与 Linux 内核版本 3.18 兼容的某个 dtb 是否与 Linux 内核版本 4.9 兼容。
我想不会,因为有关设备树的内核代码可能会随着时间的推移而变化,但它必须以某种方式兼容,否则多个 dts/dtsi 文件必须一直更改。
我用谷歌来调查这个问题,但即使在官方文档中我也找不到关于不同内核版本之间兼容性的任何文字。
答案1
设备树应该是一个稳定的 ABI,因此为任何版本的内核编写的设备树都应该适用于任何后续的内核版本。
然而,出于实际原因,情况往往并非如此。您可以看看 Thomas 的以下演示,其中解释了原因: http://free-electrons.com/pub/conferences/2015/elc/petazzoni-dt-as-stable-abi-fairy-tale/petazzoni-dt-as-stable-abi-fairy-tale.pdf