所以我正在学习嵌入式Linux,并有几个问题,我似乎无法找到答案。嵌入式Linux新手问题
1)编译时内核是否依赖于dtb/dts文件?我认为内核只需要知道芯片架构(即arm),并且由引导加载程序(uBoot)加载dtb文件,因此内核只需加载由dtb文件配置的驱动程序。
2)混合与匹配:我的印象是,我可以混合和匹配引导装载程序,DTB,内核,根文件系统,并给予模块的任意组合下列
- 内核下:必须知道哪些芯片它是编译为
- dtb:必须知道板的细节和芯片,即多少ram,配置一个GPIO的SPI
- 引导加载程序:必须知道芯片和uEnv.txt必须有内核和dtb的参数位置
- rootfs:完全独立 个
- 模块:必须与内核
3)驱动程序的特定版本的编译:如果我想加载一个SPI驱动,我需要具体的事情还是会内核懂得,因为DTB文件操作本设置所需的寄存器?
4)模块:这些只是依赖于内核,还是需要知道关于芯片和电路板的东西(当我说芯片我的意思是,他们必须知道的不仅仅是一个简单的arm或x86架构) ?
先谢谢你,我知道这些都是一些基本的问题,但任何帮助表示赞赏。
谢谢你的回答。只是一件事,当我说rootfs时,我指的是预建的rootfs,而不是指它使用的文件系统。 – user2205930
@ user2205930 - 参见Addentum。 – sawdust