2.14作业

整理移植操作系统到开发板要进行的工作,具体步骤

  1. 安装tftp服务器和nfs服务器,准备需要下载到开发板文件,存放在指定下载文件夹下,准备需要挂载到开发板文件夹,存放在指定挂载文件夹中。

  2. ubuntu和开发板组网,关闭防火墙,关闭杀毒软件,配置ubuntu网络,桥接到自己网卡,选择桥接模式,开发板网络设置serverip,ipaddr,netmask,gatewayip四个参数,最后测试。

  3. 获取uboot源码,查看源码的帮助手册,确定板子的配置命令。

  4. 在uboot源码执行清除命令,配置交叉编译工具链,执行对应版本默认配置命令,再对板子的公板的设备树信息进行拷贝,修改为对应板子的信息。

  5. 在Makefile中添加板子平台的信息,回到源码目录下进行编译。

  6. 进行测试,根据提示错误信息,由于公板和板子有差异,修改对应的配置文件,最后编译。

  7. 移植网卡,修改对应设备树信息

  8. 获取tf-a源码,在源码顶层目录下,配置交叉编译工具链,在源码目录下给源码打补丁,再对板子的公板的设备树信息进行拷贝,修改为对应板子的信息。

  9. TF-A源码顶层目录下,打开Makefile.sdk文件,搜索TFA_DEVICETREE,添加板子的名称,在tf-a源码目录下,对tf-a源码进行编译。测试,根据提示错误信息,修改对应的配置文件,再编译。

  10. 获取内核源码,查看帮助文档,在linux内核源码目录下,打开Makefile文件,搜索CROSS_COMPILE,配置交叉编译工具链。在内核源码目录下,对内核源码进行打补丁,将补丁文件配置列表,打入到当前源码目录下,再对板子的公板的设备树信息进行拷贝,修改为对应板子的信息。对内核源码进行编译。测试,根据提示错误信息,修改对应的配置文件,再编译。最终生成uImage镜像文件和设备树文件。

  11. 制作根文件系统,获取源码,配置交叉编译工具链,执行make menucinfig,进入图形化界面修改相关配置,编译,根据提示错误信息,进行修改测试。产品阶段需要将根文件系统以ext4格式进行压缩打包。

  12. 开发阶段部署

  13. 在EMMC中固化uboot启动程序

  14. 开发板上电,将uboot镜像文件加载到开发板内存中

  15. uboot启动成功之后

  16. 通过tftp服务器,将uImage镜像文件和设备树文件下载到开发板内存中

  17. 下载成功之后,内核进行启动,内核启动成功之后

  18. 通过nfs服务器,将ubuntu指定的文件夹,挂载到开发板内存中

  19. 开发阶段linux操作系统启动成功。

  20. 产品阶段部署

  21. 在EMMC中固化uboot启动程序、uImage镜像文件、设备树文件、根文件系统镜像文件

  22. 开发板上电,将uboot镜像文件加载到开发板内存中

  23. uboot启动成功之后

  24. 将EMMC中对应的镜像文件读到内存中

  25. 启动内存地址

  26. 产品阶段linux操作系统启动成功。

相关推荐
zlinear数据采集卡3 小时前
从万用表的6步调零到硅片级微秒自校准:硬核拆解LHAMP188的宽压轨到轨与零漂移实战
arm开发·stm32·单片机·嵌入式硬件·fpga开发
2401_8541515521 小时前
嵌入式 Bootloader 与 OTA 固件升级深度解析——从 Flash 分区到安全回滚
开发语言·stm32·单片机·嵌入式硬件·安全·php
吠品1 天前
多语言支持,从后台到前端我都趟过哪些坑
stm32·单片机·嵌入式硬件
2401_888859711 天前
STM32H7外部flash(W25Q128)+SPI+DMA读写
stm32·单片机·嵌入式硬件
一个嵌入式学徒1 天前
STM32F4 HAL库常用API手册(非CubeMX生成,需手动调用)
stm32·单片机·嵌入式硬件
qq_271821752 天前
STM32之ws2812b驱动
stm32·单片机·嵌入式硬件
A小调的码农2 天前
OPENOCD+MSYS+VSCODE:从“灯不亮“到“终于亮了“
ide·vscode·stm32·单片机·编辑器
嵌入式-老费2 天前
esp32开发与应用(用好ttl转485模块)
stm32·单片机·嵌入式硬件
小鱼儿电子2 天前
58-基于物联网的老年人医嘱联动健康监测装置
stm32·物联网·腾讯云·健康手环
2401_854151553 天前
STM32 看门狗:IWDG 和 WWDG 怎么用
stm32·单片机·嵌入式硬件