驱动开发(一)--kernel树外驱动分析

目录

一、引言
二、路线
------>2.1、基础外设
------>2.2、核心总线
------>2.3、复杂协议驱动
------>2.4、多媒体框架驱动
三、总线/子系统等梳理

一、引言

从本专栏开始,会进行最底层驱动的开发,涉及到RK、Horizon等平台

二、路线

这个路径是一个从点(单一外设)、到线(总线通信)、再到面(复杂框架)的过程。这是一个相对漫长的过程,建议你花费2-3个月的时间,按照这个路径,以实践为主,逐个击破。最关键的是,每学一个模块,都要去翻阅RK3568的数据手册和你手头RDKS600的驱动代码,将抽象的理论和你具体的硬件、代码联系起来。这不仅能帮你学到技术,更能让你深入理解芯片厂商的BSP是如何设计与工作的

这些是芯片厂商必须要提供的接口

而一些复杂的多媒体框架,大点的芯片厂商也都会提供

下面是常见芯片公司的"驱动开发"分工:

芯片厂商不仅要做基础驱动,多媒体驱动也是核心工作。

所以我们后面的学习路线,将会包含基础的外设、总线驱动编写,还需要了解复杂的多媒体、AI驱动框架

2.1、基础外设
2.2、核心总线

这一阶段是整个学习路径的分水岭,重点在于理解设备驱动模型、总线、设备和驱动的关系,以及设备树(Device Tree) 的作用。

2.3、复杂协议驱动

当你理解了简单的总线驱动后,就可以挑战USB和PCIe这类更复杂的协议了。你的目标不再是每一行代码都看懂,而是理解其框架思想和初始化流程。

2.4、多媒体框架驱动

这是通往SDK开发专家的最后一站。你需要理解Linux下复杂的多媒体框架------V4L2用于视频,ALSA用于音频,DRM用于显示 。这个阶段的核心是理解框架,而非编写驱动。

三、总线/子系统等梳理

这边简单梳理一下之前整理过的常用子系统
RK3568---kernel驱动整理汇总(一)
RK3568---kernel驱动整理汇总(二)
RK3568---kernel驱动整理汇总(三)
RK3568---kernel驱动整理汇总(四)

我们之后也会按照这个顺序,进行驱动的学习,最后会补充没有提到的驱动

相关推荐
离凌寒5 天前
一、关于linux开发板上移植ubuntu根文件系统并配置桌面环境笔记记录
驱动开发·单片机
临期冰淇淋6 天前
Unisoc 展锐平台Camera摄像头分辨率适配
linux·c语言·驱动开发
Rsingstarzengjx6 天前
第二十八章 Linux 并发与竞争实验
驱动开发·嵌入式硬件·stm32mp157
ysu_03146 天前
TinyML 模型部署:从 Edge Impulse 到 STM32F103
驱动开发·stm32·嵌入式硬件·mcu·硬件架构·硬件工程·dsp开发
是翎7 天前
2026 Agent Eval 全景图:从“会做”到“值得部署”
人工智能·驱动开发·深度学习·开源协议·imagen
智者知已应修善业7 天前
【4060BD_5V应用电路图】2022-12-24
驱动开发·经验分享·笔记·硬件架构·硬件工程
码农客栈7 天前
Linux 音频驱动实验
驱动开发
码农客栈7 天前
Linux CAN 驱动
linux·驱动开发
威嵌神州7 天前
VxWorks6.9 BSP 适配:飞腾 D2000/FT2000/4 平台、驱动开发
驱动开发·嵌入式硬件·fpga开发·系统架构
mk0158 天前
电动自行车汽车工业系统电机驱动100V高压恒定导向芯片进口替代
驱动开发·单片机·硬件工程·智能硬件·pcb工艺