驱动开发-系统移植

一、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。

相关推荐
相醉为友9 小时前
024 嵌入式Linux应用开发——文字显示与freetype的使用显示
linux·运维·驱动开发
senijusene10 小时前
i.MX6ULL 裸机 ECSPI 驱动开发详解:
arm开发·驱动开发·嵌入式硬件
智者知已应修善业15 小时前
【CD4022八进制计数器脉冲分配器】2023-5-31
驱动开发·经验分享·笔记·硬件架构·硬件工程
senijusene15 小时前
IMX6ULL Linux 驱动开发流程:从环境搭建到系统启动与内核编译
linux·运维·驱动开发
TechMasterPlus16 小时前
Linux 驱动开发深度解析:从内核模块到设备驱动
linux·运维·驱动开发
Freak嵌入式1 天前
MicroPython LVGL基础知识和概念:GUI 的扩展接口
ide·驱动开发·嵌入式·gui·lvgl·micropython·upypi
月亮给我抄代码2 天前
Superpowers —— 让 AI 编程代理具备工程化开发能力
驱动开发·ai编程·codex·claude code·opencode·superpowers
Tom·Ge2 天前
告别“猜谜式编程”!详解规范驱动开发(SDD)在企业AI开发中的最佳实践
人工智能·驱动开发
s09071362 天前
ZYNQ7000 AXI DMA 接收中断(S2MM_introut)全解析:从硬件原理到Linux驱动开发
linux·驱动开发·dma·zynq
路溪非溪2 天前
如何使用sysfs来排查驱动问题
linux·arm开发·驱动开发