JIN Blog

Thinking will not overcome fear but action will.

第四课_u Boot对设备树的支持

转载请注明文章地址 http://wiki.100ask.org/Linux_devicetree 第01节_传递dtb给内核 先把设备树文件读到内存,在启动内核时把设备树的地址写到r2寄存器中 a. u-boot中内核启动命令: bootm // 无设备树,bootm 0x30007FC0 bootm ...

第六课_在lcd驱动中使用设备树

转载请注明文章地址 http://wiki.100ask.org/Linux_devicetree 按照计划,本课会讲解修改uboot和内核让JZ2440支持设备树。 但前面修改uboot已经讲解完了,修改内核也没必要单独讲,可以直接看内核补丁,修改的方法也并不复杂。 内核补丁路径: doc_and_sources_for_device_tree/source_and_images...

第五课. 内核中断系统中的设备树

这节课讲解如何在中断系统中使用设备树,也就是用设备树如何描述中断。 中断体系在4.x内核中变化很大,中断体系又跟pinctrl系统密切相关,pinctrl中又涉及GPIO子系统,这样讲下去的话,设备树课程就变成驱动专题了,所以我打算只讲中断体系统,对于pinctrl、gpio等系统留待以后在驱动课程中扩展。 这一课的参考资料链接如下: 基于设备树的TQ2440的中断(1) 基...

第二课_设备树的规范(dts和dtb)

转载请注明文章地址 http://wiki.100ask.org/Linux_devicetree 第01节_DTS格式 dts文件通过编译生成dtb格式文件 属性的定义 value取值类型 属性名=值只有三种取值 第一种 <1 0x3 0x123> (一个或多个32位数据) arrays of cells 第二种 “字符...

第三课_linux内核对设备树的处理

转载请注明文章地址 http://wiki.100ask.org/Linux_devicetree 这一课是设备树中最重要的一课。 前面我们从内核文档了解到,对于设备树,它里面描述的信息可以分为这三部分: Linux uses DT data for three major purposes: 1) platform identification, 2) runtime confi...

第一课_设备树的引入与体验(基于linux4.19内核版本)

转载请注明文章地址 http://wiki.100ask.org/Linux_devicetree 本套视频面向如下三类学员: 有Linux驱动开发基础的人, 可以挑感兴趣的章节观看; 没有Linux驱动开发基础但是愿意学习的人,请按顺序全部观看,我会以比较简单的LED驱动为例讲解; 完全没有Linux驱动知识,又不想深入学习的人, 比如应用开发人员,不得已要改改驱动...

Platform设备驱动

platform设备驱动 一、platform 驱动的工作过程 ​ platform模型驱动编程,需要实现platform_device(设备)与platform_driver(驱动)在platform(虚拟总线)上的注册、匹配,相互绑定,然后再做为一个普通的字符设备进行相应的应用,总之如果编写的是基于字符设备的platform驱动,在遵循并实现platform总线上驱动与...

uboot详解和启动流程

Exynos4412、uboot

UBoot启动分析 UBoot更新速度很快是为了兼容更多的设备和芯片,但是一味地追新不一定能很好的解决问题,在2014版本以后uboot采用和内核编译相似的编译方式,这里用的是2013版本的UBOOT。 可利用grep XXX System.map 查找地址,再利用addr2line -e u-boot 地址 查找在哪个文件中。 uboot启动流程分析如下,主要分为两个大的阶段...

输入子系统原理分析和编程方法

驱动开发

输入子系统原理分析和编程方法 一、输入子系统的作用和框架 1、什么是子系统? ​ 内核是操作系统的核心。Linux内核提供很多基本功能,如虚拟内存、多任务、共享库、需求加载、共享写时拷贝(Copy-On-Write)以及网络功能等。增加各种不同功能导致内核代码不断增加。            Linux内核把不同功能分成不同的子系统的方法,通过一种整体的结构把各种功能集合在一起,提高了...

Linux 字符设备驱动结构

字符设备驱动

Linux 字符设备驱动结构 一、cdev 结构体、设备号相关知识解析 1、设备驱动分类    linux系统将设备分为3类:字符设备、块设备、网络设备。使用驱动程序: 字符设备:是指只能一个字节一个字节读写的设备,不能随机读取设备内存中的某一数据,读取数据需要按照先后数据。字符设备是面向流的设备,常见的字符设备有鼠标、键盘、串口、控制台和LED设备等。 块设备:是指可以从设备的任...