【RK3588 Linux 5.x 内核编程】-I2C虚拟驱动(模板)
I2C虚拟驱动(模板)
文章目录
- I2C虚拟驱动(模板)
-
- 1、驱动介绍
- 2、I2C总线驱动
-
- 2.1 算法(Algorithm )结构
- 2.2 适配器(Adapter )结构
- 2.3 将适配器添加到子系统
- 2.4 从子系统注销适配器
- 3、I2C总线虚拟驱动实现
- 4、I2C客户端驱动实现
在前面的文章中,详细介绍了Linux内核的I2C子系统及编写I2C设备驱动时涉及的API函数。本文将完整介绍如何创建一个简单I2C设备虚拟驱动(模板),为后面I2C相关的传感器设备编写打下基础。
1、驱动介绍
注意:
1、本系列文章将使用的Linux内核版本号为:5.10.160`,
2、开发板为Orange Pi 5,
3、系统镜像为官方提供的系统镜像
4、Linux内核头文件位于:/opt/linux-headers-legacy-rockchip-rk3588_1.1.10_arm64.deb
5、初次使用需要安装Linux内核头文件:
sudo dpkg -i linux-headers-legacy-rockchip-rk3588_1.1.10_arm64.deb
在我们上一篇文章中,我们已经了解了如何在 Linux 内核中为 Slave 客户端编写 I2C 设备驱动程序。 让我们回顾一下步骤:
- 1)使用 i2c_get_adapter() 获取可用的适配器
- 2&#