×

龙芯CPU的FDT内核使用手册

消耗积分:0 | 格式:rar | 大小:1.60 MB | 2020-11-19

分享资料个

1.1FDT历史

FDT (Flattened Device Tree)在早期的 ARM Linux Kernel中,板级代码存放在arch/arm/目录。名字通常为plat-x或者mach-xxx,这类目录对 Linux Kernel来说,意义非常有限,导致内核中充斥这大量板级相关代码和大量# i fdef形式的代码Linus Torvalds认为ARM很多的代码都是垃圾,代码里面有若干对内核没有意义的 table,每次 merge中,ARM的代码变化大约占整个ARCH目录的60%,大部分变化都是板级相关代码。经过社区中的争论,确定的问题如下ARM1inux中大量的板级源代码应该踢出 kernel,由 Device Tree机制来负责传递硬件拓扑和硬件资源信息

1.2FDT设计思想

Device Tree是一种描述硬件的数据结构,它起源于 Openfirmware(oOF)改变了原来用源代码方式将板级硬件配置信息嵌入到内核的方法,把板级配置信息剥离出了内核。内核不再关注板级硬件差异,用户要了解自己的硬件配置和系统运行参数,并把这些信息组织成 Device Tree source file,通过 boot loader传递给内核内核不再处理管脚复用,功能选择等硬件配置信息,把这些工作交给固件处理,只根据 Device Tree中的信息执行不同的操作,实现一个二进制兼容不同硬件配置的板卡

1.3设备树组成

1.3.1采用设备树前后对比采用设备树之前:ARM架构的板极硬件细节过多的被硬编码在arch/arm/plat-xxx和arch/arm/mach-xxx中采用设备树之后:许多硬件细节可以直接通过它传递给 Linux,而不需要在内核中进行大量的冗余编码设备树的组成:由一系列被命名的节点(Node)和属性( Property)组成1.3.2设备树中可描述的信息CPU的数量和类别内存基地址和大小总线和桥外设链接中断控制器和中断使用情况GPIo控制器和GPIo使用情况时钟控制器核实中使用情况

 

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

评论(0)
发评论

下载排行榜

全部0条评论

快来发表一下你的评论吧 !