LINUX驱动笔记 目录
笔记参考了宋宝华老师的《Linux设备驱动开发详解:基于最新的Linux 4.0内核》以及韦东山老师的嵌入式驱动教程
笔记开发环境:
单板:第一章到第八章使用TINY4412-1611;第九章及之后章节使用iTOP4412_SCP精英版
编译工具链:arm-linux-gcc-4.3.2
内核版本:linux-3.5-20170221
busybox版本:busybox-1.20.0
重要知识点会使用加粗字体
一、驱动基础:系统调用过程
二、点亮LED:字符驱动框架;完成init()和exit();完成write()、open()和release();LED字符驱动完整代码
三、中断分析以及按键中断:内核中断分析;等待队列;按键中断字符驱动程序;中断的底半部机制;中断共享
四、poll()、select()和epoll():poll()函数;select()函数;epoll()函数;poll()、select()和epoll()的区别;驱动程序的poll()函数
五、并发控制:并发与竞态;中断屏蔽;原子操作;自旋锁;信号量;互斥体;互斥体和自旋锁的选择
六、异步通知:应用程序异步通知signal();驱动程序异步通知fasync()
七、内核定时器:内核定时器的使用方法;完整代码
八、输入子系统:输入子系统分层;input.c分析;input_dev;input_handler;input_dev和input_handler的连接过程;总结;更改key.c为输入子系统
九、总线设备驱动模型:platform_device;platform_driver;platform_bus_type;总结;更改led.c为总线设备驱动
十、LCD的framebuffer设备驱动:fb_info;fb_ops;framebuffer驱动调用流程
十一、三星平台framebuffer驱动:平台驱动使用的结构体;platform_driver;platform_device;关系总结;s3cfb_lcd
十二、使用PWM调整LCD背光亮度:用户空间调整背光亮度;PWM子系统;三星平台驱动分析
十三、GPIO子系统:gpio_direction_output()分析;内核中GPIO的使用函数;LED驱动优化
十四、i2c子系统:i2c框架分析;核心层提供的注册函数;i2c-s3c2410.c文件分析;设备驱动层程序编写过程
十五、电容触摸屏驱动:电容触摸屏检测原理;电容触摸屏控制芯片驱动分析;自己实现触摸屏驱动
十六、USB驱动:USB固件和USB传输方式;Linux USB设备驱动模型;USB数据传输;USB鼠标设备驱动
十七、块设备驱动:块设备概念和读写过程;块设备框架分析;块设备驱动编写步骤
十八、Nand Flash驱动和Nor Flash驱动:Nand Flash驱动分析;MTD子系统框架分析;Nor Flash驱动分析;Nand Flash驱动和Nor Flash驱动编写
十九、eMMC驱动框架分析:MMC简介;MMC框架分析;MMC驱动框架总结
二十、网卡框架分析、虚拟网卡驱动和DM9621驱动分析:网络设备驱动的结构;网络设备驱动分析;虚拟网卡驱动编写过程及代码;DM9621驱动分析
二十一、RTC驱动:RTC设备驱动分析;修改内核支持RTC
二十二、DMA驱动:DMA简介;DMA Engine介绍和DMA设备驱动步骤;DMA设备驱动程序
二十三、uevnet机制和U盘自动挂载:uevent机制;编辑mdev.conf实现U盘自动挂载
二十四、V4L2框架主要结构体分析和虚拟摄像头驱动编写:V4L2框架主要结构体分析;核心层提供的注册函数;v4l2_device和video_device的file_operations分析;v4l2.c的init()函数分析;数据传输和控制结构体分析;虚拟摄像头驱动vivi.c虚拟机测试;ioctl()执行过程和v4l2_ioctl_ops必需函数指针的确定;数据的获取过程;虚拟摄像头驱动程序编写过程
LINUX驱动笔记 目录的更多相关文章
- Linux~学习笔记目录索引
回到占占推荐博客索引 本篇文章是对自己学习Linux及在它的环境下部署工具的一个总结,以方便自己查阅,也给他人一个帮助,本文章同时会不断的更新,欢迎大家订阅! 本目录包括的内容会包括linux基础命令 ...
- 嵌入式Linux驱动笔记(十八)------浅析V4L2框架之ioctl【转】
转自:https://blog.csdn.net/Guet_Kite/article/details/78574781 权声明:本文为 风筝 博主原创文章,未经博主允许不得转载!!!!!!谢谢合作 h ...
- linux学习笔记-目录结构(1)
每个linux系统的目录结构差不多,因为有FHS(Filesystem Hierarchy Standard)标准的规范. FHS的重点在于规范每个特定的目录下应该要放什么样的数据. FHS依据文件系 ...
- 【linux驱动笔记】linux模块机制浅析
1. 模块module 操作系统分微内核和宏内核,微内核优点,可以使操作系统仅作很少的事,其它事情如网络处理等都作为应用程序来实现,微内核精简的同时,必然带来性能的下降.而linux的宏内核设 ...
- Linux/Centos笔记目录
Linux介绍 Linux入门--个人感想 Google怎么用linux 初入Linux Windows XP硬盘安装Ubuntu 12.04双系统图文详解 实例讲解虚拟机3种网络模式(桥接. ...
- linux学习笔记-目录相关知识
我的邮箱地址:zytrenren@163.com欢迎大家交流学习纠错! linux的目录结构及作用是根据fhs标准定制的,以下列出一些常用的目录的作用,以及fhs官方网站的连接 FHS官方网站的连接: ...
- Linux学习笔记 -- 目录与文件的管理
目录结构 Linux的目录结构为树状结构,最顶级的目录为根目录 “/”. 其他目录通过挂载可以将它们添加到树中,通过解除挂载可以移除它们. 在开始本教程前我们需要先知道什么是. 绝对路径与相对路径 绝 ...
- linux学习笔记-目录结构(2)
2./usr的意义与内容 依据FHS的基本定义,/usr里面放置的数据属于可分享的与不可变动的. usr是UNIX Software Resource的缩写,即UNIX操作系统软件资源所放置的目录,而 ...
- 【linux驱动笔记】字符设备驱动相关数据结构与算法
欢迎转载,转载时需保留作者信息,谢谢. 邮箱:tangzhongp@163.com 博客园地址:http://www.cnblogs.com/embedded-tzp Csdn博客地址:http:// ...
随机推荐
- ubuntu之路——day7.1 衡量模型好坏的因素偏差和方差bias&variance 以及在深度学习中的模型优化思路
Error | 误差 Bias | 偏差 – 衡量准确性 Variance | 方差 – 衡量稳定性 首先我们通常在实际操作中会直接用错误率或者与之对应的准确率来衡量一个模型的好坏,但是更加准确的做法 ...
- Java 面向对象(十七)
第一章 File类 1.1 概述 java.io.File 类是文件和目录路径名的抽象表示,主要用于文件和目录的创建.查找和删除等操作. 1.2 构造方法 public File(String pat ...
- JavaScript初探系列目录
一 系列导航 结合各方面的参考资料,整理出来以下主要目录,供方便浏览查看 (一)初探系列 JavaScript初探系列(1)——基本概念 JavaScript初探系列(2)——数 ...
- iframe的src指向的内容不刷新
想任何一种办法让iframe的src的值有变化就可以了 $("#h5Content").attr("src","${h5.url}"+&qu ...
- storcli64和smartctl定位硬盘的故障信息
storcli64可对LSIRAID卡基本操作进行管理,本文主要是对LSIRAID卡常使用到的命令进行介绍 https://www.cnblogs.com/wangl-blog/archive/201 ...
- GIS地理工具案例教程——批量合并影像
GIS地理工具案例教程——批量合并影像 商务合作,科技咨询,版权转让:向日葵,135—4855__4328,xiexiaokui#qq.com 描述:合并目录下的所有影像 功能:对指定工作空间下的栅格 ...
- Mac OS docker挂载文件夹
sudo docker run -p 3306:3306 --name mysql -v /var/run/docker.sock:/var/run/docker.sock -v ~/mysql/co ...
- Java基础 if if-else if-else if-else 三种示例
JDK :OpenJDK-11 OS :CentOS 7.6.1810 IDE :Eclipse 2019‑03 typesetting :Markdown code ...
- ansible常用的方法小结
一.批量安装zabbix客户端 .拷贝sh脚本和.conf到远程服务器(也可以全量拷贝客户端) ansible all -m copy -a "src=/usr/local/zabbix_a ...
- @ServeletComponentScan和@ComponentScan的区别
一.SpringBoot中使用Servlet在SpringBootApplication上使用@ServletComponentScan注解后,Servlet.Filter.Listener可以直接通 ...