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操作系统启动成功。

相关推荐
BT-BOX1 小时前
STM32仿真proteus位带操作和keil增加头文件C文件
c语言·stm32·proteus
@晓凡4 小时前
STM32编程遇到的问题随笔【一】
stm32·单片机·嵌入式硬件
虾球xz4 小时前
游戏引擎学习第11天
stm32·学习·游戏引擎
小A1596 小时前
STM32完全学习——系统时钟设置
stm32·嵌入式硬件·学习
追梦少年时16 小时前
STM32-Flash闪存
stm32·单片机·嵌入式硬件·51单片机
小刘同学-很乖1 天前
MQTT从入门到精通之MQTT Dashboard
spring boot·stm32·物联网·iot
YuCaiH1 天前
【STM32】USART串口数据包
笔记·stm32·单片机·嵌入式硬件
Kasen's experience1 天前
STM32 GPIO 配置
stm32·单片机·嵌入式硬件
非概念1 天前
stm32学习笔记----51单片机和stm32单片机的区别
笔记·stm32·单片机·学习·51单片机
无敌最俊朗@1 天前
stm32学习之路——八种GPIO口工作模式
c语言·stm32·单片机·学习