📘 瑞芯微·BSP 移植指南 30 章

🎯 系统移植 · 驱动定制 · 实战
01 嵌入式Linux系统开发概述
嵌入式系统定义、Linux在嵌入式领域的优势、瑞芯微平台介绍、系统移植与BSP定制概念。
开始学习
02 开发环境搭建
Ubuntu虚拟机安装、基础开发工具安装(git、repo、vim、ssh等)、交叉编译工具链配置、SDK获取与同步。
开始学习
03 瑞芯微SDK架构解析
SDK目录结构、关键目录功能(kernel、u-boot、buildroot、device、docs)、SDK编译流程概览。
开始学习
04 U-Boot移植基础
U-Boot简介、瑞芯微U-Boot源码结构、板级配置(defconfig)与设备树(dts)的关系、编译U-Boot。
开始学习
05 U-Boot设备树定制
设备树语法回顾、瑞芯微dts文件层级结构、修改DDR配置、修改串口配置、添加新的外设节点。
开始学习
06 U-Boot启动流程与调试
U-Boot启动三阶段(SPL、TPL、U-Boot proper)、串口日志分析、常用调试命令(printenv、md、mm)、保存环境变量。
开始学习
07 Linux内核移植基础
内核源码结构、瑞芯微内核分支选择、内核配置(menuconfig)、编译内核与设备树。
开始学习
08 Linux内核设备树定制
内核dts与U-Boot dts的区别、添加新的I2C设备节点、添加SPI设备节点、配置GPIO与pinctrl。
开始学习
09 内核驱动框架与模块化
内核模块概念、编写简单的字符设备驱动、Makefile编写、动态加载与卸载模块、模块参数传递。
开始学习
10 时钟与定时器子系统
瑞芯微时钟树简介、时钟驱动框架(CCF)、配置CPU频率与DDR频率、使用clk_summary调试。
开始学习
11 中断子系统与GPIO
中断控制器(GIC)介绍、申请中断、GPIO子系统框架、使用sysfs操作GPIO、中断底半部机制。
开始学习
12 I2C子系统与驱动
I2C总线驱动框架、编写I2C设备驱动、使用i2c-tools工具调试、常见问题排查。
开始学习
13 SPI子系统与驱动
SPI总线驱动框架、编写SPI设备驱动、配置SPI时钟与极性、使用spidev用户态测试。
开始学习
14 显示子系统(DRM/KMS)
DRM框架简介、Framebuffer与KMS、配置LVDS/MIPI DSI接口、背光与电源控制。
开始学习
15 摄像头子系统(V4L2)
V4L2框架简介、配置MIPI CSI接口、使用v4l2-ctl工具、编写简单的摄像头采集程序。
开始学习
16 音频子系统(ALSA)
ALSA框架简介、配置I2S接口、使用aplay/arecord测试、音量与通路控制。
开始学习
17 网络子系统
以太网PHY配置、MAC驱动(GMAC)、Wi-Fi模块移植(SDIO接口)、网络调试工具(ping、ifconfig、iwconfig)。
开始学习
18 存储子系统
eMMC驱动配置、SD卡驱动配置、NAND Flash支持、分区表配置(parameter文件)。
开始学习
19 电源管理
DVFS(动态电压频率调整)、CPU热插拔、休眠与唤醒(suspend/resume)、PMIC配置。
开始学习
20 Buildroot根文件系统构建
Buildroot简介、配置目标架构与工具链、选择软件包、编译与生成根文件系统镜像。
开始学习
21 Yocto项目实战
Yocto简介、配置Poky与meta-rockchip层、添加自定义layer、构建完整的系统镜像。
开始学习
22 Debian/Ubuntu根文件系统移植
使用debootstrap构建基础系统、配置源与安装桌面环境、解决依赖问题。
开始学习
23 系统启动优化
启动时间分析工具(bootchart、perf)、U-Boot优化、内核启动优化、用户空间启动优化。
开始学习
24 安全启动与固件加密
安全启动概念、瑞芯微OTP与密钥管理、生成签名固件、加密固件烧录。
开始学习
25 OTA升级方案设计
OTA升级原理、双备份系统(A/B分区)、使用update_engine、差量升级策略。
开始学习
26 性能调优与基准测试
CPU性能测试(dhrystone)、内存带宽测试(lmbench)、存储性能测试(iozone)、整体性能分析。
开始学习
27 常见问题排查与调试技巧
内核Oops分析、使用JTAG调试、内存泄漏检测(kmemleak)、死锁检测(lockdep)。
开始学习
28 量产烧录与测试
烧录工具使用(RKDevTool)、批量烧录方案、产测脚本编写、坏块管理。
开始学习
29 项目实战:从零移植到新板
需求分析、选择参考板、修改U-Boot与内核、调试外设、构建文件系统、系统集成测试。
开始学习
30 课程总结与进阶方向
BSP工程师技能树、社区资源推荐、开源项目参与、未来技术趋势(RISC-V、AI芯片)。
开始学习