笔记[1]开发环境:

单板:iTOP4412_SCP精英版;编译工具链:arm-linux-gcc-4.3.2;内核版本:linux-3.5-20170221;busybox版本:busybox-1.20.0

 

1、驱动基础系统调用过程

2、点亮LED字符驱动框架;完成init()和exit();完成write()、open()和release();LED字符驱动完整代码

3、中断分析以及按键中断内核中断分析;等待队列;按键中断字符驱动程序;中断的底半部机制;中断共享

4、poll()、select()和epoll()poll()函数;select()函数;epoll()函数;poll()、select()和epoll()的区别;驱动程序的poll()函数

5、并发控制:并发与竞态;中断屏蔽;原子操作;自旋锁;信号量;互斥体;互斥体和自旋锁的选择

6、异步通知:应用程序异步通知signal();驱动程序异步通知fasync()

7、内核定时器内核定时器的使用方法;完整代码

更改key.c为输入子系统

platform_device;platform_driver;platform_bus_type;总结;更改led.c为总线设备驱动

framebuffer驱动调用流程

s3cfb_lcd

三星平台驱动分析

LED驱动优化

设备驱动层程序编写过程

自己实现触摸屏驱动

USB鼠标设备驱动

块设备驱动编写步骤

Nand Flash驱动和Nor Flash驱动编写

MMC驱动框架总结

DM9621驱动分析

修改内核支持RTC

DMA设备驱动程序

编辑mdev.conf实现U盘自动挂载

24、V4L2框架主要结构体分析和虚拟摄像头驱动编写V4L2框架主要结构体分析核心层提供的注册函数;v4l2_device和video_device的file_operations分析;v4l2.c的init()函数分析;数据传输和控制结构体分析;虚拟摄像头驱动vivi.c虚拟机测试;ioctl()执行过程和v4l2_ioctl_ops必需函数指针的确定;数据的获取过程;虚拟摄像头驱动程序编写过程

 

[1] 笔记参考了宋宝华老师的《Linux设备驱动开发详解:基于最新的Linux 4.0内核》以及韦东山老师的嵌入式驱动教程

 

相关文章:

  • 2022-01-18
  • 2021-11-30
  • 2021-10-18
  • 2021-10-11
  • 2021-08-09
  • 2022-12-23
  • 2021-12-05
猜你喜欢
  • 2021-08-27
  • 2021-06-28
  • 2022-01-01
  • 2021-07-09
  • 2021-08-13
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案