![](https://img-blog.csdnimg.cn/direct/4de089586f44492ea3153d0f35231ae3.jpeg?x-oss-process=image/resize,m_fixed,h_224,w_224)
第六期 | 平台总线
文章平均质量分 94
平台总线
北京迅为
让学习更简单,让开发更容易
展开
-
RK3568驱动指南|第六篇 -平台总线-第50章 平台总线模型介绍
在前面所有章节中,无论要完成何种需求,我们都编写了一个独立的驱动程序,但这样编写出来的驱动程序在重用性和可移植性上是很低的,无论之后要编写一个同类型的驱动还是将该驱动更换一个平台,都要花费时间重新修改驱动代码,而驱动的分离和分层这一软件思路的提出(即本章节要讲解的平台总线模型),就是为了解决这个问题,下面让我们一起进入平台总线模型的学习吧。这样一来,我们只需编写一份通用的驱动代码即可,然后针对不同的平台设备进行配置,这就大大减少了重复编写代码的工作量,并提高了驱动代码的重用性。其次,代码的重用性较差。原创 2023-10-10 16:10:08 · 178 阅读 · 0 评论 -
RK3568驱动指南|第六篇-平台总线-第54章 点亮LED灯实验
在上个章节中,我们成功在platform驱动程序中读取到了设备资源信息,在本章节将进行具体的项目实践,要求在上节platform驱动程序的基础上,加入控制LED灯相关的代码(这部分代码可以参考“第18章 点亮LED灯实验”)。本小节的测试要使用两个ko文件和一个测试应用程序,第一个ko文件为第53章编译出来的platform_device.ko驱动,第二个ko文件为在上一小节编译出的probe.ko驱动文件,应用程序为上一小节编译出来的app。至此,使用平台总线的点亮LCD灯实验就完成了。原创 2023-10-16 15:06:02 · 500 阅读 · 0 评论 -
RK3568驱动指南|第六篇-平台总线-第52章 注册platform驱动实验
宏的参数 drv 是一个指向 struct platform_driver 结构体的指针,描述了要注册的平台驱动程序的属性和回调函数。当系统检测到与该驱动程序匹配的平台设备时,内核将调用相应的函数来执行设备的初始化、配置、操作和管理。通过这些操作,__platform_driver_register 函数将平台驱动程序与内核关联起来,并确保内核能够正确识别和调用驱动程序的各种回调函数,以实现与平台设备的交互和管理。通过注册平台驱动程序,内核可以识别并与特定的平台设备进行匹配,并在需要时调用相应的回调函数。原创 2023-10-12 16:56:25 · 222 阅读 · 0 评论 -
RK3568驱动指南|第六期-平台总线-第51章 注册platform设备实验
瑞芯微RK3568芯片是一款定位中高端的通用型SOC,采用22nm制程工艺,搭载一颗四核Cortex-A55处理器和Mali G52 2EE 图形处理器。RK3568 支持4K 解码和 1080P 编码,支持SATA/PCIE/USB3.0 外围接口。RK3568内置独立NPU,可用于轻量级人工智能应用。RK3568 支持安卓 11 和 linux 系统,主要面向物联网网关、NVR 存储、工控平板、工业检测、工控盒、卡拉 OK、云终端、车载中控等行业。【公众号】迅为电子。原创 2023-10-11 16:42:08 · 243 阅读 · 0 评论 -
RK3568驱动指南|第六篇-平台总线-第53章 probe函数编写实验
在上面的两个章节中分别注册了platform设备和platform驱动,匹配成功之后会进入在注册platform驱动程序中编写的probe函数,在上个章节只是为了验证是否匹配成功,所以只是在probe中加入了一句相关打印,而驱动是要控制硬件的,但是平台总线模型对硬件的描述写在了platform_device.c中,platform设备和platform驱动匹配成功之后,那我们如何在驱动platform_driver.c的probe函数中,得到platform_device.c中编写的硬件资源呢。原创 2023-10-14 13:31:00 · 179 阅读 · 0 评论