跳到主要内容

入门问答

这页用于收纳原先偏碎片的嵌入式问题,优先保留真正值得反复回看的概念边界。

Linux Kernel 是什么时候加载 DTB 的?

  • 一般不是内核自己“主动去找” DTB,而是由 Bootloader 先把内核镜像和 DTB 放到内存里。
  • Bootloader 跳进内核入口时,把 DTB 的物理地址一并传给内核。
  • 内核早期启动阶段会保留这段内存,并把扁平设备树解析成运行时使用的内部树结构。

fdt_of_ 的区别是什么?

  • fdt_:面向启动早期的扁平设备树二进制数据,处理的是原始 DTB/FDT 内容。
  • of_:面向内核运行期已经展开后的设备树结构,处理的是内核内部的 device_node 体系。

什么时候该看设备树,什么时候该看驱动?

  • 硬件描述不对、节点没挂上、属性不生效,先看设备树。
  • 驱动探测失败、资源申请失败、运行逻辑异常,再深入看驱动实现。

继续阅读

评论

如果内容有勘误、补充或不同看法,可以直接写在这里。

正在加载留言板…