Linux设备树(device tree)

Linux设备树(device tree)
共35节 1469人在学 课程详情
  • 为什么要引入设备树(device tree)?
  • 如何编译和运行 device tree?
  • 使用设备树接口编写platform驱动
  • SoC芯片架构:总线与片选
  • SoC芯片架构:桥接(bridge)
  • SoC芯片架构: extend bus
  • device tree基本语法: node
  • device tree基本语法: property
  • 设备树实例分析: CPU node
  • 设备树实例分析: memory
  • 设备树实例分析: 外设(PrimeCell)
  • 设备树实例分析:中断控制器
  • 设备树实例分析:中断映射
  • 设备树实例分析:时钟
  • extend bus(上): I2C client
  • extend bus(下): memory mapped设备
  • 设备树实例分析: GPIO
  • 设备树实例分析: pinmux(上)
  • 设备树实例分析: pinmux(下)
  • dts和dtsi文件的分离
  • property的overwrite
  • dtb二进制文件格式
  • platform device自动展开分 析(上)
  • platform device自动展开分 析(下)
  • I2C设备的自动展开
  • 哪些node会自动展开为 platform_device?
  • 设备树节点解析示例: CPU node
  • 设备树节点解析示例: memory node
  • 设备树节点解析示例: chosen node(上)
  • 设备树节点解析示例: chosen node(下)
  • 设备树节点解析示例: aliases node
  • 设备树节点解析: 获取IRQ number
  • 设备树节点解析: 获取register地址
  • 设备树节点解析: GPIO
  • Device Bingdings & Guidelines

    订阅失败

    Linux设备树(device tree)
    Linux设备树(device tree) ...

    订阅列表已满,请先移出部分订阅内容。

    当前章节需购买后观看
    开通超级会员免费看!专家精选系列课程,满足你从入门到精通!更有问答月卡免费送,你的问题有问必答!
    提交答案

    购买课程

    扫码完成付费,可继续学习全部课程内容

    加载中...
    播放页问题反馈
    视频学习中有任何产品建议都可由此反
    馈,我们将及时处理!

    课时介绍

    内核源码分析 • 如何从设备树中创建platform device • 如何初始化resource资源 • platform device如何添加到platform 总线

    课程介绍

    设备树(device tree)机制是Linux内核从linux-3.x版本开始引进的一种机制,目的是解决内核源码的arch/arm目录下代码混乱的问题:随着ARM生态的快速发展,在内核源码的arch/arm目录下,存放着几十种arm芯片和几百个开发板相关的源文件,很多开发板和处理器的中断、寄存器等相关硬件资源都在这个目录下以.c或.h的文件格式定义。而对于内核来说,与这些硬件耦合,会导致内核代码混乱不堪,每个开发板上运行的内核镜像都必须单独编译配置,无法通用。什么时候Linux内核能像Windows镜像那样,无论你的电脑什么配置,一个Windows安装包,都可以直接下载安装运行呢?

    设备树机制,实现了Linux内核和硬件平台的解耦:每个硬件平台的硬件资源使用一个设备树文件(xxx.dts)来描述,而不是在arch/arm下以.c 或 .h 文件来定义。Linux内核是一个通用的内核,在启动过程中,在通过解析设备树中的硬件资源来初始化某个具体的平台。

     

    引入设备树后,很多和内核驱动开发的工作也发生了变化:以往驱动工程师关注的头文件宏定义、寄存器定义,现在这些基本上不用关注,关注的重点则转向了如何根据硬件平台去配置和修改设备树文件。很多驱动的编程接口也发生了变化,开始慢慢使用device tree提供的编程接口去开发驱动。

    本期课程主要面向嵌入式开发人员,分享Linux下驱动开发所需要的设备树知识和必备技能

    推荐课程

    信息系统项目管理师自考笔记

    李明 · 721人在学

    python从0到1:期货量化交易系统(CTP实战,高频及合成K线数据

    王先生 · 22093人在学

    手把手搭建Java超市管理系统【附源码】(毕设)

    汤小洋 · 4203人在学

    Java毕设springboot外卖点餐系统 毕业设计毕设源码 使用教

    黄菊华 · 788人在学

    基于SSM酒店管理系统(毕设)

    小尼老师 · 841人在学

    java项目实战之购物商城(java毕业设计)

    Long · 5153人在学

    手把手搭建Java求职招聘系统【附源码】(毕设)

    汤小洋 · 1506人在学

    Python Django 深度学习 小程序

    钟翔 · 2319人在学

    城管局门前三包管理系统+微信小程序(vue+springboot)

    赖国荣 · 598人在学

    Vue+Uni-app(uniapp)入门与实战+赠送仿美团点餐小程序

    李杰 · 3985人在学

    正在试验
    后自动删除环境
    课程实验
    本次实验时间已到期 00:00:00
    课件正在飞速打包中,请耐心等待几秒钟~