驱动开发-系统移植

一、Linux系统移植概念

需要移植三部分东西,Uboot ,内核 ,根文件系统 (rootfs) ,这三个构成了一个完整的Linux系统。

把这三部分学明白,系统移植就懂点了。

二、Uboot

1、啥是Uboot

uboot就是引导程序下载的一段代码,有三种我们可以去使用的,可以去开发的。

1.官网uboot ,比较原始

2.半导体厂商的uboot ,半导体厂商比如NXP,自家开发板对应修改裁剪的,可靠性比较好

3.还有自己厂家自己做的Uboot,比如说正点原子自家加的开发板,做的Uboot

现在用的正点原子开开发板,还没有自己修改Uboot的啥水平,先用的他们的Uboot跑跑,主要做法:

1.把他们Uboot弄到虚拟机里,配置一下编译前的版本信息,然后进行编译生成镜像文件.mix

2.通过SD卡下载到开发板

3.跑一跑,学一学

但是通过SD卡下载到开发板出现了一个坑:

虚拟机识别不到SD卡,咋办呢,最后慢慢摸索出来了

主要关注下面的内容

1.虚拟机设置,添加USB控制器设置

2.主机设置,打开VMware USB服务

接着

然后重启虚拟机

3.插入SD卡,选择断开连接,然后重新连接就行了

也可以看看有没有这个图标,有着图标说明就可以了

2、Uboot如何用

使用Uboot当然要用一些命令去操作,主要是一些增、删、改、查的命令。

用这些命令的能操作哪些对象要了解,比如操作信息查询、修改环境变量、操作内存、操作网络,等等,操作这些对象干啥,要了解。

boot命令记一下bootz、bootm 和 boot。

bootz加载镜像文件zImage。也能瞄准地址,加载设备树文件,可以自己试试这个命令。

bootm也差不多,启用uImage。

相关推荐
路溪非溪4 小时前
BLE的广播、扫描和连接等工作机制总结
linux·arm开发·驱动开发
17(无规则自律)20 小时前
【Linux驱动实战】:字符设备之ioctl与mutex全解析
linux·c语言·驱动开发·嵌入式硬件
weiyvyy2 天前
从开发视角看硬件接口:接口开发的本质与全景图
驱动开发·单片机·嵌入式硬件·硬件工程
Dylan~~~2 天前
AI编程新范式:规范驱动开发SpecKit框架完全指南
驱动开发·ai编程
阿拉斯攀登2 天前
【RK3576 安卓 JNI/NDK 系列 04】JNI 核心语法(下):字符串、数组与对象操作
android·驱动开发·rk3568·瑞芯微·rk安卓驱动·jni字符串操作
weiyvyy2 天前
接口开发的完整流程:从需求到验证
驱动开发·嵌入式硬件·硬件架构·硬件工程
zly88653722 天前
windsurf rules与skill的使用
linux·c语言·开发语言·驱动开发
阿拉斯攀登3 天前
【RK3576 安卓 JNI/NDK 系列 09】RK3576 实战(三):JNI 调用 librga 实现 2D 硬件加速图像处理
android·驱动开发·rk3568·瑞芯微·rk安卓驱动·rk3576 rga加速
阿拉斯攀登4 天前
第 19 篇 驱动性能优化与功耗优化实战
android·驱动开发·瑞芯微·嵌入式驱动·安卓驱动
道一云黑板报4 天前
技术拆解:AI低代码架构设计与全链路落地实现
人工智能·驱动开发·低代码·ai·企业微信·ai编程·代码规范