【SemiDrive源码分析】系列文章链接汇总(全)


SemiDrive源码分析系列文章,预计会包含芯驰X9HP平台BSP各模块总结文档,大致分类如下:

  1. 启动流程代码分析总结
  2. 项目驱动代码移植调试过程总结
  3. 项目中遇到的各模块问题实战分析总结(含分析思路及解决方法)
  4. 驱动各模块硬件原理分析总结
  5. 驱动各模块代码框架深入分析总结

本专栏会持续维护直到项目进入量产,
注意:文章均是基于芯驰X9HP PTG4.0基线代码进行分析,不会涉及具体项目机密的信息

后续问题实战,我能发则发,

但若确实是涉及项目机密相关的话(如项目需求),我会总结,但不会发表出来,还请见谅!

另,若是项目中有问题搞不定,或者特别想学哪个模块,
也可以给我文章评论留言或者私信给我(最好是文章评论留言,因为如果有普遍的问题,解决方案其他兄弟也能看的见),
如果我懂,并且有时间的话,一定会帮忙看看,不一定能保证解决,但多一个人协助分析,总归是好事嘛。

但我毕竟只是一个人,做项目、出差、更新文章,光这三件事加起来就很忙了(很多文章都是熬夜更新的,白天正常工作)
所以,如果确实项目忙,真没时间,那也没办法,毕竟我也有自已的工作,谢谢

欢迎订阅!!! (已经订阅的兄弟,有任何问题可以私信聊,谢谢)



本 SemiDrive源码分析 之 Yocto源码分析 系列文章汇总如下:

之前是所有文章的的链接,全部放在文章开头,但随着文章的增多,维护成本越来越大,
此后,所有文章链接汇总在此,各篇文章中不再带有其他文章的链接,每更新一篇文章,相应的我也会同步更新本文链接入口,加油!


(1)芯驰X9 平台,Yocto 代码分析:

  1. 【SemiDrive源码分析】【Yocto源码分析】01 - yocto/base目录源码分析(编译环境初始化流程)
  2. 【SemiDrive源码分析】【Yocto源码分析】02 - yocto/meta-openembedded目录源码分析
  3. 【SemiDrive源码分析】【Yocto源码分析】03 - yocto/meta-semidrive目录及Yocto Kernel编译过程分析(上)
  4. 【SemiDrive源码分析】【Yocto源码分析】04 - yocto/meta-semidrive目录及Yocto Kernel编译过程分析(下)
  5. 【SemiDrive源码分析】【Yocto源码分析】05 - 找一找Yocto Kernel编译过程中所有Task的源码在哪定义的呢?
  6. 【SemiDrive源码分析】【Yocto源码分析】06 - Kernel编译生成的Image.bin、Image_nobt.dtb、modules.tgz 这三个文件分别是如何生成的?
  7. 【SemiDrive源码分析】【Yocto源码分析】07 - core-image-base-x9h_ref_serdes.rootfs.ext4 文件系统是如何生成的

(2)芯驰X9 平台启动流程分析:

  1. 【SemiDrive源码分析】【X9芯片启动流程】08 - X9平台 lk 目录源码分析 之 目录介绍
  2. 【SemiDrive源码分析】【X9芯片启动流程】09 - X9平台系统启动流程分析
  3. 【SemiDrive源码分析】【X9芯片启动流程】10 - BareMetal_Suite目录R5 DIL.bin 引导程序源代码分析
  4. 【SemiDrive源码分析】【X9芯片启动流程】11 - freertos_safetyos目录Cortex-R5 DIL2.bin 引导程序源代码分析
  5. 【SemiDrive源码分析】【X9芯片启动流程】12 - freertos_safetyos目录Cortex-R5 DIL2.bin 之 sdm_display_init 显示初始化源码分析
  6. 【SemiDrive源码分析】【X9芯片驱动调试】13 - GPIO 配置方法
  7. 【SemiDrive源码分析】【X9芯片启动流程】14 - freertos_safetyos目录Cortex-R5 SafetyOS/RTOS工作流程分析
  8. 【SemiDrive源码分析】【X9芯片启动流程】15 - freertos_safetyos目录 R5 SafetyOS 之 tcpip_init() 代码流程分析
  9. 【SemiDrive源码分析】【X9 Audio音频模块分析】16 - 音频模块框图及硬件原理图分析
  10. 【SemiDrive源码分析】【X9芯片启动流程】17 - R5 SafetyOS 之 LK_INIT_LEVEL_PLATFORM 阶段代码流程分析(上)dcf_init 核间通信初始化
  11. 【SemiDrive源码分析】【X9芯片启动流程】18 - R5 SafetyOS 之 LK_INIT_LEVEL_PLATFORM 阶段代码流程(下)启动QNX、Android
  12. 【SemiDrive源码分析】【X9芯片启动流程】19 - MailBox 核间通信机制介绍(理论篇)
  13. 【SemiDrive源码分析】【X9芯片启动流程】20 - MailBox 核间通信机制介绍(代码分析篇)之 MailBox for RTOS 篇
  14. 【SemiDrive源码分析】【X9芯片启动流程】21 - MailBox 核间通信机制介绍(代码分析篇)之 Mailbox for Linux 篇
  15. 【SemiDrive源码分析】【X9芯片启动流程】22 - MailBox 核间通信机制介绍(代码分析篇)之 RPMSG-VIRTIO Kernel 篇
  16. 【SemiDrive源码分析】【X9芯片启动流程】23 - MailBox 核间通信机制介绍(代码分析篇)之 RPMSG-IPCC Kernel 篇
  17. 【SemiDrive源码分析】【X9芯片启动流程】24 - MailBox 核间通信机制相关寄存器介绍
  18. 【SemiDrive源码分析】【X9芯片启动流程】25 - MailBox 核间通信机制介绍(代码分析篇)之 RPMSG-IPCC RTOS & QNX篇
  19. 【SemiDrive源码分析】【X9芯片启动流程】26 - R5 SafetyOS 之 LK_INIT_LEVEL_TARGET 阶段代码流程分析(TP Drvier、Audio Server初始化)
  20. 【SemiDrive源码分析】【X9芯片启动流程】27 - AP1 Android Preloader启动流程分析(加载atf、tos、bootloader镜像后进入BL31环境)
  21. 【SemiDrive源码分析】【X9芯片启动流程】28 - AP1 Android SMC 指令进入 EL3 环境执行 ATF 镜像(加载并跳转 bootloader)
  22. 【SemiDrive源码分析】【X9芯片启动流程】29 - AP1 Android Bootloader启动流程分析(加载并跳转kernel)
  23. (试读)【SemiDrive源码分析】【X9芯片启动流程】30 - AP1 Android Kernel 启动流程 start_kernel 函数详细分析(一)
  24. (待更新)【SemiDrive源码分析】【X9芯片启动流程】31 - AP1 Android Kernel 启动流程 start_kernel 函数详细分析(二)

(3)显示屏模块初始化流程分析:

  1. 【SemiDrive源码分析】【Display模块】32 - RTOS侧 Serdes屏驱动硬件原理及代码配置步骤
  2. 【SemiDrive源码分析】【Display模块】33 - 相关概念解析
  3. (试读)【SemiDrive源码分析】【Display模块】34 - RTOS侧 sdm_display_init 显示初始化源码分析
  4. 【SemiDrive源码分析】【Display模块】35 - RTOS侧 sdm_display_init 显示初始化源码分析 之 MIPI DSI、LVDS屏驱动探测初始化流程
  5. (待更新)【SemiDrive源码分析】【Display模块】36 - Android侧 DRM代码分析

(4)显示屏、触摸屏、显示背光 驱动 Bringup:

  1. 【SemiDrive源码分析】【驱动BringUp】37 - LCM 驱动 Bringup 流程
  2. 【SemiDrive源码分析】【驱动BringUp】38 - NorFlash & eMMC分区配置
  3. 【SemiDrive源码分析】【驱动BringUp】39 - Touch Panel 触摸屏调试 (RTOS侧)
  4. 【SemiDrive源码分析】【驱动BringUp】40 - Touch Panel 触摸屏调试 (Android侧)
  5. 【SemiDrive源码分析】【驱动BringUp】41 - LCM 驱动 backlight 背光控制原理分析

(5)Mailbox IPCC RPC 代码实现 及 工作原理深入分析:

  1. (待更新)【SemiDrive源码分析】【MailBox核间通信】42 - 基于Mailbox 实现的 mailbox_demo 应用程序(RTOS & Android侧通信实现)
  2. 【SemiDrive源码分析】【MailBox核间通信】43 - 基于Mailbox IPCC RPC 实现核间通信(代码实现篇)
  3. 【SemiDrive源码分析】【MailBox核间通信】44 - 基于Mailbox IPCC RPC 实现核间通信(RTOS侧 IPCC_RPC Server 消息接收及回复 原理分析篇)
  4. 【SemiDrive源码分析】【MailBox核间通信】45 - Android侧 RPMSG_IPCC_RPC驱动分析(上) 之 RPMSG设备 与 RPMSG驱动 匹配过程分析
  5. 【SemiDrive源码分析】【MailBox核间通信】46 - Android侧 RPMSG_IPCC_RPC驱动分析(下) 之 RPMSG_IPCC_RPC驱动初始化、数据收发流程分析

(6)修改Mailbox IPCC RPC 代码实现480 byte 大数据传输代码实现:

  1. 【SemiDrive源码分析】【MailBox核间通信】47 - 分析RPMSG_IPCC_RPC 方式 单次传输的极限大小 及 极限带宽测试(理论分析篇)
  2. 【SemiDrive源码分析】【MailBox核间通信】48 - 使用RPMSG IPCC RPC 方式单次传输大数据实战(440 Byte)(Android发送-RTOS接收-代码实战部分)
  3. 【SemiDrive源码分析】【MailBox核间通信】49 - 使用RPMSG IPCC RPC 方式单次传输极限数据测试(Android发送-RTOS接收-代码实战部分)
  4. 【SemiDrive源码分析】【MailBox核间通信】50 - 使用RPMSG IPCC RPC 方式单次传输大数据实战(480 Byte)(RTOS发送-Android接收-代码实战部分)

(7)Mailbox IPCC 系列 Property、Notify等原理分析及代码实战:

  1. 【SemiDrive源码分析】【MailBox核间通信】51 - DCF_IPCC_Property实现原理分析 及 代码实战
  2. 【SemiDrive源码分析】【MailBox核间通信】52 - DCF Notify 实现原理分析 及 代码实战

2022810日 晚 分析MailBox 有感(随笔记录时间 23:50):
当一个东西学的越来越深,懂的越来越多的时候,随之就会感觉不懂的也越来越多,比如说:传输过程中,各寄存器是如何工作的?
如果给我时间,我特想做的一件事就是,研究 Mailbox 寄存器的工作顺序,并把它总结出来,比如:

  • (1) 在IPCC RPC的方式下,各寄存器的工作流程,哪件寄存器中存哪些东西,哪个寄存器要怎么配? 等等
  • (2) VirtIO 方式下,各寄存器的工作流程?
  • (3) 在懂了寄存器的工作流程后,我能不能自已来实现mailbox 功能,或者以单片机顺序代码的思维来实现 Mailbox 的传输。

以上等等等等等等,这些如果真的总结出来的,就能够说明Mailbox 完全掌握了,
但目前看起来,短期内是没这个时间了,8月10号了,安逸看代码的日子,估计就剩下10天左右了。
项目马上开始,最重要的还是先会调功能,先分析对项目有用的,因此,各驱动的porting guide 会相对重要一些。

这些深入的东西先记录下吧,后面等有时间,再返回来研究。
按计划的话,下面三天左右尽快研究完这三个方面 :NotifyRPMSG-VIRTIO/dev/vircan,等把这三个看完,那mailbox 就先算告一段落吧,目前掌握的完全足够做项目了,也该去分析其他的BSP 驱动了。
而这三个暂时不那么重要的就先放后:RPMSG-Socket虚拟以太网Mailbox示例代码报错分析,等后面再返回来分析

Mailbox 告一段落之后,我们要去分析 AudioCameraUSB 驱动相关的代码调试及代码框架分析。

行了,写这段话的目的,主要还是记录下以后要做的事,算一个随意版的todo list吧,
等后面有空,再返回来深入分析,把这些遗憾补上,12点多了,洗个澡睡觉吧


(8)Mailbox VirtIO 代码实现 及 工作原理深入分析:

  1. 【SemiDrive源码分析】【MailBox核间通信】53 - VIRTIO、/dev/vircan实现原理分析 及 代码实战










猜你喜欢

转载自blog.csdn.net/Ciellee/article/details/126081991