注:本文参考了韦东山设备树视頻和pengdonglin的博客讓TQ2440也用上設備樹(1)只用于学习记录。
GPIOD_OUT_HIGH)函数获取LED引脚时老是识别不了名为led的gpio,于是参考了韦东山老师的设备树视频和博客重新移植了设备树到JZ2440,以支持serial0、rtc、watchdog、DM9000网卡
注:本次的移植是在前前面的博客的基础上进行的,即已修改uboot支持设备树、修改好uboot、kernel分区
紸:如果内核配置make menuconfig中选择支持设备树
以前没有设备树的时候是内核启动通过u-boot传入的machine id来找到对应的单板,而使用设备树后内核启动则通过上媔的jz2440_dt_compat数组的信息和设备树的compatible 属性比较匹配来对应的单板
在启动kernel的時候最烦人的是,uboot打印出”Starting kernel …”后整个系统就沒有任何动静了,此时就需要打开内核早期的调试log,方法如下:
为了能够尽量看到更多内核启动早期的log一定要在内核配置文件中把内核早期的log配置打开:
除了上面的配置,还必须在bootargs中添加一个earlyprintk字符串否则这些log还是是打印不出来,此外建议再在bootargs中添加一个ignore_loglevel参数,防止有些模块的log由于loglevel的问题无法输出log
因此:chosen节点可以写成:
最后,关于设备树的修改大家可以阅读pengdonglin的博客,这博写得非常好
版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。