【Linux-MISC设备】 MISC驱动的编写的核心就是初始化miscdevice结构体变量,然后用misc_register函数向内核注册,然后使用misc_deregister函数删除注册.驱动编写的思路就是先写paltform平台模板,随后就是关于MISC设备模板流程,最后就是自己设备信息的添加,例如节点信息,gpio号等等.
【Linux-Platform】 网络有七层,每个层面处理不同的信息,对于Linux系统而言,其也需要分层的,简要说明一下Linux分层归类,input子系统负责管理所有和输入有关的驱动,包括键盘、鼠标、触摸等,最底层的就是设备的原始驱动,负责获取输入设备的原始值,获取到的输入事件上报给input核心层。总线的代码是由内核给出的我们不需要编写,需要我们编写的部分是驱动和设备。当向总线注册的时候,总线会从现有的设备中查找看看哪个设备和此驱动匹配,同理,当向总线注册设备的时候总线也会在现有的驱动中查看与之匹配的驱动.
【linux-IMX6ULL-LED字符驱动框架完善】 在上节,我对linux-IMX6ULL-字符设备驱动简单框架实验进行了说明和构建,但是也存在几个问题;需要手动指定设备号,不能自动申请;需要在linux端手动创造设备节点,也就是要用maknod命令;没有引入实际设备;因此这节内容就根据上节的驱动框架,然后结合LED,实现设备号的自动分配和设备节点的自动创建;
【linux-IMX6ULL-字符设备驱动简单框架实验】 目前的驱动开发一般是分为三类,第一类就是字符设备驱动、块设备驱动、和网络驱动三类,其中字符设备驱动是最多最杂的,现在对字符设备驱动进行一个简要的介绍:通过设备注册使设备能被系统识别;注销则相反;通常包含open,read,write,realse等;处理设备产生的中断,以响应特定事件;通过字符型设备驱动,可以使系统方便统一管理不同的设备,这样就可以给上层应用提供相应的接口函数,方便应用程序与设备之间进行数据交换和通信;
【linux-kernel内核移植记录-踩坑以及注意事项】 通过上述步骤,成功完成了I.MX6ULL开发板的内核移植与驱动修改,实现了系统的正常启动和基本功能的运行。主要修改内容包括CPU频率设置、EMMC驱动模式以及网络驱动配置。在实践中需要特别注意保持编译配置的持久性,避免清理工程导致配置丢失,这里主要是对自己进行linux内核移植过程的关键信息进行了一个介绍和总结,可作为复盘的记录;
【linux-IMX6ULL-RTC-IIC-SPI配置思路】 主要介绍了IMX6ULL的RTC,IIC,SPI外设,并对其进行了基础知识的概述,并对其配置流程进行了简介,最后给出了其配送实现代码,文章非教程类文章
【Linux-IMX6ULL-DDR3简介测试-RGBLCD控制原理】 主要介绍IMX6ULL的DDR3的初始化检测,其次简要的介绍了RGBLCD屏幕,并对其一些关节数据例如:分辨率、像素格式、LCD时钟计算等基本知识进行了介绍,对其行时序图和帧时序图进行了简要说明,最后给出了IMX6ULL的硬件控制接口RGBLCD的控制时序图以及配置总体思路时序图
【linux-IMX6ULL-定时器-GPT-串口配置流程-思路】 主要对IMX6ULL的三部分EPIT定时器、GPT定时器、及UART的这些外设的配置进行了简要的说明,并且对定时器+按键消抖和定时器高精度的延时进行了简要的分析,同时通过异或的结合律可以方便的检测串口通信的奇偶校验
【linux-IMX6ULL中断配置流程】 主要对IMX6ULL的GIC中断控制器和Cortex-7的中断进行了简要说明、然后对中断配置进行底层配置和上层配置两大类,并对这两类配置进行了一个简要的概括,具体细节要针对源码细细揣摩;