Linux设备树原理

1 简介

    在没有设备树以前,需要将开发板的信息硬编码到内核的.c源文件中。不同开发板的硬件配置不一样,因此内核中存在大量的板级配置源码,从而造成代码冗余。

    针对上述现象,PowerPC使用设备树的方法将板级配置信息独立存放到.dts.dtsi文件中。此时,针对不同的开发板,只需要配置相应的.dts.dtsi文件即可,从而避免大量重复的编码工作。

    由于设备树具有上述优点,2011年开始Linux内核大规模采用这种机制(起初只是PowerPC使用而已),因此对于现在从事Linux底层开发的人员而言,必须了解设备树的原理和使用方法。

2 设备树语法

    关于设备树的语法,网上资料较多,具体可以参考[1][9],本文不再赘言。

3 设备树展开

    定义好设备树文件之后,内核是如何使用设备树的呢?参考资料[2]针对tiny4412开发板对内核如何展开设备树进行了较为具体的分析,参考资料[11]更是对设备树的源码进行了较为详细的分析。


参考资料

[1]ARM Linux 3.x的设备树(Device Tree)

[2]基于tiny4412的Linux内核移植 -- 设备树的展开

[3]Exynos4412 中断驱动开发(三)—— 设备树中中断节点的创建

[4]linux设备树dts移植详解

[5]设备树概述

[6]imx6设备树pinctrl解析 

[7]Linux设备树(Linux Device Tree)学习

[8]我眼中的Linux设备树(Device tree)概述

[9]Linux设备驱动开发详解--基于最新4.0内内核

[10]Device Tree(二):基本概念

[11]Device Tree(三):代码分析

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

OneSea

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值